From 558137c4d87a7fc0f9871a37ff53479e9ae00d0b Mon Sep 17 00:00:00 2001 From: Ken Hornstein Date: Mon, 22 Apr 2019 21:42:14 -0400 Subject: [PATCH 1/1] Set the close-on-exec flag for sockets Since we no longer use closefds(), start cleaning up stray descriptors. Start by making sure that any network sockets we create have the close-on-exec flag set on them. --- sbr/client.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sbr/client.c b/sbr/client.c index 572f8ee0..2bed9052 100644 --- a/sbr/client.c +++ b/sbr/client.c @@ -9,6 +9,7 @@ #include "client.h" #include "h/mts.h" #include "h/utils.h" +#include #include #include #include @@ -71,7 +72,15 @@ client (char *server, char *service, char *response, int len_response, } if (connect(sd, ai->ai_addr, ai->ai_addrlen) == 0) { + int flags; + freeaddrinfo(res); + + flags = fcntl(sd, F_GETFD, 0); + + if (flags != -1) + fcntl(sd, F_SETFD, flags | FD_CLOEXEC); + return sd; } -- 2.56.0