Changeset 1629
- Timestamp:
- 06/10/10 08:53:09 (3 years ago)
- Location:
- trunk/pdns/pdns
- Files:
-
- 5 modified
-
common_startup.cc (modified) (2 diffs)
-
webserver.cc (modified) (3 diffs)
-
webserver.hh (modified) (2 diffs)
-
ws.cc (modified) (2 diffs)
-
ws.hh (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/pdns/pdns/common_startup.cc
r1606 r1629 305 305 } 306 306 #endif 307 308 Utility::dropPrivs(newuid, newgid);307 StatWebServer sws; 308 Utility::dropPrivs(newuid, newgid); 309 309 310 310 if(::arg().mustDo("recursor")){ … … 317 317 318 318 pthread_t qtid; 319 StatWebServer sws; 319 320 320 321 321 if(::arg().mustDo("webserver")) -
trunk/pdns/pdns/webserver.cc
r1472 r1629 1 1 /* 2 2 PowerDNS Versatile Database Driven Nameserver 3 Copyright (C) 2002-20 07PowerDNS.COM BV3 Copyright (C) 2002-2010 PowerDNS.COM BV 4 4 5 5 This program is free software; you can redistribute it and/or modify … … 191 191 d_port=port; 192 192 d_password=password; 193 d_server = 0; // on exception, this class becomes a NOOP later on 194 try { 195 d_server = new Server(d_port, d_listenaddress); 196 } 197 catch(SessionException &e) { 198 L<<Logger::Error<<"Fatal error in webserver: "<<e.reason<<endl; 199 } 193 200 } 194 201 195 202 void WebServer::go() 196 203 { 204 if(!d_server) 205 return; 197 206 try { 198 Server *s=new Server(d_port, d_listenaddress);199 200 207 Session *client; 201 208 pthread_t tid; … … 203 210 L<<Logger::Error<<"Launched webserver on "<<d_listenaddress<<":"<<d_port<<endl; 204 211 205 while((client= s->accept())) {212 while((client=d_server->accept())) { 206 213 pthread_create(&tid, 0 , &serveConnection, (void *)client); 207 214 } -
trunk/pdns/pdns/webserver.hh
r681 r1629 24 24 25 25 using namespace std; 26 class Server; 26 27 27 28 class WebServer … … 42 43 static void *d_that; 43 44 static string d_password; 45 Server* d_server; 44 46 }; 45 47 #endif /* WEBSERVER_HH */ -
trunk/pdns/pdns/ws.cc
r1472 r1629 30 30 { 31 31 d_start=time(0); 32 d_min10=d_min5=d_min1=0; 32 d_min10=d_min5=d_min1=0; 33 d_ws = new WebServer(arg()["webserver-address"], arg().asNum("webserver-port"),arg()["webserver-password"]); 33 34 } 34 35 … … 224 225 { 225 226 try { 226 WebServer ws(arg()["webserver-address"], arg().asNum("webserver-port"),arg()["webserver-password"]);227 ws.setCaller(this);228 ws.registerHandler("",&indexfunction);229 ws.go();227 228 d_ws->setCaller(this); 229 d_ws->registerHandler("",&indexfunction); 230 d_ws->go(); 230 231 } 231 232 catch(...) { -
trunk/pdns/pdns/ws.hh
r1343 r1629 76 76 }; 77 77 78 class WebServer; 78 79 79 80 class StatWebServer … … 98 99 Ewma d_queries, d_cachehits, d_cachemisses; 99 100 Ewma d_qcachehits, d_qcachemisses; 101 WebServer *d_ws; 100 102 }; 101 103