summaryrefslogtreecommitdiff
path: root/debianutils/start_stop_daemon.c
diff options
context:
space:
mode:
authorDenys Vlasenko2015-10-19 04:37:19 +0200
committerDenys Vlasenko2015-10-19 04:37:19 +0200
commit3d0805e9e7c45e6c0f9fb5e587d8b4a5a5f3c74c (patch)
treed950f4ca13fcd5993a34daf36b61f719e226497a /debianutils/start_stop_daemon.c
parent526d85831e7480b9c7a3673d8dd356a438e6dd74 (diff)
downloadbusybox-3d0805e9e7c45e6c0f9fb5e587d8b4a5a5f3c74c.zip
busybox-3d0805e9e7c45e6c0f9fb5e587d8b4a5a5f3c74c.tar.gz
libbb: make parse_chown_usergroup_or_die() set unspecified uid/gid to -1
function old new delta parse_chown_usergroup_or_die 102 115 +13 chown_main 190 175 -15 start_stop_daemon_main 1043 1027 -16 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/2 up/down: 13/-31) Total: -18 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'debianutils/start_stop_daemon.c')
-rw-r--r--debianutils/start_stop_daemon.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/debianutils/start_stop_daemon.c b/debianutils/start_stop_daemon.c
index 42f1943..d7c730f 100644
--- a/debianutils/start_stop_daemon.c
+++ b/debianutils/start_stop_daemon.c
@@ -539,15 +539,15 @@ int start_stop_daemon_main(int argc UNUSED_PARAM, char **argv)
write_pidfile(pidfile);
}
if (opt & OPT_c) {
- struct bb_uidgid_t ugid = { -1, -1 };
+ struct bb_uidgid_t ugid;
parse_chown_usergroup_or_die(&ugid, chuid);
- if (ugid.uid != (uid_t) -1) {
+ if (ugid.uid != (uid_t) -1L) {
struct passwd *pw = xgetpwuid(ugid.uid);
- if (ugid.gid != (gid_t) -1)
+ if (ugid.gid != (gid_t) -1L)
pw->pw_gid = ugid.gid;
/* initgroups, setgid, setuid: */
change_identity(pw);
- } else if (ugid.gid != (gid_t) -1) {
+ } else if (ugid.gid != (gid_t) -1L) {
xsetgid(ugid.gid);
setgroups(1, &ugid.gid);
}