Ben Lindstrom | 226cfa0 | 2001-01-22 05:34:40 +0000 | [diff] [blame] | 1 | /* |
| 2 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
| 3 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
| 4 | * All rights reserved |
| 5 | * |
| 6 | * As far as I am concerned, the code I have written for this software |
| 7 | * can be used freely for any purpose. Any derived versions of this |
| 8 | * software must be clearly marked as such, and if the derived work is |
| 9 | * incompatible with the protocol description in the RFC file, it must be |
| 10 | * called by a name other than "ssh" or "Secure Shell". |
| 11 | */ |
| 12 | |
| 13 | #ifndef ETCDIR |
| 14 | #define ETCDIR "/etc" |
| 15 | #endif |
| 16 | |
| 17 | #ifndef _PATH_SSH_PIDDIR |
| 18 | #define _PATH_SSH_PIDDIR "/var/run" |
| 19 | #endif |
| 20 | |
| 21 | /* |
| 22 | * System-wide file containing host keys of known hosts. This file should be |
| 23 | * world-readable. |
| 24 | */ |
| 25 | #define _PATH_SSH_SYSTEM_HOSTFILE ETCDIR "/ssh_known_hosts" |
| 26 | #define _PATH_SSH_SYSTEM_HOSTFILE2 ETCDIR "/ssh_known_hosts2" |
| 27 | |
| 28 | /* |
| 29 | * Of these, ssh_host_key must be readable only by root, whereas ssh_config |
| 30 | * should be world-readable. |
| 31 | */ |
| 32 | #define _PATH_HOST_KEY_FILE ETCDIR "/ssh_host_key" |
| 33 | #define _PATH_SERVER_CONFIG_FILE ETCDIR "/sshd_config" |
| 34 | #define _PATH_HOST_CONFIG_FILE ETCDIR "/ssh_config" |
| 35 | #define _PATH_HOST_DSA_KEY_FILE ETCDIR "/ssh_host_dsa_key" |
| 36 | #define _PATH_DH_PRIMES ETCDIR "/primes" |
| 37 | |
| 38 | #define _PATH_SSH_PROGRAM "/usr/bin/ssh" |
| 39 | |
| 40 | /* |
| 41 | * The process id of the daemon listening for connections is saved here to |
| 42 | * make it easier to kill the correct daemon when necessary. |
| 43 | */ |
| 44 | #define _PATH_SSH_DAEMON_PID_FILE _PATH_SSH_PIDDIR "/sshd.pid" |
| 45 | |
| 46 | /* |
| 47 | * The directory in user\'s home directory in which the files reside. The |
| 48 | * directory should be world-readable (though not all files are). |
| 49 | */ |
| 50 | #define _PATH_SSH_USER_DIR ".ssh" |
| 51 | |
| 52 | /* |
| 53 | * Per-user file containing host keys of known hosts. This file need not be |
| 54 | * readable by anyone except the user him/herself, though this does not |
| 55 | * contain anything particularly secret. |
| 56 | */ |
| 57 | #define _PATH_SSH_USER_HOSTFILE "~/.ssh/known_hosts" |
| 58 | #define _PATH_SSH_USER_HOSTFILE2 "~/.ssh/known_hosts2" |
| 59 | |
| 60 | /* |
| 61 | * Name of the default file containing client-side authentication key. This |
| 62 | * file should only be readable by the user him/herself. |
| 63 | */ |
| 64 | #define _PATH_SSH_CLIENT_IDENTITY ".ssh/identity" |
| 65 | #define _PATH_SSH_CLIENT_ID_DSA ".ssh/id_dsa" |
| 66 | #define _PATH_SSH_CLIENT_ID_RSA ".ssh/id_rsa" |
| 67 | |
| 68 | /* |
| 69 | * Configuration file in user\'s home directory. This file need not be |
| 70 | * readable by anyone but the user him/herself, but does not contain anything |
| 71 | * particularly secret. If the user\'s home directory resides on an NFS |
| 72 | * volume where root is mapped to nobody, this may need to be world-readable. |
| 73 | */ |
| 74 | #define _PATH_SSH_USER_CONFFILE ".ssh/config" |
| 75 | |
| 76 | /* |
| 77 | * File containing a list of those rsa keys that permit logging in as this |
| 78 | * user. This file need not be readable by anyone but the user him/herself, |
| 79 | * but does not contain anything particularly secret. If the user\'s home |
| 80 | * directory resides on an NFS volume where root is mapped to nobody, this |
| 81 | * may need to be world-readable. (This file is read by the daemon which is |
| 82 | * running as root.) |
| 83 | */ |
| 84 | #define _PATH_SSH_USER_PERMITTED_KEYS ".ssh/authorized_keys" |
| 85 | #define _PATH_SSH_USER_PERMITTED_KEYS2 ".ssh/authorized_keys2" |
| 86 | |
| 87 | /* |
| 88 | * Per-user and system-wide ssh "rc" files. These files are executed with |
| 89 | * /bin/sh before starting the shell or command if they exist. They will be |
| 90 | * passed "proto cookie" as arguments if X11 forwarding with spoofing is in |
| 91 | * use. xauth will be run if neither of these exists. |
| 92 | */ |
| 93 | #define _PATH_SSH_USER_RC ".ssh/rc" |
| 94 | #define _PATH_SSH_SYSTEM_RC ETCDIR "/sshrc" |
| 95 | |
| 96 | /* |
| 97 | * Ssh-only version of /etc/hosts.equiv. Additionally, the daemon may use |
| 98 | * ~/.rhosts and /etc/hosts.equiv if rhosts authentication is enabled. |
| 99 | */ |
| 100 | #define _PATH_SSH_HOSTS_EQUIV ETCDIR "/shosts.equiv" |
| 101 | #define _PATH_RHOSTS_EQUIV "/etc/hosts.equiv" |
| 102 | |
| 103 | /* |
| 104 | * Default location of askpass |
| 105 | */ |
Ben Lindstrom | cb57733 | 2001-01-22 21:06:19 +0000 | [diff] [blame] | 106 | #ifndef _PATH_SSH_ASKPASS_DEFAULT |
Ben Lindstrom | 226cfa0 | 2001-01-22 05:34:40 +0000 | [diff] [blame] | 107 | #define _PATH_SSH_ASKPASS_DEFAULT "/usr/X11R6/bin/ssh-askpass" |
Ben Lindstrom | cb57733 | 2001-01-22 21:06:19 +0000 | [diff] [blame] | 108 | #endif |
Ben Lindstrom | 226cfa0 | 2001-01-22 05:34:40 +0000 | [diff] [blame] | 109 | |
| 110 | /* for scp */ |
| 111 | #ifndef _PATH_CP |
| 112 | #define _PATH_CP "cp" |
| 113 | #endif |
| 114 | |
| 115 | /* path to login program */ |
| 116 | #ifndef LOGIN_PROGRAM |
| 117 | # ifdef LOGIN_PROGRAM_FALLBACK |
| 118 | # define LOGIN_PROGRAM LOGIN_PROGRAM_FALLBACK |
| 119 | # else |
| 120 | # define LOGIN_PROGRAM "/usr/bin/login" |
| 121 | # endif |
| 122 | #endif /* LOGIN_PROGRAM */ |
| 123 | |
| 124 | /* Askpass program define */ |
| 125 | #ifndef ASKPASS_PROGRAM |
| 126 | #define ASKPASS_PROGRAM "/usr/lib/ssh/ssh-askpass" |
| 127 | #endif /* ASKPASS_PROGRAM */ |
| 128 | |
| 129 | /* |
| 130 | * Relevant only when using builtin PRNG. |
| 131 | */ |
| 132 | #ifndef SSH_PRNG_SEED_FILE |
Ben Lindstrom | cb57733 | 2001-01-22 21:06:19 +0000 | [diff] [blame] | 133 | # define SSH_PRNG_SEED_FILE _PATH_SSH_USER_DIR"/prng_seed" |
Ben Lindstrom | 226cfa0 | 2001-01-22 05:34:40 +0000 | [diff] [blame] | 134 | #endif /* SSH_PRNG_SEED_FILE */ |
| 135 | #ifndef SSH_PRNG_COMMAND_FILE |
| 136 | # define SSH_PRNG_COMMAND_FILE ETCDIR "/ssh_prng_cmds" |
| 137 | #endif /* SSH_PRNG_COMMAND_FILE */ |
| 138 | |