45 #define PATTERN FD_CLOEXEC
55 if ((flags = fcntl(fd, F_GETFD, 0)) < 0)
57 if (fcntl(fd, F_SETFD, on ? flags |
PATTERN : flags & ~
PATTERN) < 0)
58 msg_fatal(
"fcntl: set close-on-exec flag %s: %m", on ?
"on" :
"off");
59 return ((flags &
PATTERN) != 0);
NORETURN msg_fatal(const char *fmt,...)
int close_on_exec(int fd, int on)