From 46d71747f695d27c40a8c79b60ed81a92ade1c83 Mon Sep 17 00:00:00 2001 From: Jilles Tjoelker Date: Sun, 11 Aug 2013 15:38:48 +0000 Subject: [PATCH] db/hash: Use O_CLOEXEC instead of separate fcntl() call. In particular, a hash db is used by getpwnam() and getpwuid(). MFC after: 1 week --- lib/libc/db/hash/hash.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/libc/db/hash/hash.c b/lib/libc/db/hash/hash.c index 638814ceb5d2..af80929112b0 100644 --- a/lib/libc/db/hash/hash.c +++ b/lib/libc/db/hash/hash.c @@ -121,9 +121,8 @@ __hash_open(const char *file, int flags, int mode, hashp->flags = flags; if (file) { - if ((hashp->fp = _open(file, flags, mode)) == -1) + if ((hashp->fp = _open(file, flags | O_CLOEXEC, mode)) == -1) RETURN_ERROR(errno, error0); - (void)_fcntl(hashp->fp, F_SETFD, 1); new_table = _fstat(hashp->fp, &statbuf) == 0 && statbuf.st_size == 0 && (flags & O_ACCMODE) != O_RDONLY; } else