version 1.89, 2001/09/03 20:58:33 |
version 1.90, 2001/09/19 19:24:18 |
|
|
oGlobalKnownHostsFile2, oUserKnownHostsFile2, oPubkeyAuthentication, |
oGlobalKnownHostsFile2, oUserKnownHostsFile2, oPubkeyAuthentication, |
oKbdInteractiveAuthentication, oKbdInteractiveDevices, oHostKeyAlias, |
oKbdInteractiveAuthentication, oKbdInteractiveDevices, oHostKeyAlias, |
oDynamicForward, oPreferredAuthentications, oHostbasedAuthentication, |
oDynamicForward, oPreferredAuthentications, oHostbasedAuthentication, |
oHostKeyAlgorithms, oBindAddress, oSmartcardDevice |
oHostKeyAlgorithms, oBindAddress, oSmartcardDevice, |
|
oClearAllForwardings |
} OpCodes; |
} OpCodes; |
|
|
/* Textual representations of the tokens. */ |
/* Textual representations of the tokens. */ |
|
|
{ "hostkeyalgorithms", oHostKeyAlgorithms }, |
{ "hostkeyalgorithms", oHostKeyAlgorithms }, |
{ "bindaddress", oBindAddress }, |
{ "bindaddress", oBindAddress }, |
{ "smartcarddevice", oSmartcardDevice }, |
{ "smartcarddevice", oSmartcardDevice }, |
|
{ "clearallforwardings", oClearAllForwardings }, |
{ NULL, 0 } |
{ NULL, 0 } |
}; |
}; |
|
|
|
|
fwd->host_port = host_port; |
fwd->host_port = host_port; |
} |
} |
|
|
|
static void |
|
clear_forwardings(Options *options) |
|
{ |
|
int i; |
|
|
|
for (i = 0; i < options->num_local_forwards; i++) |
|
xfree(options->local_forwards[i].host); |
|
options->num_local_forwards = 0; |
|
for (i = 0; i < options->num_remote_forwards; i++) |
|
xfree(options->remote_forwards[i].host); |
|
options->num_remote_forwards = 0; |
|
} |
|
|
/* |
/* |
* Returns the number of the token pointed to by cp or oBadOption. |
* Returns the number of the token pointed to by cp or oBadOption. |
*/ |
*/ |
|
|
add_local_forward(options, fwd_port, "socks4", 0); |
add_local_forward(options, fwd_port, "socks4", 0); |
break; |
break; |
|
|
|
case oClearAllForwardings: |
|
intptr = &options->clear_forwardings; |
|
goto parse_flag; |
|
|
case oHost: |
case oHost: |
*activep = 0; |
*activep = 0; |
while ((arg = strdelim(&s)) != NULL && *arg != '\0') |
while ((arg = strdelim(&s)) != NULL && *arg != '\0') |
|
|
options->user_hostfile2 = NULL; |
options->user_hostfile2 = NULL; |
options->num_local_forwards = 0; |
options->num_local_forwards = 0; |
options->num_remote_forwards = 0; |
options->num_remote_forwards = 0; |
|
options->clear_forwardings = -1; |
options->log_level = (LogLevel) - 1; |
options->log_level = (LogLevel) - 1; |
options->preferred_authentications = NULL; |
options->preferred_authentications = NULL; |
options->bind_address = NULL; |
options->bind_address = NULL; |
|
|
options->user_hostfile2 = _PATH_SSH_USER_HOSTFILE2; |
options->user_hostfile2 = _PATH_SSH_USER_HOSTFILE2; |
if (options->log_level == (LogLevel) - 1) |
if (options->log_level == (LogLevel) - 1) |
options->log_level = SYSLOG_LEVEL_INFO; |
options->log_level = SYSLOG_LEVEL_INFO; |
|
if (options->clear_forwardings == 1) |
|
clear_forwardings(options); |
/* 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 */ |