]> granicus.if.org Git - pdns/commitdiff
switch chown and chmod on pdns controlsocket to make selinux happy, thanks Sander...
authorPeter van Dijk <peter.van.dijk@netherlabs.nl>
Wed, 5 Dec 2012 10:59:55 +0000 (10:59 +0000)
committerPeter van Dijk <peter.van.dijk@netherlabs.nl>
Wed, 5 Dec 2012 10:59:55 +0000 (10:59 +0000)
git-svn-id: svn://svn.powerdns.com/pdns/trunk/pdns@2965 d19b8d6e-7fed-0310-83ef-9ca221ded41b

pdns/dynlistener.cc

index 28f9cebfa6e9a6a8a43e521922398722c01d2bbe..c514ee6fb8e378e01c48113d474599b33e14736b 100644 (file)
@@ -93,10 +93,10 @@ void DynListener::listenOnUnixDomain(const string& fname)
   createSocketAndBind(AF_UNIX, (struct sockaddr*)& local, sizeof(local));
   d_socketname=fname;
   if(!arg()["setgid"].empty()) {
-    if(chown(fname.c_str(),static_cast<uid_t>(-1),Utility::makeGidNumeric(arg()["setgid"]))<0)
-      L<<Logger::Error<<"Unable to change group ownership of controlsocket: "<<strerror(errno)<<endl;
     if(chmod(fname.c_str(),0660)<0)
       L<<Logger::Error<<"Unable to change group access mode of controlsocket: "<<strerror(errno)<<endl;
+    if(chown(fname.c_str(),static_cast<uid_t>(-1),Utility::makeGidNumeric(arg()["setgid"]))<0)
+      L<<Logger::Error<<"Unable to change group ownership of controlsocket: "<<strerror(errno)<<endl;
   }
   
   listen(d_s, 10);