{
RecursorControlParser rcp; // inits
d_socket = socket(AF_INET6, SOCK_STREAM, 0);
+ if(d_socket<0) {
+ throw PDNSException("Making webserver socket: "+stringerror());
+ }
setSocketReusable(d_socket);
ComboAddress local("::", 8082);
- bind(d_socket, (struct sockaddr*)&local, local.getSocklen());
+ if(bind(d_socket, (struct sockaddr*)&local, local.getSocklen())<0) {
+ throw PDNSException("Binding webserver socket: "+stringerror());
+ }
listen(d_socket, 5);
d_fdm->addReadFD(d_socket, boost::bind(&JWebserver::newConnection, this));
if(!t_id) {
if(::arg().mustDo("experimental-json-interface")) {
L<<Logger::Warning << "Enabling JSON interface" << endl;
- new JWebserver(t_fdm);
+ try {
+ new JWebserver(t_fdm);
+ }
+ catch(PDNSException &e) {
+ L<<Logger::Error<<"Exception: "<<e.reason<<endl;
+ exit(99);
+ }
}
L<<Logger::Error<<"Enabled '"<< t_fdm->getName() << "' multiplexer"<<endl;
}