summaryrefslogtreecommitdiff
path: root/lib/system.h
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2012-12-18 20:34:12 -0800
committerPaul Eggert <eggert@cs.ucla.edu>2012-12-18 20:34:46 -0800
commit0b3d84a0ee95d07f819a39de596ecb6578fd8910 (patch)
tree37a12641fde9d576e8d3555eba12c6c995d73122 /lib/system.h
parent23965e151e3c86367fe23d93613f3686a6104763 (diff)
downloadpaxutils-0b3d84a0ee95d07f819a39de596ecb6578fd8910.tar.gz
maint: remove lint uncovered by tar's new use of manywarnings
* lib/rmt.h, lib/rtapelib.c (rmt_command, rmt_dev_name__): Now pointer to const. * lib/rtapelib.c (rmt_open__): Check return codes from dup2, close. Don't mishandle the case when 'pipe' allocates file descriptor 0. * lib/system.h (sys_reset_uid_gid): Check return codes from setuid, setgid. * tests/genfile.c (mkhole, exec_checkpoint): Check return code from ftruncate. (mkhole): Don't call fseek twice. (exec_checkpoint): Check return code from system. (exec_command): Check return code from pipe.
Diffstat (limited to 'lib/system.h')
-rw-r--r--lib/system.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/system.h b/lib/system.h
index 2deb585..ef46267 100644
--- a/lib/system.h
+++ b/lib/system.h
@@ -471,8 +471,11 @@ char *getenv ();
# define SET_BINARY_MODE(arc)
# define ERRNO_IS_EACCES 0
# define TTY_NAME "/dev/tty"
-# define sys_reset_uid_gid() \
- do { setuid (getuid ()); setgid (getgid ()); } while (0)
+# define sys_reset_uid_gid() \
+ do { \
+ if (! (setuid (getuid ()) == 0 && setgid (getgid ()) == 0)) \
+ abort (); \
+ } while (0)
#endif
#if XENIX