diff --git a/mongoose.c b/mongoose.c index 39e1aa07..8acc0635 100644 --- a/mongoose.c +++ b/mongoose.c @@ -2732,7 +2732,7 @@ static void mg_set_non_blocking_mode(SOCKET fd) { setsockopt(fd, 0, FREERTOS_SO_RCVTIMEO, &off, sizeof(off)); setsockopt(fd, 0, FREERTOS_SO_SNDTIMEO, &off, sizeof(off)); #else - fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) | O_NONBLOCK); + fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) | O_NONBLOCK | FD_CLOEXEC); #endif } diff --git a/src/sock.c b/src/sock.c index 48793cf2..499bb8ba 100644 --- a/src/sock.c +++ b/src/sock.c @@ -126,7 +126,7 @@ static void mg_set_non_blocking_mode(SOCKET fd) { setsockopt(fd, 0, FREERTOS_SO_RCVTIMEO, &off, sizeof(off)); setsockopt(fd, 0, FREERTOS_SO_SNDTIMEO, &off, sizeof(off)); #else - fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) | O_NONBLOCK); + fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) | O_NONBLOCK | FD_CLOEXEC); #endif }