Replace all uses of setXX[ug]id() and setgroups with samba_setXX[ug]id() calls.
[abartlet/samba.git/.git] / lib / util / unix_privs.c
index baa54fd5584fd16b5d9f15a2b8e63cb907dbb32e..3dd244dad1292f220a8c77895ae86d863103c7fb 100644 (file)
@@ -22,6 +22,7 @@
 #include "includes.h"
 #include "system/passwd.h"
 #include "../lib/util/unix_privs.h"
+#include "../lib/util/setid.h"
 
 /**
  * @file
@@ -52,7 +53,7 @@ struct saved_state {
 static int privileges_destructor(struct saved_state *s)
 {
        if (geteuid() != s->uid &&
-           seteuid(s->uid) != 0) {
+           samba_seteuid(s->uid) != 0) {
                smb_panic("Failed to restore privileges");
        }
        return 0;
@@ -71,7 +72,7 @@ void *root_privileges(void)
        if (!s) return NULL;
        s->uid = geteuid();
        if (s->uid != 0) {
-               seteuid(0);
+               samba_seteuid(0);
        }
        talloc_set_destructor(s, privileges_destructor);
        return s;