use strict;
use vars qw($VERSION $BRANCH);
-$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
-$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ || (0,0));
-$main::build += $VERSION;
-$main::branch += $BRANCH;
+
+main::mkver($VERSION = q$Revision$);
use vars qw(%u $dbm $filename %valid $lastoperinterval $lasttime $lru $lrusize $tooold $v3);
pagelth => '0,Current Pagelth',
pingint => '9,Node Ping interval',
nopings => '9,Ping Obs Count',
- wantlogininfo => '9,Login info req,yesno',
+ wantlogininfo => '0,Login Info Req,yesno',
wantgrid => '0,Show DX Grid,yesno',
wantann_talk => '0,Talklike Anns,yesno',
wantpc90 => '1,Req PC90,yesno',
prompt => '0,Required Prompt',
version => '1,Version',
build => '1,Build',
+ believe => '1,Believable nodes,parray',
+ lastping => '1,Last Ping at,ptimelist',
);
#no strict;
my $pkg = shift;
my $call = uc shift;
- my $dxchan = DXChannel->get($call);
+ my $dxchan = DXChannel::get($call);
return $dxchan->user if $dxchan;
my $rref = Route::get($call);
return $rref->user if $rref && exists $rref->{user};
$lru->put($call, $self);
my $ref = $self->encode;
$dbm->put($call, $ref);
+ return $self;
}
# freeze the user
return $self->{sort} =~ /[ACRSX]/;
}
+sub is_aranea
+{
+ my $self = shift;
+ return $self->{sort} eq 'W';
+}
+
sub is_user
{
my $self = shift;
my $self = shift;
delete $self->{passphrase};
}
+
+sub set_believe
+{
+ my $self = shift;
+ my $call = uc shift;
+ $self->{believe} ||= [];
+ push @{$self->{believe}}, $call unless grep $_ eq $call, @{$self->{believe}};
+}
+
+sub unset_believe
+{
+ my $self = shift;
+ my $call = uc shift;
+ if (exists $self->{believe}) {
+ $self->{believe} = [grep {$_ ne $call} @{$self->{believe}}];
+ delete $self->{believe} unless @{$self->{believe}};
+ }
+}
+
+sub believe
+{
+ my $self = shift;
+ return exists $self->{believe} ? @{$self->{believe}} : ();
+}
+
+sub lastping
+{
+ my $self = shift;
+ my $call = shift;
+ $self->{lastping} ||= {};
+ $self->{lastping} = {} unless ref $self->{lastping};
+ my $b = $self->{lastping};
+ $b->{$call} = shift if @_;
+ return $b->{$call};
+}
1;
__END__