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 eb4a8b9ee..091029a19 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 },
@@ -479,10 +490,30 @@ parse_flag:
479 intptr = &options->gss_authentication; 490 intptr = &options->gss_authentication;
480 goto parse_flag; 491 goto parse_flag;
481 492
493 case oGssKeyEx:
494 intptr = &options->gss_keyex;
495 goto parse_flag;
496
482 case oGssDelegateCreds: 497 case oGssDelegateCreds:
483 intptr = &options->gss_deleg_creds; 498 intptr = &options->gss_deleg_creds;
484 goto parse_flag; 499 goto parse_flag;
485 500
501 case oGssTrustDns:
502 intptr = &options->gss_trust_dns;
503 goto parse_flag;
504
505 case oGssClientIdentity:
506 charptr = &options->gss_client_identity;
507 goto parse_string;
508
509 case oGssServerIdentity:
510 charptr = &options->gss_server_identity;
511 goto parse_string;
512
513 case oGssRenewalRekey:
514 intptr = &options->gss_renewal_rekey;
515 goto parse_flag;
516
486 case oBatchMode: 517 case oBatchMode:
487 intptr = &options->batch_mode; 518 intptr = &options->batch_mode;
488 goto parse_flag; 519 goto parse_flag;
@@ -1092,7 +1123,12 @@ initialize_options(Options * options)
1092 options->pubkey_authentication = -1; 1123 options->pubkey_authentication = -1;
1093 options->challenge_response_authentication = -1; 1124 options->challenge_response_authentication = -1;
1094 options->gss_authentication = -1; 1125 options->gss_authentication = -1;
1126 options->gss_keyex = -1;
1095 options->gss_deleg_creds = -1; 1127 options->gss_deleg_creds = -1;
1128 options->gss_trust_dns = -1;
1129 options->gss_renewal_rekey = -1;
1130 options->gss_client_identity = NULL;
1131 options->gss_server_identity = NULL;
1096 options->password_authentication = -1; 1132 options->password_authentication = -1;
1097 options->kbd_interactive_authentication = -1; 1133 options->kbd_interactive_authentication = -1;
1098 options->kbd_interactive_devices = NULL; 1134 options->kbd_interactive_devices = NULL;
@@ -1193,8 +1229,14 @@ fill_default_options(Options * options)
1193 options->challenge_response_authentication = 1; 1229 options->challenge_response_authentication = 1;
1194 if (options->gss_authentication == -1) 1230 if (options->gss_authentication == -1)
1195 options->gss_authentication = 0; 1231 options->gss_authentication = 0;
1232 if (options->gss_keyex == -1)
1233 options->gss_keyex = 0;
1196 if (options->gss_deleg_creds == -1) 1234 if (options->gss_deleg_creds == -1)
1197 options->gss_deleg_creds = 0; 1235 options->gss_deleg_creds = 0;
1236 if (options->gss_trust_dns == -1)
1237 options->gss_trust_dns = 0;
1238 if (options->gss_renewal_rekey == -1)
1239 options->gss_renewal_rekey = 0;
1198 if (options->password_authentication == -1) 1240 if (options->password_authentication == -1)
1199 options->password_authentication = 1; 1241 options->password_authentication = 1;
1200 if (options->kbd_interactive_authentication == -1) 1242 if (options->kbd_interactive_authentication == -1)