… | |
… | |
32 | use strict; |
32 | use strict; |
33 | |
33 | |
34 | use Socket qw(AF_INET SOCK_DGRAM SOCK_STREAM); |
34 | use Socket qw(AF_INET SOCK_DGRAM SOCK_STREAM); |
35 | |
35 | |
36 | use AnyEvent (); |
36 | use AnyEvent (); |
37 | use AnyEvent::Handle (); |
|
|
38 | use AnyEvent::Util qw(AF_INET6); |
37 | use AnyEvent::Util qw(AF_INET6); |
39 | |
38 | |
40 | our $VERSION = 4.45; |
39 | our $VERSION = 4.452; |
41 | |
40 | |
42 | our @DNS_FALLBACK = (v208.67.220.220, v208.67.222.222); |
41 | our @DNS_FALLBACK = (v208.67.220.220, v208.67.222.222); |
43 | |
42 | |
44 | =item AnyEvent::DNS::a $domain, $cb->(@addrs) |
43 | =item AnyEvent::DNS::a $domain, $cb->(@addrs) |
45 | |
44 | |
… | |
… | |
1021 | return unless $do_retry; # some other request could have invalidated us already |
1020 | return unless $do_retry; # some other request could have invalidated us already |
1022 | |
1021 | |
1023 | my ($fh) = @_ |
1022 | my ($fh) = @_ |
1024 | or return &$do_retry; |
1023 | or return &$do_retry; |
1025 | |
1024 | |
|
|
1025 | require AnyEvent::Handle; |
|
|
1026 | |
1026 | my $handle; $handle = new AnyEvent::Handle |
1027 | my $handle; $handle = new AnyEvent::Handle |
1027 | fh => $fh, |
1028 | fh => $fh, |
1028 | timeout => $timeout, |
1029 | timeout => $timeout, |
1029 | on_error => sub { |
1030 | on_error => sub { |
1030 | undef $handle; |
1031 | undef $handle; |
… | |
… | |
1283 | if (@rr) { |
1284 | if (@rr) { |
1284 | $depth-- |
1285 | $depth-- |
1285 | or return $do_search->(); # cname chain too long |
1286 | or return $do_search->(); # cname chain too long |
1286 | |
1287 | |
1287 | $cname = 1; |
1288 | $cname = 1; |
1288 | $name = $rr[0][3]; |
1289 | $name = lc $rr[0][3]; |
1289 | |
1290 | |
1290 | } elsif ($cname) { |
1291 | } elsif ($cname) { |
1291 | # follow the cname |
1292 | # follow the cname |
1292 | return $do_req->(); |
1293 | return $do_req->(); |
1293 | |
1294 | |