diff options
Diffstat (limited to 'lib/uid_wrapper/uid_wrapper.c')
-rw-r--r-- | lib/uid_wrapper/uid_wrapper.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/uid_wrapper/uid_wrapper.c b/lib/uid_wrapper/uid_wrapper.c index 05d226b034..091678f27b 100644 --- a/lib/uid_wrapper/uid_wrapper.c +++ b/lib/uid_wrapper/uid_wrapper.c @@ -73,6 +73,17 @@ _PUBLIC_ int uwrap_seteuid(uid_t euid) return 0; } +_PUBLIC_ int uwrap_setreuid(uid_t ruid, uid_t euid) +{ + uwrap_init(); + if (!uwrap.enabled) { + return setreuid(ruid, euid); + } + /* assume for now that the ruid stays as root */ + uwrap.euid = euid; + return 0; +} + _PUBLIC_ uid_t uwrap_geteuid(void) { uwrap_init(); |