From 36b5e37030d35bbaa18ba56825b1af55971d18a0 Mon Sep 17 00:00:00 2001 From: "djm@openbsd.org" Date: Thu, 18 Nov 2021 03:07:59 +0000 Subject: [PATCH] upstream: fd leak in sshd listen loop error path; from Gleb Smirnoff OpenBSD-Commit-ID: a7a2be27a690a74bf2381bc16cea38e265657412 --- sshd.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sshd.c b/sshd.c index 432fc5be4..4e33cc92d 100644 --- a/sshd.c +++ b/sshd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sshd.c,v 1.581 2021/11/18 03:07:20 djm Exp $ */ +/* $OpenBSD: sshd.c,v 1.582 2021/11/18 03:07:59 djm Exp $ */ /* * Author: Tatu Ylonen * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland @@ -1264,8 +1264,10 @@ server_accept_loop(int *sock_in, int *sock_out, int *newsock, int *config_s) continue; } if (unset_nonblock(*newsock) == -1 || - pipe(startup_p) == -1) + pipe(startup_p) == -1) { + close(*newsock); continue; + } if (drop_connection(*newsock, startups, startup_p[0])) { close(*newsock); close(startup_p[0]);