From 07dbddf2ea826fbb4f0409cdf2b96b1dac3ba3df Mon Sep 17 00:00:00 2001 From: =?utf8?q?Cristian=20Rodr=C3=ADguez?= Date: Fri, 10 Apr 2015 15:57:58 -0300 Subject: [PATCH] lib/sysfs.c: use fcntl(..F_DUPFD_CLOEXEC) instead of dup(2) "The two descriptors do not share file descriptor flags (the close-on-exec flag). The close-on-exec flag for the duplicate descriptor is off" --- lib/sysfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/sysfs.c b/lib/sysfs.c index ac35596190..1b2019112d 100644 --- a/lib/sysfs.c +++ b/lib/sysfs.c @@ -246,7 +246,7 @@ DIR *sysfs_opendir(struct sysfs_cxt *cxt, const char *attr) * -- we cannot use cxt->sysfs_fd directly, because closedir() * will close this our persistent file descriptor. */ - fd = dup(cxt->dir_fd); + fd = fcntl(cxt->dir_fd, F_DUPFD_CLOEXEC, STDERR_FILENO + 1); if (fd < 0) return NULL; -- 2.47.2