summaryrefslogtreecommitdiff
path: root/readconf.c
diff options
context:
space:
mode:
Diffstat (limited to 'readconf.c')
-rw-r--r--readconf.c35
1 files changed, 35 insertions, 0 deletions
diff --git a/readconf.c b/readconf.c
index 0296590e2..36750a843 100644
--- a/readconf.c
+++ b/readconf.c
@@ -127,6 +127,7 @@ typedef enum {
127 oClearAllForwardings, oNoHostAuthenticationForLocalhost, 127 oClearAllForwardings, oNoHostAuthenticationForLocalhost,
128 oEnableSSHKeysign, oRekeyLimit, oVerifyHostKeyDNS, oConnectTimeout, 128 oEnableSSHKeysign, oRekeyLimit, oVerifyHostKeyDNS, oConnectTimeout,
129 oAddressFamily, oGssAuthentication, oGssDelegateCreds, 129 oAddressFamily, oGssAuthentication, oGssDelegateCreds,
130 oGssTrustDns, oGssKeyEx, oGssClientIdentity, oGssRenewalRekey,
130 oServerAliveInterval, oServerAliveCountMax, oIdentitiesOnly, 131 oServerAliveInterval, oServerAliveCountMax, oIdentitiesOnly,
131 oSendEnv, oControlPath, oControlMaster, oControlPersist, 132 oSendEnv, oControlPath, oControlMaster, oControlPersist,
132 oHashKnownHosts, 133 oHashKnownHosts,
@@ -166,10 +167,18 @@ static struct {
166 { "afstokenpassing", oUnsupported }, 167 { "afstokenpassing", oUnsupported },
167#if defined(GSSAPI) 168#if defined(GSSAPI)
168 { "gssapiauthentication", oGssAuthentication }, 169 { "gssapiauthentication", oGssAuthentication },
170 { "gssapikeyexchange", oGssKeyEx },
169 { "gssapidelegatecredentials", oGssDelegateCreds }, 171 { "gssapidelegatecredentials", oGssDelegateCreds },
172 { "gssapitrustdns", oGssTrustDns },
173 { "gssapiclientidentity", oGssClientIdentity },
174 { "gssapirenewalforcesrekey", oGssRenewalRekey },
170#else 175#else
171 { "gssapiauthentication", oUnsupported }, 176 { "gssapiauthentication", oUnsupported },
177 { "gssapikeyexchange", oUnsupported },
172 { "gssapidelegatecredentials", oUnsupported }, 178 { "gssapidelegatecredentials", oUnsupported },
179 { "gssapitrustdns", oUnsupported },
180 { "gssapiclientidentity", oUnsupported },
181 { "gssapirenewalforcesrekey", oUnsupported },
173#endif 182#endif
174 { "fallbacktorsh", oDeprecated }, 183 { "fallbacktorsh", oDeprecated },
175 { "usersh", oDeprecated }, 184 { "usersh", oDeprecated },
@@ -474,10 +483,26 @@ parse_flag:
474 intptr = &options->gss_authentication; 483 intptr = &options->gss_authentication;
475 goto parse_flag; 484 goto parse_flag;
476 485
486 case oGssKeyEx:
487 intptr = &options->gss_keyex;
488 goto parse_flag;
489
477 case oGssDelegateCreds: 490 case oGssDelegateCreds:
478 intptr = &options->gss_deleg_creds; 491 intptr = &options->gss_deleg_creds;
479 goto parse_flag; 492 goto parse_flag;
480 493
494 case oGssTrustDns:
495 intptr = &options->gss_trust_dns;
496 goto parse_flag;
497
498 case oGssClientIdentity:
499 charptr = &options->gss_client_identity;
500 goto parse_string;
501
502 case oGssRenewalRekey:
503 intptr = &options->gss_renewal_rekey;
504 goto parse_flag;
505
481 case oBatchMode: 506 case oBatchMode:
482 intptr = &options->batch_mode; 507 intptr = &options->batch_mode;
483 goto parse_flag; 508 goto parse_flag;
@@ -1058,7 +1083,11 @@ initialize_options(Options * options)
1058 options->pubkey_authentication = -1; 1083 options->pubkey_authentication = -1;
1059 options->challenge_response_authentication = -1; 1084 options->challenge_response_authentication = -1;
1060 options->gss_authentication = -1; 1085 options->gss_authentication = -1;
1086 options->gss_keyex = -1;
1061 options->gss_deleg_creds = -1; 1087 options->gss_deleg_creds = -1;
1088 options->gss_trust_dns = -1;
1089 options->gss_renewal_rekey = -1;
1090 options->gss_client_identity = NULL;
1062 options->password_authentication = -1; 1091 options->password_authentication = -1;
1063 options->kbd_interactive_authentication = -1; 1092 options->kbd_interactive_authentication = -1;
1064 options->kbd_interactive_devices = NULL; 1093 options->kbd_interactive_devices = NULL;
@@ -1156,8 +1185,14 @@ fill_default_options(Options * options)
1156 options->challenge_response_authentication = 1; 1185 options->challenge_response_authentication = 1;
1157 if (options->gss_authentication == -1) 1186 if (options->gss_authentication == -1)
1158 options->gss_authentication = 0; 1187 options->gss_authentication = 0;
1188 if (options->gss_keyex == -1)
1189 options->gss_keyex = 0;
1159 if (options->gss_deleg_creds == -1) 1190 if (options->gss_deleg_creds == -1)
1160 options->gss_deleg_creds = 0; 1191 options->gss_deleg_creds = 0;
1192 if (options->gss_trust_dns == -1)
1193 options->gss_trust_dns = 0;
1194 if (options->gss_renewal_rekey == -1)
1195 options->gss_renewal_rekey = 0;
1161 if (options->password_authentication == -1) 1196 if (options->password_authentication == -1)
1162 options->password_authentication = 1; 1197 options->password_authentication = 1;
1163 if (options->kbd_interactive_authentication == -1) 1198 if (options->kbd_interactive_authentication == -1)