diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-01-08 20:27:22 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-01-08 20:27:22 +0000 |
commit | 1ea88b71319754848162eef19d344c74097b90b1 (patch) | |
tree | 1ac30a309f22a72cd5059ea1648e00abb4fd0b26 /asterisk.c | |
parent | 03bbbd63f19740c045c23131fad6210a47a0c6a9 (diff) |
you need to setgid in addition to initgroups...
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7869 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'asterisk.c')
-rw-r--r-- | asterisk.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/asterisk.c b/asterisk.c index 21136ddb5..3563b41b2 100644 --- a/asterisk.c +++ b/asterisk.c @@ -2171,7 +2171,11 @@ int main(int argc, char *argv[]) ast_log(LOG_WARNING, "No such user '%s'!\n", runuser); exit(1); } - if (!ast_strlen_zero(rungroup)) { + if (!rungroup) { + if (setgid(pw->pw_gid)) { + ast_log(LOG_WARNING, "Unable to setgid to %d!\n", pw->pw_gid); + exit(1); + } if (initgroups(pw->pw_name, pw->pw_gid)) { ast_log(LOG_WARNING, "Unable to init groups for '%s'\n", runuser); exit(1); |