Skip Menu |

Preferred bug tracker

Please visit the preferred bug tracker to report your issue.

This queue is for tickets about the Net-Whois-Raw CPAN distribution.

Report information
The Basics
Id: 44667
Status: resolved
Priority: 0/
Queue: Net-Whois-Raw

People
Owner: despair [...] cpan.org
Requestors: SHV [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: 1.57
Fixed in: (no value)



Subject: Domain status in Net::Whois::Raw::Common
Patch for Net::Whois::Raw::Common is in the attached files. Using the cache the first request for module gave undef if $ Net::Whois::Raw::CHECK_FAIL = 2, but the second - an empty string from the cache. Employed to obtain the free domain. In addition, the cache is written not only free domains, but also those in which the response was just an empty string (it is a bug in ripn). I made corrections for using with some regimes. Perhaps for the other modes you will have to fix it. ____ По Русски: Во вложенном файле предоставлены исправления модуля Net::Whois::Raw::Common. Модуль при использовании кэша первым запросом отдавал undef при $Net::Whois::Raw::CHECK_FAIL = 2, а вторым - пустую строку из кэша. Занятый домен получался свободный. К тому же в кэш писались не только свободные домены, но и те, в ответе которых была просто пустая строка (бывает такой глюк у ripn). Исправления внес под используемые мной режимы. Возможно, для других режимов тоже надо будет его исправить.
Subject: Net-Whois-Raw.patch
diff Net/Whois-1.66/Raw/Common.pm Net/Whois/Raw/Common.pm 28d27 < $result->[$level]->{text} = undef if !$result->[$level]->{text} and $Net::Whois::Raw::CHECK_FAIL; 45d43 < next if defined $res->{text} and !$res->{text}; Only in Net/Whois-1.66/Raw: Net-Whois-Raw.path
Пожалуйста, пришлите патч с ключом -u.
В аттаче Пнд. Мар. 30 07:27:37 2009, DESPAIR писал: Show quoted text
> Пожалуйста, пришлите патч с ключом -u.
--- Common_v1.66.pm Thu Mar 26 07:53:30 2009 +++ Common.pm Mon Mar 30 14:27:50 2009 @@ -25,6 +25,7 @@ sub get_from_cache { $result->[$level]->{srv} = <CACHE>; chomp $result->[$level]->{srv}; $result->[$level]->{text} = join "", <CACHE>; + $result->[$level]->{text} = undef if !$result->[$level]->{text} and $Net::Whois::Raw::CHECK_FAIL; $level++; } } @@ -41,6 +42,7 @@ sub write_to_cache { my $level = 0; foreach my $res ( @{$result} ) { + next if defined $res->{text} and !$res->{text}; my $postfix = sprintf("%02d", $level); if ( open( CACHE, ">$cache_dir/$query.$postfix" ) ) { print CACHE $res->{srv} ? $res->{srv} :
Fixed in 1.67.