pathnames.h revision 169966
10Sduke/* $OpenBSD: pathnames.h,v 1.16 2006/03/25 22:22:43 djm Exp $ */ 2797Sohair 30Sduke/* 40Sduke * Author: Tatu Ylonen <ylo@cs.hut.fi> 50Sduke * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 60Sduke * All rights reserved 70Sduke * 80Sduke * As far as I am concerned, the code I have written for this software 90Sduke * can be used freely for any purpose. Any derived versions of this 100Sduke * software must be clearly marked as such, and if the derived work is 110Sduke * incompatible with the protocol description in the RFC file, it must be 120Sduke * called by a name other than "ssh" or "Secure Shell". 130Sduke */ 140Sduke 150Sduke#define ETCDIR "/etc" 160Sduke 170Sduke#ifndef SSHDIR 180Sduke#define SSHDIR ETCDIR "/ssh" 19553Sohair#endif 20553Sohair 21553Sohair#ifndef _PATH_SSH_PIDDIR 220Sduke#define _PATH_SSH_PIDDIR "/var/run" 230Sduke#endif 240Sduke 250Sduke/* 260Sduke * System-wide file containing host keys of known hosts. This file should be 270Sduke * world-readable. 280Sduke */ 290Sduke#define _PATH_SSH_SYSTEM_HOSTFILE SSHDIR "/ssh_known_hosts" 30288Sdarcy/* backward compat for protocol 2 */ 310Sduke#define _PATH_SSH_SYSTEM_HOSTFILE2 SSHDIR "/ssh_known_hosts2" 320Sduke 33513Sjjg/* 340Sduke * Of these, ssh_host_key must be readable only by root, whereas ssh_config 350Sduke * should be world-readable. 360Sduke */ 370Sduke#define _PATH_SERVER_CONFIG_FILE SSHDIR "/sshd_config" 380Sduke#define _PATH_HOST_CONFIG_FILE SSHDIR "/ssh_config" 390Sduke#define _PATH_HOST_KEY_FILE SSHDIR "/ssh_host_key" 400Sduke#define _PATH_HOST_DSA_KEY_FILE SSHDIR "/ssh_host_dsa_key" 410Sduke#define _PATH_HOST_RSA_KEY_FILE SSHDIR "/ssh_host_rsa_key" 420Sduke#define _PATH_DH_MODULI SSHDIR "/moduli" 430Sduke/* Backwards compatibility */ 440Sduke#define _PATH_DH_PRIMES SSHDIR "/primes" 450Sduke 460Sduke#ifndef _PATH_SSH_PROGRAM 470Sduke#define _PATH_SSH_PROGRAM "/usr/bin/ssh" 480Sduke#endif 490Sduke 500Sduke/* 510Sduke * The process id of the daemon listening for connections is saved here to 520Sduke * make it easier to kill the correct daemon when necessary. 53 */ 54#define _PATH_SSH_DAEMON_PID_FILE _PATH_SSH_PIDDIR "/sshd.pid" 55 56/* 57 * The directory in user\'s home directory in which the files reside. The 58 * directory should be world-readable (though not all files are). 59 */ 60#define _PATH_SSH_USER_DIR ".ssh" 61 62/* 63 * Per-user file containing host keys of known hosts. This file need not be 64 * readable by anyone except the user him/herself, though this does not 65 * contain anything particularly secret. 66 */ 67#define _PATH_SSH_USER_HOSTFILE "~/.ssh/known_hosts" 68/* backward compat for protocol 2 */ 69#define _PATH_SSH_USER_HOSTFILE2 "~/.ssh/known_hosts2" 70 71/* 72 * Name of the default file containing client-side authentication key. This 73 * file should only be readable by the user him/herself. 74 */ 75#define _PATH_SSH_CLIENT_IDENTITY ".ssh/identity" 76#define _PATH_SSH_CLIENT_ID_DSA ".ssh/id_dsa" 77#define _PATH_SSH_CLIENT_ID_RSA ".ssh/id_rsa" 78 79/* 80 * Configuration file in user\'s home directory. This file need not be 81 * readable by anyone but the user him/herself, but does not contain anything 82 * particularly secret. If the user\'s home directory resides on an NFS 83 * volume where root is mapped to nobody, this may need to be world-readable. 84 */ 85#define _PATH_SSH_USER_CONFFILE ".ssh/config" 86 87/* 88 * File containing a list of those rsa keys that permit logging in as this 89 * user. This file need not be readable by anyone but the user him/herself, 90 * but does not contain anything particularly secret. If the user\'s home 91 * directory resides on an NFS volume where root is mapped to nobody, this 92 * may need to be world-readable. (This file is read by the daemon which is 93 * running as root.) 94 */ 95#define _PATH_SSH_USER_PERMITTED_KEYS ".ssh/authorized_keys" 96 97/* backward compat for protocol v2 */ 98#define _PATH_SSH_USER_PERMITTED_KEYS2 ".ssh/authorized_keys2" 99 100/* 101 * Per-user and system-wide ssh "rc" files. These files are executed with 102 * /bin/sh before starting the shell or command if they exist. They will be 103 * passed "proto cookie" as arguments if X11 forwarding with spoofing is in 104 * use. xauth will be run if neither of these exists. 105 */ 106#define _PATH_SSH_USER_RC ".ssh/rc" 107#define _PATH_SSH_SYSTEM_RC SSHDIR "/sshrc" 108 109/* 110 * Ssh-only version of /etc/hosts.equiv. Additionally, the daemon may use 111 * ~/.rhosts and /etc/hosts.equiv if rhosts authentication is enabled. 112 */ 113#define _PATH_SSH_HOSTS_EQUIV SSHDIR "/shosts.equiv" 114#define _PATH_RHOSTS_EQUIV "/etc/hosts.equiv" 115 116/* 117 * Default location of askpass 118 */ 119#ifndef _PATH_SSH_ASKPASS_DEFAULT 120#define _PATH_SSH_ASKPASS_DEFAULT "/usr/local/bin/ssh-askpass" 121#endif 122 123/* Location of ssh-keysign for hostbased authentication */ 124#ifndef _PATH_SSH_KEY_SIGN 125#define _PATH_SSH_KEY_SIGN "/usr/libexec/ssh-keysign" 126#endif 127 128/* xauth for X11 forwarding */ 129#ifndef _PATH_XAUTH 130#define _PATH_XAUTH "/usr/local/bin/xauth" 131#endif 132 133/* UNIX domain socket for X11 server; displaynum will replace %u */ 134#ifndef _PATH_UNIX_X 135#define _PATH_UNIX_X "/tmp/.X11-unix/X%u" 136#endif 137 138/* for scp */ 139#ifndef _PATH_CP 140#define _PATH_CP "cp" 141#endif 142 143/* for sftp */ 144#ifndef _PATH_SFTP_SERVER 145#define _PATH_SFTP_SERVER "/usr/libexec/sftp-server" 146#endif 147 148/* chroot directory for unprivileged user when UsePrivilegeSeparation=yes */ 149#ifndef _PATH_PRIVSEP_CHROOT_DIR 150#define _PATH_PRIVSEP_CHROOT_DIR "/var/empty" 151#endif 152 153/* for passwd change */ 154#ifndef _PATH_PASSWD_PROG 155#define _PATH_PASSWD_PROG "/usr/bin/passwd" 156#endif 157 158#ifndef _PATH_LS 159#define _PATH_LS "ls" 160#endif 161 162/* path to login program */ 163#ifndef LOGIN_PROGRAM 164# ifdef LOGIN_PROGRAM_FALLBACK 165# define LOGIN_PROGRAM LOGIN_PROGRAM_FALLBACK 166# else 167# define LOGIN_PROGRAM "/usr/bin/login" 168# endif 169#endif /* LOGIN_PROGRAM */ 170 171/* Askpass program define */ 172#ifndef ASKPASS_PROGRAM 173#define ASKPASS_PROGRAM "/usr/lib/ssh/ssh-askpass" 174#endif /* ASKPASS_PROGRAM */ 175