Fix the resesuid() shim implementation for NetBSD

The shim implementation of setresuid() was wrong - there was a copy and
paste error and it was calling setresgid() instead.  This only affects
NetBSD because Linux, FreeBSD and OpenBSD have setresuid() and
setresgid() implementation available from the system library.

(cherry picked from commit 5567407a82)
This commit is contained in:
Ondřej Surý
2024-08-20 09:14:31 +02:00
parent 97e95a0869
commit 6d59dcf167

View File

@@ -295,11 +295,11 @@ setresuid(uid_t ruid, uid_t euid, uid_t suid) {
REQUIRE(ruid == (uid_t)-1);
REQUIRE(suid == (uid_t)-1);
#if HAVE_SETREGID
return (setregid(ruid, euid));
#else /* HAVE_SETREGID */
return (setegid(euid));
#endif /* HAVE_SETREGID */
#if HAVE_SETREUID
return (setreuid(ruid, euid));
#else /* HAVE_SETREUID */
return (seteuid(euid));
#endif /* HAVE_SETREUID */
}
#endif /* !HAVE_SETRESUID */