upstream: check for POLLHUP as well as POLLIN in sshd listen loop;
ok deraadt millert OpenBSD-Commit-ID: a4f1244c5a9c2b08dac4f3b1dc22e9d1dc60c587
This commit is contained in:
parent
1f3055d788
commit
b99498d0c9
4
sshd.c
4
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 <ylo@cs.hut.fi>
|
* Author: Tatu Ylonen <ylo@cs.hut.fi>
|
||||||
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
|
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, 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++) {
|
for (i = 0; i < options.max_startups; i++) {
|
||||||
if (startup_pipes[i] == -1 ||
|
if (startup_pipes[i] == -1 ||
|
||||||
!(pfd[num_listen_socks+i].revents & POLLIN))
|
!(pfd[num_listen_socks+i].revents & (POLLIN|POLLHUP)))
|
||||||
continue;
|
continue;
|
||||||
switch (read(startup_pipes[i], &c, sizeof(c))) {
|
switch (read(startup_pipes[i], &c, sizeof(c))) {
|
||||||
case -1:
|
case -1:
|
||||||
|
|
Loading…
Reference in New Issue