Доброго времени суток.. при заказе услуги нужно опросить ns-сервера на наличие заданного доменного имени в них.. прерывать текущий опрос при таймауте в 5 секунд.. делаю через Net::DNS::Resolver @ns - список из трех серверов, добавил туда несуществующий четвертый, дабы создать таймаут для проверки our $TIMEOUT = 10;
foreach (@ns)
{
eval
{
local $SIG{ALRM} = sub { die «timeout\n»; };
alarm $TIMEOUT;
$res = Net::DNS::Resolver->new(nameservers => [$_]);
$query = $res->query($domain);
if ($query)
{
print «<?xml version=\„1.0\“ encoding=\„UTF-8\“?><doc><error code=\„8\“>Автоматически сгенерированное доменное имя $domain уже используется другой услугой/товаром. Укажите, пожалуйста, другое.</error></doc>»;
exit;
} alarm 0;
};
alarm 0;
}
alarm 0;
проверяю, заказывая услугу, никакой задержки, хотя таймаут ставил и 50 и 500.. что не так?