summaryrefslogtreecommitdiffstats
path: root/usr.bin/ssh/sshconnect2.c
diff options
context:
space:
mode:
authordtucker <dtucker@openbsd.org>2016-09-22 02:29:57 +0000
committerdtucker <dtucker@openbsd.org>2016-09-22 02:29:57 +0000
commitddc0565ddc7810268519b11c172fc149546129f9 (patch)
tree76d22237294ac4089a74dbe41d556edee243d49b /usr.bin/ssh/sshconnect2.c
parentCall setsockopt(2) before listen(2) in relayd tests and adjust some (diff)
downloadwireguard-openbsd-ddc0565ddc7810268519b11c172fc149546129f9.tar.xz
wireguard-openbsd-ddc0565ddc7810268519b11c172fc149546129f9.zip
If ssh receives a PACKET_DISCONNECT during userauth it will cause
ssh_dispatch_run(DISPATCH_BLOCK, ...) to return without the session being authenticated. Check for this and exit if necessary. ok djm@
Diffstat (limited to 'usr.bin/ssh/sshconnect2.c')
-rw-r--r--usr.bin/ssh/sshconnect2.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/usr.bin/ssh/sshconnect2.c b/usr.bin/ssh/sshconnect2.c
index 513c07f0494..e7d39840e7c 100644
--- a/usr.bin/ssh/sshconnect2.c
+++ b/usr.bin/ssh/sshconnect2.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sshconnect2.c,v 1.247 2016/07/22 05:46:11 dtucker Exp $ */
+/* $OpenBSD: sshconnect2.c,v 1.248 2016/09/22 02:29:57 dtucker Exp $ */
/*
* Copyright (c) 2000 Markus Friedl. All rights reserved.
* Copyright (c) 2008 Damien Miller. All rights reserved.
@@ -396,6 +396,8 @@ ssh_userauth2(const char *local_user, const char *server_user, char *host,
pubkey_cleanup(&authctxt);
ssh_dispatch_range(ssh, SSH2_MSG_USERAUTH_MIN, SSH2_MSG_USERAUTH_MAX, NULL);
+ if (!authctxt.success)
+ fatal("Authentication failed.");
debug("Authentication succeeded (%s).", authctxt.method->name);
}