summaryrefslogtreecommitdiff
path: root/lib/write-any-file.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2012-06-26 16:46:25 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2012-06-26 16:46:51 -0700
commit652baf7debde3d02e8f3b75f2aaaefd0eec6bce6 (patch)
treec73ae281d085c900a1e349cd3efd5373f372ea7e /lib/write-any-file.c
parentd4903bb0efac5e399b785c71367d8cda3fb539ab (diff)
downloadgnulib-652baf7debde3d02e8f3b75f2aaaefd0eec6bce6.tar.gz
root-uid: new module
This is for portability to Tandem's NonStop Kernel. * lib/root-uid.h, modules/root-uid: New files. * lib/euidaccess.c, lib/pt_chown.c, lib/unlinkdir.c: * lib/write-any-file.c, tests/test-sethostname2.c: Include "root-uid.h". * lib/euidaccess.c (euidaccess): * lib/pt_chown.c (main): * lib/unlinkdir.c (cannot_unlink_dir): * lib/write-any-file.c (can_write_any_file): * m4/mknod.m4 (gl_FUNC_MKNOD): * tests/test-sethostname2.c (geteuid, main): Don't assume ROOT_UID == 0. * modules/euidaccess (Depends-on): * modules/pt_chown (Depends-on): * modules/sethostname-tests (Depends-on): * modules/unlinkdir (Depends-on): * modules/write-any-file (Depends-on): Add root-uid.
Diffstat (limited to 'lib/write-any-file.c')
-rw-r--r--lib/write-any-file.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/write-any-file.c b/lib/write-any-file.c
index 742c257038..f6b574df63 100644
--- a/lib/write-any-file.c
+++ b/lib/write-any-file.c
@@ -21,6 +21,7 @@
#include "write-any-file.h"
#include "priv-set.h"
+#include "root-uid.h"
#include <unistd.h>
@@ -40,7 +41,7 @@ can_write_any_file (void)
can = (priv_set_ismember (PRIV_FILE_DAC_WRITE) == 1);
#else
/* In traditional Unix, only root can unlink directories. */
- can = (geteuid () == 0);
+ can = (geteuid () == ROOT_UID);
#endif
can_write = can;
initialized = true;