summaryrefslogtreecommitdiffabout
authorMichael Krelin <hacker@klever.net>2006-11-08 14:16:31 (UTC)
committer Michael Krelin <hacker@klever.net>2006-11-08 14:16:31 (UTC)
commit4148b7ad68f2b5bf83d637bdc5ebbb9f0d2aa869 (patch) (side-by-side diff)
tree1816e76710d722b77ac99f8ca8719f0208b31088
parentf3915982902595f324ef27dd67589f5e950a046b (diff)
downloaddudki-4148b7ad68f2b5bf83d637bdc5ebbb9f0d2aa869.zip
dudki-4148b7ad68f2b5bf83d637bdc5ebbb9f0d2aa869.tar.gz
dudki-4148b7ad68f2b5bf83d637bdc5ebbb9f0d2aa869.tar.bz2
fixed a bug for setting up unspecified group,
bumped version and years, added NEWS item
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--COPYING2
-rw-r--r--NEWS.xml3
-rw-r--r--configure.ac2
-rw-r--r--src/process.cc14
4 files changed, 13 insertions, 8 deletions
diff --git a/COPYING b/COPYING
index 873f196..8ceaf0a 100644
--- a/COPYING
+++ b/COPYING
@@ -1,4 +1,4 @@
-Copyright (c) 2004 Klever Group (http://www.klever.net/)
+Copyright (c) 2004-2006 Klever Group (http://www.klever.net/)
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
diff --git a/NEWS.xml b/NEWS.xml
index f9be239..2041a58 100644
--- a/NEWS.xml
+++ b/NEWS.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="us-ascii"?>
<news>
+ <version version="0.2.2" date="November 8th, 2006">
+ <ni>Do not try to set unspecified group</ni>
+ </version>
<version version="0.2.1" date="August 1st, 2004">
<ni>do not act -e when doing -r</ni>
<ni>proper handling of <kbd>ProcessName</kbd> on <kbd>FreeBSD</kbd></ni>
diff --git a/configure.ac b/configure.ac
index eed8e97..a0e01e4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,4 +1,4 @@
-AC_INIT([dudki], [0.2.1], [dudki-bugs@klever.net])
+AC_INIT([dudki], [0.2.2], [dudki-bugs@klever.net])
AC_CONFIG_SRCDIR([src/dudki.cc])
AC_CONFIG_HEADER([config.h])
AM_INIT_AUTOMAKE([dist-bzip2])
diff --git a/src/process.cc b/src/process.cc
index 96c874f..6d3b2a2 100644
--- a/src/process.cc
+++ b/src/process.cc
@@ -95,12 +95,14 @@ void process::launch(const string& id,configuration& config) {
// child
try {
setsid();
- if(user.empty()) {
- if((getgid()!=gid) && setgid(gid))
- throw runtime_error(string(__PRETTY_FUNCTION__)+": failed to setgid()");
- }else{
- if(initgroups(user.c_str(),gid))
- throw runtime_error(string(__PRETTY_FUNCTION__)+": failed to initgroups()");
+ if(!group.empty()) {
+ if(user.empty()) {
+ if((getgid()!=gid) && setgid(gid))
+ throw runtime_error(string(__PRETTY_FUNCTION__)+": failed to setgid()");
+ }else{
+ if(initgroups(user.c_str(),gid))
+ throw runtime_error(string(__PRETTY_FUNCTION__)+": failed to initgroups()");
+ }
}
if(!chroot.empty()) {
if(::chroot(chroot.c_str()))