summaryrefslogtreecommitdiffstats
path: root/avahi-daemon
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2005-10-23 23:13:07 +0000
committerLennart Poettering <lennart@poettering.net>2005-10-23 23:13:07 +0000
commit7b110c34af97999cc42fda2f61a0ae38fc289951 (patch)
treebf0cd21f9ec999b5b40ab5c75f20d1c52fb856df /avahi-daemon
parent7d45167a88dceefc521bf94a618f29bfc1886932 (diff)
use seteuid() instead of setreuid(), since the latter seems to be broken on macosx
git-svn-id: file:///home/lennart/svn/public/avahi/trunk@850 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'avahi-daemon')
-rw-r--r--avahi-daemon/main.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/avahi-daemon/main.c b/avahi-daemon/main.c
index 31bca77..7bae459 100644
--- a/avahi-daemon/main.c
+++ b/avahi-daemon/main.c
@@ -727,11 +727,13 @@ static int drop_root(void) {
#if defined(HAVE_SETRESGID)
r = setresgid(gr->gr_gid, gr->gr_gid, gr->gr_gid);
+#elif defined(HAVE_SETEGID)
+ if ((r = setgid(gr->gr_gid)) >= 0)
+ r = setegid(gr->gr_gid);
#elif defined(HAVE_SETREGID)
r = setregid(gr->gr_gid, gr->gr_gid);
#else
- if ((r = setgid(gr->gr_gid)) >= 0)
- r = setegid(gr->gr_gid);
+#error "No API to drop priviliges"
#endif
if (r < 0) {
@@ -741,11 +743,13 @@ static int drop_root(void) {
#if defined(HAVE_SETRESUID)
r = setresuid(pw->pw_uid, pw->pw_uid, pw->pw_uid);
+#elif defined(HAVE_SETEUID)
+ if ((r = setuid(pw->pw_uid)) >= 0)
+ r = seteuid(pw->pw_uid);
#elif defined(HAVE_SETREUID)
r = setreuid(pw->pw_uid, pw->pw_uid);
#else
- if ((r = setuid(pw->pw_uid)) >= 0)
- r = seteuid(pw->pw_uid);
+#error "No API to drop priviliges"
#endif
if (r < 0) {