Dear Graham
Barr,
Regaring Net::DNS::Resolver,
In the "send_udp" function I added a
timeout. It was possbile (unlikely, except under high loads) for the operation
to block indefinitely if the socket failed in between the call to
select and recv.
< foreach $ready
(@ready) {
< my $buf = ""; > $ready->timeout($timeout); < if ($ready->recv($buf, &Net::DNS::PACKETSZ)) { < $self->answerfrom($ready->peerhost); This change
fixed a busy DNS monitoring program that was hanging
occasionally.
- Erik Aronesty
ZoneEdit,
Inc.
|