ce2d80b
diff --git a/auth2.c b/auth2.c
ce2d80b
index d9b440a..ec0bf12 100644
ce2d80b
--- a/auth2.c
ce2d80b
+++ b/auth2.c
ce2d80b
@@ -355,8 +355,9 @@ userauth_finish(Authctxt *authctxt, int authenticated, const char *method,
ce2d80b
 		authctxt->success = 1;
ce2d80b
 	} else {
ce2d80b
 
ce2d80b
-		/* Allow initial try of "none" auth without failure penalty */
ce2d80b
-		if (!authctxt->server_caused_failure &&
ce2d80b
+		/* Allow initial try of "none" auth without failure penalty
ce2d80b
+		 * Partial succes is not failure */
ce2d80b
+		if (!authctxt->server_caused_failure && !partial &&
ce2d80b
 		    (authctxt->attempt > 1 || strcmp(method, "none") != 0))
ce2d80b
 			authctxt->failures++;
ce2d80b
 		if (authctxt->failures >= options.max_authtries) {