summaryrefslogtreecommitdiff
path: root/readconf.c
diff options
context:
space:
mode:
Diffstat (limited to 'readconf.c')
-rw-r--r--readconf.c42
1 files changed, 42 insertions, 0 deletions
diff --git a/readconf.c b/readconf.c
index 36265e431..375ca32cc 100644
--- a/readconf.c
+++ b/readconf.c
@@ -129,6 +129,8 @@ typedef enum {
129 oClearAllForwardings, oNoHostAuthenticationForLocalhost, 129 oClearAllForwardings, oNoHostAuthenticationForLocalhost,
130 oEnableSSHKeysign, oRekeyLimit, oVerifyHostKeyDNS, oConnectTimeout, 130 oEnableSSHKeysign, oRekeyLimit, oVerifyHostKeyDNS, oConnectTimeout,
131 oAddressFamily, oGssAuthentication, oGssDelegateCreds, 131 oAddressFamily, oGssAuthentication, oGssDelegateCreds,
132 oGssTrustDns, oGssKeyEx, oGssClientIdentity, oGssRenewalRekey,
133 oGssServerIdentity,
132 oServerAliveInterval, oServerAliveCountMax, oIdentitiesOnly, 134 oServerAliveInterval, oServerAliveCountMax, oIdentitiesOnly,
133 oSendEnv, oControlPath, oControlMaster, oControlPersist, 135 oSendEnv, oControlPath, oControlMaster, oControlPersist,
134 oHashKnownHosts, 136 oHashKnownHosts,
@@ -169,10 +171,19 @@ static struct {
169 { "afstokenpassing", oUnsupported }, 171 { "afstokenpassing", oUnsupported },
170#if defined(GSSAPI) 172#if defined(GSSAPI)
171 { "gssapiauthentication", oGssAuthentication }, 173 { "gssapiauthentication", oGssAuthentication },
174 { "gssapikeyexchange", oGssKeyEx },
172 { "gssapidelegatecredentials", oGssDelegateCreds }, 175 { "gssapidelegatecredentials", oGssDelegateCreds },
176 { "gssapitrustdns", oGssTrustDns },
177 { "gssapiclientidentity", oGssClientIdentity },
178 { "gssapiserveridentity", oGssServerIdentity },
179 { "gssapirenewalforcesrekey", oGssRenewalRekey },
173#else 180#else
174 { "gssapiauthentication", oUnsupported }, 181 { "gssapiauthentication", oUnsupported },
182 { "gssapikeyexchange", oUnsupported },
175 { "gssapidelegatecredentials", oUnsupported }, 183 { "gssapidelegatecredentials", oUnsupported },
184 { "gssapitrustdns", oUnsupported },
185 { "gssapiclientidentity", oUnsupported },
186 { "gssapirenewalforcesrekey", oUnsupported },
176#endif 187#endif
177 { "fallbacktorsh", oDeprecated }, 188 { "fallbacktorsh", oDeprecated },
178 { "usersh", oDeprecated }, 189 { "usersh", oDeprecated },
@@ -503,10 +514,30 @@ parse_flag:
503 intptr = &options->gss_authentication; 514 intptr = &options->gss_authentication;
504 goto parse_flag; 515 goto parse_flag;
505 516
517 case oGssKeyEx:
518 intptr = &options->gss_keyex;
519 goto parse_flag;
520
506 case oGssDelegateCreds: 521 case oGssDelegateCreds:
507 intptr = &options->gss_deleg_creds; 522 intptr = &options->gss_deleg_creds;
508 goto parse_flag; 523 goto parse_flag;
509 524
525 case oGssTrustDns:
526 intptr = &options->gss_trust_dns;
527 goto parse_flag;
528
529 case oGssClientIdentity:
530 charptr = &options->gss_client_identity;
531 goto parse_string;
532
533 case oGssServerIdentity:
534 charptr = &options->gss_server_identity;
535 goto parse_string;
536
537 case oGssRenewalRekey:
538 intptr = &options->gss_renewal_rekey;
539 goto parse_flag;
540
510 case oBatchMode: 541 case oBatchMode:
511 intptr = &options->batch_mode; 542 intptr = &options->batch_mode;
512 goto parse_flag; 543 goto parse_flag;
@@ -1158,7 +1189,12 @@ initialize_options(Options * options)
1158 options->pubkey_authentication = -1; 1189 options->pubkey_authentication = -1;
1159 options->challenge_response_authentication = -1; 1190 options->challenge_response_authentication = -1;
1160 options->gss_authentication = -1; 1191 options->gss_authentication = -1;
1192 options->gss_keyex = -1;
1161 options->gss_deleg_creds = -1; 1193 options->gss_deleg_creds = -1;
1194 options->gss_trust_dns = -1;
1195 options->gss_renewal_rekey = -1;
1196 options->gss_client_identity = NULL;
1197 options->gss_server_identity = NULL;
1162 options->password_authentication = -1; 1198 options->password_authentication = -1;
1163 options->kbd_interactive_authentication = -1; 1199 options->kbd_interactive_authentication = -1;
1164 options->kbd_interactive_devices = NULL; 1200 options->kbd_interactive_devices = NULL;
@@ -1258,8 +1294,14 @@ fill_default_options(Options * options)
1258 options->challenge_response_authentication = 1; 1294 options->challenge_response_authentication = 1;
1259 if (options->gss_authentication == -1) 1295 if (options->gss_authentication == -1)
1260 options->gss_authentication = 0; 1296 options->gss_authentication = 0;
1297 if (options->gss_keyex == -1)
1298 options->gss_keyex = 0;
1261 if (options->gss_deleg_creds == -1) 1299 if (options->gss_deleg_creds == -1)
1262 options->gss_deleg_creds = 0; 1300 options->gss_deleg_creds = 0;
1301 if (options->gss_trust_dns == -1)
1302 options->gss_trust_dns = 0;
1303 if (options->gss_renewal_rekey == -1)
1304 options->gss_renewal_rekey = 0;
1263 if (options->password_authentication == -1) 1305 if (options->password_authentication == -1)
1264 options->password_authentication = 1; 1306 options->password_authentication = 1;
1265 if (options->kbd_interactive_authentication == -1) 1307 if (options->kbd_interactive_authentication == -1)