X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXUser.pm;h=116b69e62eebec01552ec5bb2a9c47066d9d4f61;hb=refs%2Fheads%2Fmojo;hp=7b2ad7a7ba0ad037f15bd4207799d47921de3760;hpb=cc49b8f8c2ec3a975c7ace3f5bd8679580288406;p=spider.git diff --git a/perl/DXUser.pm b/perl/DXUser.pm index 7b2ad7a7..116b69e6 100644 --- a/perl/DXUser.pm +++ b/perl/DXUser.pm @@ -85,6 +85,7 @@ my $json; rbnseeme => '0,RBN See Me,yesno', registered => '9,Registered?,yesno', startt => '0,Start Time,cldatetime', + user_interval => '0,Prompt IdleTime', version => '1,Version', wantann => '0,Req Announce,yesno', wantann_talk => '0,Talklike Anns,yesno', @@ -132,6 +133,8 @@ sub AUTOLOAD goto &$AUTOLOAD; } +my $readonly; + #use strict; # @@ -161,6 +164,8 @@ sub init $dbm = tie (%u, 'DB_File', $filename, O_RDONLY, 0666, $DB_BTREE) or confess "can't open user file: $fn ($!) [rebuild it from user_json?]"; } } + $readonly = !$mode; + die "Cannot open $filename ($!)\n" unless $dbm || $mode == 2; return; } @@ -190,7 +195,7 @@ sub process sub finish { - dbg('DXUser finished'); + dbg('DXUser finished') unless $readonly; $dbm->sync; undef $dbm; untie %u; @@ -349,7 +354,7 @@ sub close my $ip = shift; # add a record to the connect list $self->{lastin} = $main::systime; - my $ref = [$startt || $self->{startt}, $main::systime]; + my $ref = [$self->{startt} || $startt, $main::systime]; push @$ref, $ip if $ip; push @{$self->{connlist}}, $ref; shift @{$self->{connlist}} if @{$self->{connlist}} > $maxconnlist; @@ -982,7 +987,7 @@ sub recover sub END { if ($dbm) { - print "DXUser Ended\n"; + print "DXUser Ended\n" unless $readonly; finish(); } }