version 1.102.2.1, 2003/09/16 20:50:43 |
version 1.102.2.2, 2004/03/04 18:18:16 |
|
|
RSAAuthentication yes |
RSAAuthentication yes |
RhostsRSAAuthentication yes |
RhostsRSAAuthentication yes |
StrictHostKeyChecking yes |
StrictHostKeyChecking yes |
KeepAlives no |
TcpKeepAlive no |
IdentityFile ~/.ssh/identity |
IdentityFile ~/.ssh/identity |
Port 22 |
Port 22 |
EscapeChar ~ |
EscapeChar ~ |
|
|
|
|
typedef enum { |
typedef enum { |
oBadOption, |
oBadOption, |
oForwardAgent, oForwardX11, oGatewayPorts, |
oForwardAgent, oForwardX11, oForwardX11Trusted, oGatewayPorts, |
oPasswordAuthentication, oRSAAuthentication, |
oPasswordAuthentication, oRSAAuthentication, |
oChallengeResponseAuthentication, oXAuthLocation, |
oChallengeResponseAuthentication, oXAuthLocation, |
oIdentityFile, oHostName, oPort, oCipher, oRemoteForward, oLocalForward, |
oIdentityFile, oHostName, oPort, oCipher, oRemoteForward, oLocalForward, |
oUser, oHost, oEscapeChar, oRhostsRSAAuthentication, oProxyCommand, |
oUser, oHost, oEscapeChar, oRhostsRSAAuthentication, oProxyCommand, |
oGlobalKnownHostsFile, oUserKnownHostsFile, oConnectionAttempts, |
oGlobalKnownHostsFile, oUserKnownHostsFile, oConnectionAttempts, |
oBatchMode, oCheckHostIP, oStrictHostKeyChecking, oCompression, |
oBatchMode, oCheckHostIP, oStrictHostKeyChecking, oCompression, |
oCompressionLevel, oKeepAlives, oNumberOfPasswordPrompts, |
oCompressionLevel, oTCPKeepAlive, oNumberOfPasswordPrompts, |
oUsePrivilegedPort, oLogLevel, oCiphers, oProtocol, oMacs, |
oUsePrivilegedPort, oLogLevel, oCiphers, oProtocol, oMacs, |
oGlobalKnownHostsFile2, oUserKnownHostsFile2, oPubkeyAuthentication, |
oGlobalKnownHostsFile2, oUserKnownHostsFile2, oPubkeyAuthentication, |
oKbdInteractiveAuthentication, oKbdInteractiveDevices, oHostKeyAlias, |
oKbdInteractiveAuthentication, oKbdInteractiveDevices, oHostKeyAlias, |
|
|
oClearAllForwardings, oNoHostAuthenticationForLocalhost, |
oClearAllForwardings, oNoHostAuthenticationForLocalhost, |
oEnableSSHKeysign, oRekeyLimit, oVerifyHostKeyDNS, oConnectTimeout, |
oEnableSSHKeysign, oRekeyLimit, oVerifyHostKeyDNS, oConnectTimeout, |
oAddressFamily, oGssAuthentication, oGssDelegateCreds, |
oAddressFamily, oGssAuthentication, oGssDelegateCreds, |
|
oServerAliveInterval, oServerAliveCountMax, |
oDeprecated, oUnsupported |
oDeprecated, oUnsupported |
} OpCodes; |
} OpCodes; |
|
|
|
|
} keywords[] = { |
} keywords[] = { |
{ "forwardagent", oForwardAgent }, |
{ "forwardagent", oForwardAgent }, |
{ "forwardx11", oForwardX11 }, |
{ "forwardx11", oForwardX11 }, |
|
{ "forwardx11trusted", oForwardX11Trusted }, |
{ "xauthlocation", oXAuthLocation }, |
{ "xauthlocation", oXAuthLocation }, |
{ "gatewayports", oGatewayPorts }, |
{ "gatewayports", oGatewayPorts }, |
{ "useprivilegedport", oUsePrivilegedPort }, |
{ "useprivilegedport", oUsePrivilegedPort }, |
|
|
{ "stricthostkeychecking", oStrictHostKeyChecking }, |
{ "stricthostkeychecking", oStrictHostKeyChecking }, |
{ "compression", oCompression }, |
{ "compression", oCompression }, |
{ "compressionlevel", oCompressionLevel }, |
{ "compressionlevel", oCompressionLevel }, |
{ "keepalive", oKeepAlives }, |
{ "tcpkeepalive", oTCPKeepAlive }, |
|
{ "keepalive", oTCPKeepAlive }, /* obsolete */ |
{ "numberofpasswordprompts", oNumberOfPasswordPrompts }, |
{ "numberofpasswordprompts", oNumberOfPasswordPrompts }, |
{ "loglevel", oLogLevel }, |
{ "loglevel", oLogLevel }, |
{ "dynamicforward", oDynamicForward }, |
{ "dynamicforward", oDynamicForward }, |
|
|
#endif |
#endif |
{ "clearallforwardings", oClearAllForwardings }, |
{ "clearallforwardings", oClearAllForwardings }, |
{ "enablesshkeysign", oEnableSSHKeysign }, |
{ "enablesshkeysign", oEnableSSHKeysign }, |
#ifdef DNS |
|
{ "verifyhostkeydns", oVerifyHostKeyDNS }, |
{ "verifyhostkeydns", oVerifyHostKeyDNS }, |
#else |
|
{ "verifyhostkeydns", oUnsupported }, |
|
#endif |
|
{ "nohostauthenticationforlocalhost", oNoHostAuthenticationForLocalhost }, |
{ "nohostauthenticationforlocalhost", oNoHostAuthenticationForLocalhost }, |
{ "rekeylimit", oRekeyLimit }, |
{ "rekeylimit", oRekeyLimit }, |
{ "connecttimeout", oConnectTimeout }, |
{ "connecttimeout", oConnectTimeout }, |
{ "addressfamily", oAddressFamily }, |
{ "addressfamily", oAddressFamily }, |
|
{ "serveraliveinterval", oServerAliveInterval }, |
|
{ "serveralivecountmax", oServerAliveCountMax }, |
{ NULL, oBadOption } |
{ NULL, oBadOption } |
}; |
}; |
|
|
|
|
/* NOTREACHED */ |
/* NOTREACHED */ |
case oConnectTimeout: |
case oConnectTimeout: |
intptr = &options->connection_timeout; |
intptr = &options->connection_timeout; |
/* parse_time: */ |
parse_time: |
arg = strdelim(&s); |
arg = strdelim(&s); |
if (!arg || *arg == '\0') |
if (!arg || *arg == '\0') |
fatal("%s line %d: missing time value.", |
fatal("%s line %d: missing time value.", |
|
|
intptr = &options->forward_x11; |
intptr = &options->forward_x11; |
goto parse_flag; |
goto parse_flag; |
|
|
|
case oForwardX11Trusted: |
|
intptr = &options->forward_x11_trusted; |
|
goto parse_flag; |
|
|
case oGatewayPorts: |
case oGatewayPorts: |
intptr = &options->gateway_ports; |
intptr = &options->gateway_ports; |
goto parse_flag; |
goto parse_flag; |
|
|
|
|
case oVerifyHostKeyDNS: |
case oVerifyHostKeyDNS: |
intptr = &options->verify_host_key_dns; |
intptr = &options->verify_host_key_dns; |
goto parse_flag; |
goto parse_yesnoask; |
|
|
case oStrictHostKeyChecking: |
case oStrictHostKeyChecking: |
intptr = &options->strict_host_key_checking; |
intptr = &options->strict_host_key_checking; |
|
parse_yesnoask: |
arg = strdelim(&s); |
arg = strdelim(&s); |
if (!arg || *arg == '\0') |
if (!arg || *arg == '\0') |
fatal("%.200s line %d: Missing yes/no/ask argument.", |
fatal("%.200s line %d: Missing yes/no/ask argument.", |
|
|
intptr = &options->compression; |
intptr = &options->compression; |
goto parse_flag; |
goto parse_flag; |
|
|
case oKeepAlives: |
case oTCPKeepAlive: |
intptr = &options->keepalives; |
intptr = &options->tcp_keep_alive; |
goto parse_flag; |
goto parse_flag; |
|
|
case oNoHostAuthenticationForLocalhost: |
case oNoHostAuthenticationForLocalhost: |
|
|
intptr = &options->enable_ssh_keysign; |
intptr = &options->enable_ssh_keysign; |
goto parse_flag; |
goto parse_flag; |
|
|
|
case oServerAliveInterval: |
|
intptr = &options->server_alive_interval; |
|
goto parse_time; |
|
|
|
case oServerAliveCountMax: |
|
intptr = &options->server_alive_count_max; |
|
goto parse_int; |
|
|
case oDeprecated: |
case oDeprecated: |
debug("%s line %d: Deprecated option \"%s\"", |
debug("%s line %d: Deprecated option \"%s\"", |
filename, linenum, keyword); |
filename, linenum, keyword); |
|
|
memset(options, 'X', sizeof(*options)); |
memset(options, 'X', sizeof(*options)); |
options->forward_agent = -1; |
options->forward_agent = -1; |
options->forward_x11 = -1; |
options->forward_x11 = -1; |
|
options->forward_x11_trusted = -1; |
options->xauth_location = NULL; |
options->xauth_location = NULL; |
options->gateway_ports = -1; |
options->gateway_ports = -1; |
options->use_privileged_port = -1; |
options->use_privileged_port = -1; |
|
|
options->check_host_ip = -1; |
options->check_host_ip = -1; |
options->strict_host_key_checking = -1; |
options->strict_host_key_checking = -1; |
options->compression = -1; |
options->compression = -1; |
options->keepalives = -1; |
options->tcp_keep_alive = -1; |
options->compression_level = -1; |
options->compression_level = -1; |
options->port = -1; |
options->port = -1; |
options->address_family = -1; |
options->address_family = -1; |
|
|
options->no_host_authentication_for_localhost = - 1; |
options->no_host_authentication_for_localhost = - 1; |
options->rekey_limit = - 1; |
options->rekey_limit = - 1; |
options->verify_host_key_dns = -1; |
options->verify_host_key_dns = -1; |
|
options->server_alive_interval = -1; |
|
options->server_alive_count_max = -1; |
} |
} |
|
|
/* |
/* |
|
|
options->forward_agent = 0; |
options->forward_agent = 0; |
if (options->forward_x11 == -1) |
if (options->forward_x11 == -1) |
options->forward_x11 = 0; |
options->forward_x11 = 0; |
|
if (options->forward_x11_trusted == -1) |
|
options->forward_x11_trusted = 0; |
if (options->xauth_location == NULL) |
if (options->xauth_location == NULL) |
options->xauth_location = _PATH_XAUTH; |
options->xauth_location = _PATH_XAUTH; |
if (options->gateway_ports == -1) |
if (options->gateway_ports == -1) |
|
|
if (options->challenge_response_authentication == -1) |
if (options->challenge_response_authentication == -1) |
options->challenge_response_authentication = 1; |
options->challenge_response_authentication = 1; |
if (options->gss_authentication == -1) |
if (options->gss_authentication == -1) |
options->gss_authentication = 1; |
options->gss_authentication = 0; |
if (options->gss_deleg_creds == -1) |
if (options->gss_deleg_creds == -1) |
options->gss_deleg_creds = 0; |
options->gss_deleg_creds = 0; |
if (options->password_authentication == -1) |
if (options->password_authentication == -1) |
|
|
options->strict_host_key_checking = 2; /* 2 is default */ |
options->strict_host_key_checking = 2; /* 2 is default */ |
if (options->compression == -1) |
if (options->compression == -1) |
options->compression = 0; |
options->compression = 0; |
if (options->keepalives == -1) |
if (options->tcp_keep_alive == -1) |
options->keepalives = 1; |
options->tcp_keep_alive = 1; |
if (options->compression_level == -1) |
if (options->compression_level == -1) |
options->compression_level = 6; |
options->compression_level = 6; |
if (options->port == -1) |
if (options->port == -1) |
|
|
options->rekey_limit = 0; |
options->rekey_limit = 0; |
if (options->verify_host_key_dns == -1) |
if (options->verify_host_key_dns == -1) |
options->verify_host_key_dns = 0; |
options->verify_host_key_dns = 0; |
|
if (options->server_alive_interval == -1) |
|
options->server_alive_interval = 0; |
|
if (options->server_alive_count_max == -1) |
|
options->server_alive_count_max = 3; |
/* options->proxy_command should not be set by default */ |
/* options->proxy_command should not be set by default */ |
/* options->user will be set in the main program if appropriate */ |
/* options->user will be set in the main program if appropriate */ |
/* options->hostname will be set in the main program if appropriate */ |
/* options->hostname will be set in the main program if appropriate */ |