Imported Upstream version 4.0.0+dfsg1
[abartlet/samba-debian.git] / lib / util / unix_privs.c
index 9aa9a459189bcd338a60a00ac94866f59ab70dfa..3dd244dad1292f220a8c77895ae86d863103c7fb 100644 (file)
 #include "includes.h"
 #include "system/passwd.h"
 #include "../lib/util/unix_privs.h"
-
-#if defined(UID_WRAPPER)
-#if !defined(UID_WRAPPER_REPLACE) && !defined(UID_WRAPPER_NOT_REPLACE)
-#define UID_WRAPPER_REPLACE
-#include "../uid_wrapper/uid_wrapper.h"
-#endif
-#else
-#define uwrap_enabled() 0
-#endif
+#include "../lib/util/setid.h"
 
 /**
  * @file
@@ -61,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;
@@ -80,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;