]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Revert "Rec 8020 docs fix" 8519/head
authorOtto Moerbeek <otto.moerbeek@open-xchange.com>
Mon, 11 Nov 2019 11:18:02 +0000 (12:18 +0100)
committerGitHub <noreply@github.com>
Mon, 11 Nov 2019 11:18:02 +0000 (12:18 +0100)
pdns/pdns_recursor.cc
pdns/rec_channel.cc
pdns/rec_channel.hh
pdns/rec_channel_rec.cc
pdns/recursordist/docs/settings.rst

index c6200a1e5f674d29c2abd1c2e24353f3ffc7f8c4..d36625e4d9d6686cbbb96e3cc0a20d4e82117a7d 100644 (file)
@@ -4279,8 +4279,6 @@ static int serviceMain(int argc, char*argv[])
     infos.isListener = true;
     infos.isWorker = true;
     recursorThread(currentThreadId++, "worker");
-    
-    handlerInfos.thread.join();
   }
   else {
 
@@ -4315,9 +4313,7 @@ static int serviceMain(int argc, char*argv[])
     infos.isHandler = true;
     infos.thread = std::thread(recursorThread, 0, "web+stat");
 
-    for (auto & ti : s_threadInfos) {
-      ti.thread.join();
-    }
+    s_threadInfos.at(0).thread.join();
   }
   return 0;
 }
@@ -4452,8 +4448,7 @@ try
   time_t carbonInterval=::arg().asNum("carbon-interval");
   time_t luaMaintenanceInterval=::arg().asNum("lua-maintenance-interval");
   counter.store(0); // used to periodically execute certain tasks
-
-  while (!RecursorControlChannel::stop) {
+  for(;;) {
     while(MT->schedule(&g_now)); // MTasker letting the mthreads do their thing
 
     if(!(counter%500)) {
@@ -4521,7 +4516,6 @@ try
       }
     }
   }
-  return 0;
 }
 catch(PDNSException &ae) {
   g_log<<Logger::Error<<"Exception: "<<ae.reason<<endl;
index 65afbe092d8a61b49e61f64044213268baf1ec8c..0884afaa63cfeed350c879209f0d29fdd45ed6bd 100644 (file)
@@ -17,8 +17,6 @@
 
 #include "namespaces.hh"
 
-volatile sig_atomic_t RecursorControlChannel::stop;
-
 RecursorControlChannel::RecursorControlChannel()
 {
   d_fd=-1;
index 732bd81eacd0ae1514971a710e00364cd6eb5516..ee653752ba610a4eae99d81d549e60264a5f029a 100644 (file)
@@ -27,7 +27,6 @@
 #include <vector>
 #include <inttypes.h>
 #include <sys/un.h>
-#include <signal.h>
 #include <pthread.h>
 #include "iputils.hh"
 #include "dnsname.hh"
@@ -54,7 +53,6 @@ public:
   std::string recv(std::string* remote=0, unsigned int timeout=5);
 
   int d_fd;
-  static volatile sig_atomic_t stop;
 private:
   struct sockaddr_un d_local;
 };
index a294e62ac7a7d8dd820e0c4bd0596552f64b5eb6..a86500ba122f29e862b4681b04ed0fe25be23ed4 100644 (file)
@@ -1165,16 +1165,15 @@ void doExitGeneric(bool nicely)
 {
   g_log<<Logger::Error<<"Exiting on user request"<<endl;
   extern RecursorControlChannel s_rcc;
-  s_rcc.~RecursorControlChannel();
+  s_rcc.~RecursorControlChannel(); 
 
   extern string s_pidfname;
-  if(!s_pidfname.empty())
+  if(!s_pidfname.empty()) 
     unlink(s_pidfname.c_str()); // we can at least try..
-  if(nicely) {
-    RecursorControlChannel::stop = 1;
-  } else {
+  if(nicely)
+    exit(1);
+  else
     _exit(1);
-  }
 }
 
 void doExit()
index de27b299886e484f4bade2f4dc44feee151bb000..ab66bf0fbb30f9c7c0c348072d2d5b771a869588 100644 (file)
@@ -1150,16 +1150,16 @@ matching ``*.foo.example.net`` will be answered with NXDOMAIN directly
 without consulting authoritative servers.
 
 no
-^^
+~~
 No :rfc:`8020` processing is done.
 
 dnssec
-^^^^^^
+~~~~~~
 :rfc:`8020` processing is only done using cached NXDOMAIN records that are
 DNSSEC validated.
 
 yes
-^^^
+~~~
 :rfc:`8020` processing is done using any non-Bogus NXDOMAIN record
 available in the cache.