From: Bert Hubert Date: Sun, 13 Jun 2010 12:43:16 +0000 (+0000) Subject: interim commit to merge xs changes X-Git-Tag: rec-3.3~69 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9cb477340c6c6986ef1506b08ab4dd4a1f627c49;p=pdns interim commit to merge xs changes git-svn-id: svn://svn.powerdns.com/pdns/trunk/pdns@1633 d19b8d6e-7fed-0310-83ef-9ca221ded41b --- diff --git a/pdns/dnsbulktest.cc b/pdns/dnsbulktest.cc index 53cead789..80cf4dba5 100644 --- a/pdns/dnsbulktest.cc +++ b/pdns/dnsbulktest.cc @@ -22,6 +22,7 @@ struct SendReceive int d_socket; uint16_t d_id; + SendReceive(const std::string& remoteAddr, uint16_t port) { d_socket = socket(AF_INET, SOCK_DGRAM, 0); @@ -30,7 +31,8 @@ struct SendReceive ComboAddress remote(remoteAddr, port); connect(d_socket, (struct sockaddr*)&remote, remote.getSocklen()); - d_oks = d_errors = d_nodatas = d_nxdomains = 0; + d_oks = d_errors = d_nodatas = d_nxdomains = d_unknowns = 0; + d_receiveds = d_receiveerrors = 0; } ~SendReceive() @@ -60,10 +62,15 @@ struct SendReceive { if(waitForData(d_socket, 0, 500000) > 0) { char buf[512]; - + int len = recv(d_socket, buf, sizeof(buf), 0); - if(len < 0) + if(len < 0) { + d_receiveerrors++; return 0; + } + else { + d_receiveds++; + } // parse packet, set 'id', fill out 'ip' MOADNSParser mdp(string(buf, len)); @@ -74,7 +81,7 @@ struct SendReceive for(MOADNSParser::answers_t::const_iterator i=mdp.d_answers.begin(); i!=mdp.d_answers.end(); ++i) { if(i->first.d_place == 1 && i->first.d_type == QType::A) dr.ips.push_back(ComboAddress(i->first.d_content->getZoneRepresentation())); - if(i->first.d_place == 3 && i->first.d_type == QType::SOA) { + if(i->first.d_place == 2 && i->first.d_type == QType::SOA) { dr.seenauthsoa = 1; } cout<first.d_place-1<<"\t"<first.d_label<<"\tIN\t"<first.d_type); @@ -105,8 +112,13 @@ struct SendReceive d_nodatas++; else if(!dr.ips.empty()) d_oks++; + else { + cout<<"UNKNOWN!! ^^"<, SendReceive> inflighter(domains, sr); inflighter.d_maxInFlight = 1000; - inflighter.d_timeoutSeconds = 5; + inflighter.d_timeoutSeconds = 15; string line; pair split; @@ -148,6 +160,11 @@ int main(int argc, char** argv) } } cerr<<"Results: "<