On 06.11.2016 18:26, Nicolas Joly wrote: > On Sun, Nov 06, 2016 at 11:56:31PM +0700, Robert Elz wrote: >> Date: Sun, 6 Nov 2016 16:24:16 +0000 >> From: "Kamil Rytarowski" <kamil%netbsd.org@localhost> >> Message-ID: <20161106162416.95D77FBA6%cvs.NetBSD.org@localhost> >> >> | assert_pid1 asserts that non-root user cannot attach to PID 1 as it is the >> | /dev/init process. This tests is skipped if run as root. >> >> There's no need to skip it, just >> >> child=fork(); /* err if -1 */ >> if (child == 0) { >> (void)setuid(10); >> if (ptrace(.....) < 0) >> _exit(errno); >> else >> _exit(0); >> } >> waitpid(child, &status, 0); >> /* and check status */ >> >> If you're root, the setuid() works, and the child isn't root any more. >> if you happened to be uid(10), the setuid() is a no-op, if you were some >> other user the setuid() fails, but you don't care. > > Or use dedicated ATF properties : > > atf_tc_set_md_var(tc, "require.user", "unprivileged"); > > Documented in atf-test-case(4). > It worked, thanks!
Attachment:
signature.asc
Description: OpenPGP digital signature