aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2013-11-15 15:49:43 +0100
committerAndreas Schneider <asn@cryptomilk.org>2013-11-15 16:29:49 +0100
commit1ab5abf0e61225f7ca29bbc846be22e8a001a003 (patch)
tree739481f2c3cafc6a22c500ee2acfa763e23f4dd7
parentf5d1d813fb6dac5771bead197c2528dd46eab7b3 (diff)
downloadlibssh-1ab5abf0e61225f7ca29bbc846be22e8a001a003.tar.gz
libssh-1ab5abf0e61225f7ca29bbc846be22e8a001a003.tar.xz
libssh-1ab5abf0e61225f7ca29bbc846be22e8a001a003.zip
gssapi: Add support for GSSAPIClientIdentity config option.
-rw-r--r--src/config.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/config.c b/src/config.c
index 0a6d451c..ac3bca1c 100644
--- a/src/config.c
+++ b/src/config.c
@@ -47,7 +47,8 @@ enum ssh_config_opcode_e {
SOC_STRICTHOSTKEYCHECK,
SOC_KNOWNHOSTS,
SOC_PROXYCOMMAND,
- SOC_GSSAPISERVERIDENTITY
+ SOC_GSSAPISERVERIDENTITY,
+ SOC_GSSAPICLIENTIDENTITY
};
struct ssh_config_keyword_table_s {
@@ -69,6 +70,7 @@ static struct ssh_config_keyword_table_s ssh_config_keyword_table[] = {
{ "userknownhostsfile", SOC_KNOWNHOSTS },
{ "proxycommand", SOC_PROXYCOMMAND },
{ "gssapiserveridentity", SOC_GSSAPISERVERIDENTITY },
+ { "gssapiserveridentity", SOC_GSSAPICLIENTIDENTITY },
{ NULL, SOC_UNSUPPORTED }
};
@@ -331,6 +333,12 @@ static int ssh_config_parse_line(ssh_session session, const char *line,
ssh_options_set(session, SSH_OPTIONS_GSSAPI_SERVER_IDENTITY, p);
}
break;
+ case SOC_GSSAPICLIENTIDENTITY:
+ p = ssh_config_get_str_tok(&s, NULL);
+ if (p && *parsing) {
+ ssh_options_set(session, SSH_OPTIONS_GSSAPI_CLIENT_IDENTITY, p);
+ }
+ break;
case SOC_UNSUPPORTED:
SSH_LOG(SSH_LOG_RARE, "Unsupported option: %s, line: %d\n",
keyword, count);