You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
858 B
20 lines
858 B
diff --color -rup a/monitor.c b/monitor.c |
|
--- a/monitor.c 2022-07-11 15:11:28.146863144 +0200 |
|
+++ b/monitor.c 2022-07-11 15:15:35.726655877 +0200 |
|
@@ -376,8 +376,15 @@ monitor_child_preauth(struct ssh *ssh, s |
|
if (ent->flags & (MON_AUTHDECIDE|MON_ALOG)) { |
|
auth_log(ssh, authenticated, partial, |
|
auth_method, auth_submethod); |
|
- if (!partial && !authenticated) |
|
+ if (!partial && !authenticated) { |
|
+#ifdef GSSAPI |
|
+ /* If gssapi-with-mic failed, MONITOR_REQ_GSSCHECKMIC is disabled. |
|
+ * We have to reenable it to try again for gssapi-keyex */ |
|
+ if (strcmp(auth_method, "gssapi-with-mic") == 0 && options.gss_keyex) |
|
+ monitor_permit(mon_dispatch, MONITOR_REQ_GSSCHECKMIC, 1); |
|
+#endif |
|
authctxt->failures++; |
|
+ } |
|
if (authenticated || partial) { |
|
auth2_update_session_info(authctxt, |
|
auth_method, auth_submethod);
|
|
|