mirror of
https://git.libssh.org/projects/libssh.git
synced 2026-02-11 10:40:27 +09:00
Fixed config parsing wich has overwritten user specified values.
This commit is contained in:
@@ -197,21 +197,25 @@ static int ssh_config_parse_line(ssh_session session, const char *line,
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SOC_PORT:
|
case SOC_PORT:
|
||||||
|
if (session->port == 22) {
|
||||||
p = ssh_config_get_str(&s, NULL);
|
p = ssh_config_get_str(&s, NULL);
|
||||||
if (p && *parsing) {
|
if (p && *parsing) {
|
||||||
ssh_options_set(session, SSH_OPTIONS_PORT_STR, p);
|
ssh_options_set(session, SSH_OPTIONS_PORT_STR, p);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case SOC_USERNAME:
|
case SOC_USERNAME:
|
||||||
|
if (session->username == NULL) {
|
||||||
p = ssh_config_get_str(&s, NULL);
|
p = ssh_config_get_str(&s, NULL);
|
||||||
if (p && *parsing) {
|
if (p && *parsing) {
|
||||||
ssh_options_set(session, SSH_OPTIONS_USER, p);
|
ssh_options_set(session, SSH_OPTIONS_USER, p);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case SOC_IDENTITY:
|
case SOC_IDENTITY:
|
||||||
p = ssh_config_get_str(&s, NULL);
|
p = ssh_config_get_str(&s, NULL);
|
||||||
if (p && *parsing) {
|
if (p && *parsing) {
|
||||||
ssh_options_set(session, SSH_OPTIONS_IDENTITY, p);
|
ssh_options_set(session, SSH_OPTIONS_ADD_IDENTITY, p);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SOC_CIPHERS:
|
case SOC_CIPHERS:
|
||||||
|
|||||||
Reference in New Issue
Block a user