svn commit: r298114 - head/usr.sbin/inetd
Baptiste Daroussin
bapt at FreeBSD.org
Sat Apr 16 13:10:33 UTC 2016
Author: bapt
Date: Sat Apr 16 13:10:31 2016
New Revision: 298114
URL: https://svnweb.freebsd.org/changeset/base/298114
Log:
Use the SOCK_CLOEXEC flags in the socket(2) 'type' attribute instead of
calling fcntl(2)
MFC after: 1 week
Modified:
head/usr.sbin/inetd/inetd.c
Modified: head/usr.sbin/inetd/inetd.c
==============================================================================
--- head/usr.sbin/inetd/inetd.c Sat Apr 16 12:49:26 2016 (r298113)
+++ head/usr.sbin/inetd/inetd.c Sat Apr 16 13:10:31 2016 (r298114)
@@ -1251,7 +1251,9 @@ setup(struct servtab *sep)
{
int on = 1;
- if ((sep->se_fd = socket(sep->se_family, sep->se_socktype, 0)) < 0) {
+ /* Set all listening sockets to close-on-exec. */
+ if ((sep->se_fd = socket(sep->se_family,
+ sep->se_socktype | SOCK_CLOEXEC, 0)) < 0) {
if (debug)
warn("socket failed on %s/%s",
sep->se_service, sep->se_proto);
@@ -1259,13 +1261,6 @@ setup(struct servtab *sep)
sep->se_service, sep->se_proto);
return;
}
- /* Set all listening sockets to close-on-exec. */
- if (fcntl(sep->se_fd, F_SETFD, FD_CLOEXEC) < 0) {
- syslog(LOG_ERR, "%s/%s: fcntl (F_SETFD, FD_CLOEXEC): %m",
- sep->se_service, sep->se_proto);
- close(sep->se_fd);
- return;
- }
#define turnon(fd, opt) \
setsockopt(fd, SOL_SOCKET, opt, (char *)&on, sizeof (on))
if (strcmp(sep->se_proto, "tcp") == 0 && (options & SO_DEBUG) &&
More information about the svn-src-head
mailing list