diff options
author | Darren Tucker <dtucker@zip.com.au> | 2003-09-22 12:55:20 +1000 |
---|---|---|
committer | Darren Tucker <dtucker@zip.com.au> | 2003-09-22 12:55:20 +1000 |
commit | 8ceeb269937e6956d6b97948d9d8f717d17d3eaf (patch) | |
tree | f385bfb52aaa630d8140357a18c658a9438fc054 /uidswap.c | |
parent | 7283b27e08aeed2c3c3194e7fed788ac1e8a15eb (diff) |
- (dtucker) [uidswap.c] Don't test restoration of uid on Cygwin since the
OS does not support permanently dropping privileges. Patch from
vinschen at redhat.com.
Diffstat (limited to 'uidswap.c')
-rw-r--r-- | uidswap.c | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -191,10 +191,12 @@ permanently_set_uid(struct passwd *pw) | |||
191 | (u_int)pw->pw_gid); | 191 | (u_int)pw->pw_gid); |
192 | } | 192 | } |
193 | 193 | ||
194 | #ifndef HAVE_CYGWIN | ||
194 | /* Try restoration of UID if changed (test clearing of saved uid) */ | 195 | /* Try restoration of UID if changed (test clearing of saved uid) */ |
195 | if (old_uid != pw->pw_uid && | 196 | if (old_uid != pw->pw_uid && |
196 | (setuid(old_uid) != -1 || seteuid(old_uid) != -1)) | 197 | (setuid(old_uid) != -1 || seteuid(old_uid) != -1)) |
197 | fatal("%s: was able to restore old [e]uid", __func__); | 198 | fatal("%s: was able to restore old [e]uid", __func__); |
199 | #endif | ||
198 | 200 | ||
199 | /* Verify UID drop was successful */ | 201 | /* Verify UID drop was successful */ |
200 | if (getuid() != pw->pw_uid || geteuid() != pw->pw_uid) { | 202 | if (getuid() != pw->pw_uid || geteuid() != pw->pw_uid) { |