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 91dfa566f..60befde59 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 },
@@ -482,10 +493,30 @@ parse_flag:
482 intptr = &options->gss_authentication; 493 intptr = &options->gss_authentication;
483 goto parse_flag; 494 goto parse_flag;
484 495
496 case oGssKeyEx:
497 intptr = &options->gss_keyex;
498 goto parse_flag;
499
485 case oGssDelegateCreds: 500 case oGssDelegateCreds:
486 intptr = &options->gss_deleg_creds; 501 intptr = &options->gss_deleg_creds;
487 goto parse_flag; 502 goto parse_flag;
488 503
504 case oGssTrustDns:
505 intptr = &options->gss_trust_dns;
506 goto parse_flag;
507
508 case oGssClientIdentity:
509 charptr = &options->gss_client_identity;
510 goto parse_string;
511
512 case oGssServerIdentity:
513 charptr = &options->gss_server_identity;
514 goto parse_string;
515
516 case oGssRenewalRekey:
517 intptr = &options->gss_renewal_rekey;
518 goto parse_flag;
519
489 case oBatchMode: 520 case oBatchMode:
490 intptr = &options->batch_mode; 521 intptr = &options->batch_mode;
491 goto parse_flag; 522 goto parse_flag;
@@ -1138,7 +1169,12 @@ initialize_options(Options * options)
1138 options->pubkey_authentication = -1; 1169 options->pubkey_authentication = -1;
1139 options->challenge_response_authentication = -1; 1170 options->challenge_response_authentication = -1;
1140 options->gss_authentication = -1; 1171 options->gss_authentication = -1;
1172 options->gss_keyex = -1;
1141 options->gss_deleg_creds = -1; 1173 options->gss_deleg_creds = -1;
1174 options->gss_trust_dns = -1;
1175 options->gss_renewal_rekey = -1;
1176 options->gss_client_identity = NULL;
1177 options->gss_server_identity = NULL;
1142 options->password_authentication = -1; 1178 options->password_authentication = -1;
1143 options->kbd_interactive_authentication = -1; 1179 options->kbd_interactive_authentication = -1;
1144 options->kbd_interactive_devices = NULL; 1180 options->kbd_interactive_devices = NULL;
@@ -1238,8 +1274,14 @@ fill_default_options(Options * options)
1238 options->challenge_response_authentication = 1; 1274 options->challenge_response_authentication = 1;
1239 if (options->gss_authentication == -1) 1275 if (options->gss_authentication == -1)
1240 options->gss_authentication = 0; 1276 options->gss_authentication = 0;
1277 if (options->gss_keyex == -1)
1278 options->gss_keyex = 0;
1241 if (options->gss_deleg_creds == -1) 1279 if (options->gss_deleg_creds == -1)
1242 options->gss_deleg_creds = 0; 1280 options->gss_deleg_creds = 0;
1281 if (options->gss_trust_dns == -1)
1282 options->gss_trust_dns = 0;
1283 if (options->gss_renewal_rekey == -1)
1284 options->gss_renewal_rekey = 0;
1243 if (options->password_authentication == -1) 1285 if (options->password_authentication == -1)
1244 options->password_authentication = 1; 1286 options->password_authentication = 1;
1245 if (options->kbd_interactive_authentication == -1) 1287 if (options->kbd_interactive_authentication == -1)