diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | nscd/nscd_helper.c | 6 |
2 files changed, 8 insertions, 1 deletions
@@ -1,5 +1,8 @@ 2007-07-21 Ulrich Drepper <drepper@redhat.com> + * nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for + descriptor received from nscd. + * sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_CMSG_CLOEXEC. * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_CLOEXEC. diff --git a/nscd/nscd_helper.c b/nscd/nscd_helper.c index 79644a4..50146a0 100644 --- a/nscd/nscd_helper.c +++ b/nscd/nscd_helper.c @@ -265,7 +265,11 @@ get_mapping (request_type type, const char *key, if (wait_on_socket (sock) <= 0) goto out_close2; - if (__builtin_expect (TEMP_FAILURE_RETRY (__recvmsg (sock, &msg, 0)) +# ifndef MSG_CMSG_CLOEXEC +# define MSG_CMSG_CLOEXEC 0 +# endif + if (__builtin_expect (TEMP_FAILURE_RETRY (__recvmsg (sock, &msg, + MSG_CMSG_CLOEXEC)) != keylen, 0)) goto out_close2; |