Date: Sun, 19 Mar 2017 19:18:19 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 217924] dhclient: Fails to fork into the background with kern.trap_enotcap=1 Message-ID: <bug-217924-8@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D217924 Bug ID: 217924 Summary: dhclient: Fails to fork into the background with kern.trap_enotcap=3D1 Product: Base System Version: CURRENT Hardware: Any OS: Any Status: New Keywords: patch Severity: Affects Only Me Priority: --- Component: bin Assignee: freebsd-bugs@FreeBSD.org Reporter: tobik@freebsd.org Created attachment 180966 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D180966&action= =3Dedit dhclient.diff With the sysctl kern.trap_enotcap=3D1, dhclient fails to fork into the background and dies. truss excerpt: 4933: <new process> 4933: setsid() =3D 4933 (0x1345) 4933: sigaction(SIGHUP,{ SIG_DFL 0x0 ss_t },0x0) =3D 0 (0x0) 4933: open("/dev/null",O_RDWR,00) ERR#94 'Not permitted in capability mode' 4933: SIGNAL 5 (SIGTRAP) There is an older comment in dhclient.c that says that it is expected that daemon(3) will fail to open /dev/null in a chroot. The is doubly true when in capability mode. dhclient replicates the behavior of daemon(3) in dup'ing /dev/null (with a previously opened fd) anyway, so why isn't noclose set too? This way the attempt to open /dev/null again can be avoided. --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-217924-8>