svn commit: r255336 - head/lib/libc/resolv
Jilles Tjoelker
jilles at FreeBSD.org
Fri Sep 6 23:49:55 UTC 2013
Author: jilles
Date: Fri Sep 6 23:49:54 2013
New Revision: 255336
URL: http://svnweb.freebsd.org/changeset/base/255336
Log:
libc: Make resolver sockets close-on-exec (SOCK_CLOEXEC).
Although the resolver's sockets are exposed to applications via res_state,
I do not expect them to pass the sockets across execve().
Modified:
head/lib/libc/resolv/res_send.c
Modified: head/lib/libc/resolv/res_send.c
==============================================================================
--- head/lib/libc/resolv/res_send.c Fri Sep 6 23:47:50 2013 (r255335)
+++ head/lib/libc/resolv/res_send.c Fri Sep 6 23:49:54 2013 (r255336)
@@ -660,7 +660,8 @@ send_vc(res_state statp,
if (statp->_vcsock >= 0)
res_nclose(statp);
- statp->_vcsock = _socket(nsap->sa_family, SOCK_STREAM, 0);
+ statp->_vcsock = _socket(nsap->sa_family, SOCK_STREAM |
+ SOCK_CLOEXEC, 0);
#if !defined(USE_POLL) && !defined(USE_KQUEUE)
if (statp->_vcsock > highestFD) {
res_nclose(statp);
@@ -851,7 +852,7 @@ send_dg(res_state statp,
nsaplen = get_salen(nsap);
if (EXT(statp).nssocks[ns] == -1) {
EXT(statp).nssocks[ns] = _socket(nsap->sa_family,
- SOCK_DGRAM, 0);
+ SOCK_DGRAM | SOCK_CLOEXEC, 0);
#if !defined(USE_POLL) && !defined(USE_KQUEUE)
if (EXT(statp).nssocks[ns] > highestFD) {
res_nclose(statp);
More information about the svn-src-all
mailing list