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