Yes, setuid() has a behaviour that varies a bit from system to system.
Moreover, it has varied in the history of Linux. The manpage may have
been correct when it was written, but it is not today, and I just
fixed it.
ERRORS
EPERM The user is not the super-user, and uid does not
match the real or saved user ID of the calling pro
cess.
Our norm is the coming POSIX standard, roughly the Austin 7 draft,
which again is based on the SUSv2. According to this, the current
kernel code is correct here.
Andries
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/