[svn:qpsmtpd] r644 - trunk/lib/Danga/DNS
[email protected] Tue, 20 Jun 2006 07:39:54 -0700 (PDT)
| Newsgroups | perl.cvs.qpsmtpd |
|---|---|
| Message-ID | <[email protected]> |
Author: msergeant
Date: Tue Jun 20 07:39:52 2006
New Revision: 644
Modified:
trunk/lib/Danga/DNS/Resolver.pm
Log:
fields patch from Brian Grossman
Modified: trunk/lib/Danga/DNS/Resolver.pm
==============================================================================
--- trunk/lib/Danga/DNS/Resolver.pm (original)
+++ trunk/lib/Danga/DNS/Resolver.pm Tue Jun 20 07:39:52 2006
@@ -273,6 +273,8 @@
package Danga::DNS::Resolver::Query;
+use fields qw( resolver asker host type timeout id data repeat ns nqueries );
+
use constant MAX_QUERIES => 10;
sub trace {
@@ -281,24 +283,14 @@
}
sub new {
- my ($class, $res, $asker, $host, $type, $now, $id, $data) = @_;
+ my Danga::DNS::Resolver::Query $self = shift;
+ $self = fields::new($self) unless ref $self;
- my $self = {
- resolver => $res,
- asker => $asker,
- host => $host,
- type => $type,
- timeout => $now,
- id => $id,
- data => $data,
- repeat => 2, # number of retries
- ns => 0,
- nqueries => 0,
- };
+ @$self{qw( resolver asker host type timeout id data )} = @_;
+ # repeat is number of retries
+ @$self{qw( repeat ns nqueries )} = (2,0,0);
- trace(2, "NS Query: $host ($id)\n");
-
- bless $self, $class;
+ trace(2, "NS Query: $self->{host} ($self->{id})\n");
$self->send_query || return;