From: Eric Blake <ebb9@byu.net>
Date: Mon, 16 Nov 2009 23:09:42 +0000 (-0700)
Subject: stdlib-safer: preserve cloexec flag for mkostemp[s]
X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f2fdd542de54c78c89fd8b50b76921cf31fdb518;p=pspp

stdlib-safer: preserve cloexec flag for mkostemp[s]

mkostemp_safer(templ,O_CLOEXEC) did not always guarantee cloexec.

* lib/mkstemp-safer.c (mkostemp_safer, mkostemps_safer): Use new
fd_safer_flag.

Signed-off-by: Eric Blake <ebb9@byu.net>
---

diff --git a/ChangeLog b/ChangeLog
index 20535a05c5..21c86be91a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2009-12-05  Eric Blake  <ebb9@byu.net>
 
+	stdlib-safer: preserve cloexec flag for mkostemp[s]
+	* lib/mkstemp-safer.c (mkostemp_safer, mkostemps_safer): Use new
+	fd_safer_flag.
+
 	unistd-safer: allow preservation of cloexec status via flag
 	* lib/unistd-safer.h (dup_safer_flag, fd_safer_flag): New
 	prototypes.
diff --git a/lib/mkstemp-safer.c b/lib/mkstemp-safer.c
index 95d315b030..ee242f3f10 100644
--- a/lib/mkstemp-safer.c
+++ b/lib/mkstemp-safer.c
@@ -39,7 +39,7 @@ mkstemp_safer (char *templ)
 int
 mkostemp_safer (char *templ, int flags)
 {
-  return fd_safer (mkostemp (templ, flags));
+  return fd_safer_flag (mkostemp (templ, flags), flags);
 }
 #endif
 
@@ -49,7 +49,7 @@ mkostemp_safer (char *templ, int flags)
 int
 mkostemps_safer (char *templ, int suffixlen, int flags)
 {
-  return fd_safer (mkostemps (templ, suffixlen, flags));
+  return fd_safer_flag (mkostemps (templ, suffixlen, flags), flags);
 }
 #endif