FD_CLOFORK
((flags & O_CLOFORK) != 0 ? FD_CLOFORK : 0);
((tmp & UF_FOCLOSE) ? FD_CLOFORK : 0);
((dat->fc_fdflags & FD_CLOFORK) ? UF_FOCLOSE : 0));
if ((nflags & ~(FD_CLOEXEC | FD_CLOFORK)) != 0) {
((nflags & FD_CLOFORK) != 0 ? DUP_CLOFORK : 0),
if (fcntl(fd2, F_GETFD) != FD_CLOFORK)
if (fcntl(fd2, F_GETFD) != FD_CLOFORK)
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
if ((oclo_rtdata[i].crt_flags & FD_CLOFORK) == 0)
bool fail = child && (rt->crt_flags & FD_CLOFORK) != 0;
if ((c->clo_flags & FD_CLOFORK) != 0)
oclo_setfd_common(c, FD_CLOFORK);
oclo_setfd_common(c, FD_CLOFORK | FD_CLOEXEC);
oclo_fdup_common(c, FD_CLOFORK, F_DUPFD_CLOFORK);
oclo_fdup_common(c, FD_CLOFORK, F_DUP2FD_CLOFORK);
oclo_fdup_common(c, FD_CLOFORK, F_DUP3FD);
oclo_fdup_common(c, FD_CLOEXEC | FD_CLOFORK, F_DUP3FD);
if ((targ_flags & FD_CLOFORK) != 0)
oclo_dup_common(c, FD_CLOFORK, true);
oclo_dup_common(c, FD_CLOEXEC | FD_CLOFORK, true);
if ((c->clo_flags & FD_CLOFORK) != 0)
if ((c->clo_flags & FD_CLOFORK) != 0)
if ((c->clo_flags & FD_CLOFORK) != 0)
if ((targ_flags & FD_CLOFORK) != 0)
oclo_accept_common(c, FD_CLOFORK, true);
oclo_accept_common(c, FD_CLOEXEC | FD_CLOFORK, true);
if ((c->clo_flags & FD_CLOFORK) != 0)
if ((targ_flags & FD_CLOFORK) != 0)
oclo_rights_common(c, FD_CLOFORK);
oclo_rights_common(c, FD_CLOEXEC | FD_CLOFORK);
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
.clo_flags = FD_CLOFORK,
.clo_flags = FD_CLOEXEC | FD_CLOFORK,
(FD_CLOEXEC | FD_CLOFORK) + 1)) {
(val < 0 || val > (FD_CLOEXEC | FD_CLOFORK))) {
bool clofork = (exp_flags & FD_CLOFORK) != 0;
exp_flags &= ~FD_CLOFORK;
if (clofork && (flags & FD_CLOFORK) != 0) {