From: Andreas Schneider Date: Fri, 30 Oct 2015 12:39:30 +0000 (+0100) Subject: uwrap: Move the EINVAL check down in seteuid() X-Git-Tag: talloc-2.1.5~7 X-Git-Url: http://git.samba.org/samba.git/?a=commitdiff_plain;h=2232db817336787c520ad32a1d3179a628d53e06;p=nivanova%2Fsamba-autobuild%2F.git uwrap: Move the EINVAL check down in seteuid() Signed-off-by: Andreas Schneider Reviewed-by: Stefan Metzmacher --- diff --git a/lib/uid_wrapper/uid_wrapper.c b/lib/uid_wrapper/uid_wrapper.c index e0d84beb7ea..dd999ffc114 100644 --- a/lib/uid_wrapper/uid_wrapper.c +++ b/lib/uid_wrapper/uid_wrapper.c @@ -1293,15 +1293,16 @@ int setuid(uid_t uid) #ifdef HAVE_SETEUID int seteuid(uid_t euid) { + if (!uid_wrapper_enabled()) { + return libc_seteuid(euid); + } + + /* On FreeBSD the uid_t -1 is set and doesn't produce and error */ if (euid == (uid_t)-1) { errno = EINVAL; return -1; } - if (!uid_wrapper_enabled()) { - return libc_seteuid(euid); - } - uwrap_init(); return uwrap_setresuid(-1, euid, -1); }