Module: sems
Branch: master
Commit: 726ad0b393db3518b95d6f6b7cc1dad51221cbb9
URL:    
http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=726ad0b393db3518b95d6f6b7cc1dad51221cbb9

Author: Stefan Sayer <[email protected]>
Committer: Stefan Sayer <[email protected]>
Date:   Sat Jun 19 17:14:23 2010 +0200

fix UID and GID parameters processing

fixes a segfault when process UID or GID was configured

---

 core/sems.cpp |   13 ++++++-------
 1 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/core/sems.cpp b/core/sems.cpp
index e07b1b8..8c1fe8f 100644
--- a/core/sems.cpp
+++ b/core/sems.cpp
@@ -389,7 +389,6 @@ int main(int argc, char* argv[])
 {
   int success = false;
   std::map<char,string> args;
-  std::map<char,string>::iterator cfg_arg;
 
   progname = strrchr(argv[0], '/');
   progname = (progname == NULL ? argv[0] : progname + 1);
@@ -480,14 +479,14 @@ int main(int argc, char* argv[])
   if(AmConfig::DaemonMode){
     if(!AmConfig::DaemonGid.empty()){
       unsigned int gid;
-      if(str2i(cfg_arg->second, gid)){
-       struct group* grnam = getgrnam(cfg_arg->second.c_str());
+      if(str2i(AmConfig::DaemonGid, gid)){
+       struct group* grnam = getgrnam(AmConfig::DaemonGid.c_str());
        if(grnam != NULL){
          gid = grnam->gr_gid;
        }
        else{
          ERROR("Cannot not find group '%s' in the group database.\n",
-               cfg_arg->second.c_str());
+               AmConfig::DaemonGid.c_str());
          goto error;
        }
       }
@@ -501,14 +500,14 @@ int main(int argc, char* argv[])
 
     if(!AmConfig::DaemonUid.empty()){
       unsigned int uid;
-      if(str2i(cfg_arg->second, uid)){
-       struct passwd* pwnam = getpwnam(cfg_arg->second.c_str());
+      if(str2i(AmConfig::DaemonUid, uid)){
+       struct passwd* pwnam = getpwnam(AmConfig::DaemonUid.c_str());
        if(pwnam != NULL){
          uid = pwnam->pw_uid;
        }
        else{
          ERROR("Cannot not find user '%s' in the user database.\n",
-               cfg_arg->second.c_str());
+               AmConfig::DaemonUid.c_str());
          goto error;
        }
       }

_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to