From: djm@openbsd.org Date: Thu, 18 Nov 2021 03:07:20 +0000 (+0000) Subject: upstream: check for POLLHUP as well as POLLIN in sshd listen loop; X-Git-Tag: V_8_9_P1~181 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b99498d0c93f1edd04857b318308a66b28316bd8;p=thirdparty%2Fopenssh-portable.git upstream: check for POLLHUP as well as POLLIN in sshd listen loop; ok deraadt millert OpenBSD-Commit-ID: a4f1244c5a9c2b08dac4f3b1dc22e9d1dc60c587 --- diff --git a/sshd.c b/sshd.c index 9ada0c18b..432fc5be4 100644 --- a/sshd.c +++ b/sshd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sshd.c,v 1.580 2021/11/17 21:06:39 djm Exp $ */ +/* $OpenBSD: sshd.c,v 1.581 2021/11/18 03:07:20 djm Exp $ */ /* * Author: Tatu Ylonen * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland @@ -1218,7 +1218,7 @@ server_accept_loop(int *sock_in, int *sock_out, int *newsock, int *config_s) for (i = 0; i < options.max_startups; i++) { if (startup_pipes[i] == -1 || - !(pfd[num_listen_socks+i].revents & POLLIN)) + !(pfd[num_listen_socks+i].revents & (POLLIN|POLLHUP))) continue; switch (read(startup_pipes[i], &c, sizeof(c))) { case -1: