Changeset 609 for trunk/pdns/pdns/pdns_recursor.cc
- Timestamp:
- 03/21/06 22:39:36 (7 years ago)
- Files:
-
- 1 modified
-
trunk/pdns/pdns/pdns_recursor.cc (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/pdns/pdns/pdns_recursor.cc
r608 r609 179 179 } 180 180 181 void setReceiveBuffer(int fd, uint32_t size) 182 { 183 uint32_t psize; 184 socklen_t len; 185 getsockopt(fd, SOL_SOCKET, SO_RCVBUF, (char*)&psize, &len); 186 if (setsockopt(fd, SOL_SOCKET, SO_RCVBUF, (char*)&size, sizeof(size)) < 0 ) 187 L<<Logger::Error<<"Warning: unable to raise socket buffer size to "<<size<<": "<<strerror(errno)<<"\n"; 188 } 189 190 181 191 static void writePid(void) 182 192 { … … 345 355 346 356 uint64_t newLat=(uint64_t)(spent*1000000); 347 g_stats.avgLatencyUsec= 0.01*g_stats.avgLatencyUsec + (1-0.01)*newLat;357 g_stats.avgLatencyUsec=(1-0.0001)*g_stats.avgLatencyUsec + 0.0001*newLat; 348 358 delete dc; 349 359 } … … 371 381 if(d_clientsock<0) 372 382 throw AhuException("Making a socket for resolver: "+stringerror()); 373 383 setReceiveBuffer(d_clientsock, 250000); 374 384 struct sockaddr_in sin; 375 385 memset((char *)&sin,0, sizeof(sin)); … … 393 403 394 404 Utility::setNonBlocking(d_clientsock); 405 395 406 L<<Logger::Error<<"Sending UDP queries from "<<inet_ntoa(sin.sin_addr)<<":"<< ntohs(sin.sin_port) <<endl; 396 407 } … … 450 461 if(fd<0) 451 462 throw AhuException("Making a server socket for resolver: "+stringerror()); 452 463 setReceiveBuffer(fd, 250000); 453 464 struct sockaddr_in sin; 454 465 memset((char *)&sin,0, sizeof(sin));