return 0;
}
+_PUBLIC_ int uwrap_setregid(gid_t rgid, gid_t egid)
+{
+ uwrap_init();
+ if (!uwrap.enabled) {
+ return setregid(rgid, egid);
+ }
+ /* assume for now that the ruid stays as root */
+ uwrap.egid = egid;
+ return 0;
+}
+
_PUBLIC_ uid_t uwrap_getegid(void)
{
uwrap_init();
int uwrap_setreuid(uid_t reuid, uid_t euid);
uid_t uwrap_geteuid(void);
int uwrap_setegid(gid_t egid);
+int uwrap_setregid(gid_t egid);
uid_t uwrap_getegid(void);
int uwrap_setgroups(size_t size, const gid_t *list);
int uwrap_getgroups(int size, gid_t *list);
#endif
#define setegid uwrap_setegid
+#ifdef setregid
+#undef setregid
+#endif
+#define setregid uwrap_setegid
+
#ifdef geteuid
#undef geteuid
#endif