diff options
author | Peter Palfrader <peter@palfrader.org> | 2002-07-03 12:09:03 +0000 |
---|---|---|
committer | Peter Palfrader <peter@palfrader.org> | 2002-07-03 12:09:03 +0000 |
commit | 2da43c3148d7ae67554de9cdf51fd2d0d03884a4 (patch) | |
tree | c04e0cdbbd9e9d6186a9de267ddfa6fd3294199f /Echolot/Storage/File.pm | |
parent | f9a1bf5f001280fb7a22ba9f9613255fff35161d (diff) |
reworked the no expire stuff for manual caps
Diffstat (limited to 'Echolot/Storage/File.pm')
-rw-r--r-- | Echolot/Storage/File.pm | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/Echolot/Storage/File.pm b/Echolot/Storage/File.pm index a075e93..cf01092 100644 --- a/Echolot/Storage/File.pm +++ b/Echolot/Storage/File.pm @@ -1,7 +1,7 @@ package Echolot::Storage::File; # (c) 2002 Peter Palfrader <peter@palfrader.org> -# $Id: File.pm,v 1.25 2002/07/03 11:08:21 weasel Exp $ +# $Id: File.pm,v 1.26 2002/07/03 12:09:03 weasel Exp $ # =pod @@ -647,8 +647,8 @@ sub restore_ttl($$) { return 1; }; -sub set_caps($$$$$$) { - my ($self, $type, $caps, $nick, $address, $timestamp) = @_; +sub set_caps($$$$$$;$) { + my ($self, $type, $caps, $nick, $address, $timestamp, $dont_expire) = @_; if (! defined $self->{'METADATA'}->{'remailers'}->{$address}) { $self->{'METADATA'}->{'remailers'}->{$address} = { @@ -687,6 +687,11 @@ sub set_caps($$$$$$) { $conf->{'type'} = $type; }; }; + + if (defined $dont_expire) { + $self->{'METADATA'}->{'remailers'}->{$address}->{'conf'}->{'dont_expire'} = $dont_expire; + }; + $self->commit(); return 1; @@ -878,7 +883,8 @@ sub expire($) { delete $self->{'METADATA'}->{'remailers'}->{$remailer_addr}->{'conf'} if (defined $self->{'METADATA'}->{'remailers'}->{$remailer_addr}->{'conf'} && - ($self->{'METADATA'}->{'remailers'}->{$remailer_addr}->{'conf'}->{'last_update'} < $expire_conf)); + ($self->{'METADATA'}->{'remailers'}->{$remailer_addr}->{'conf'}->{'last_update'} < $expire_conf) && + ! ($self->{'METADATA'}->{'remailers'}->{$remailer_addr}->{'conf'}->{'dont_expire'})); $self->{'METADATA'}->{'remailers'}->{$remailer_addr}->{'status'} = 'expired' unless ( defined ($self->{'METADATA'}->{'remailers'}->{$remailer_addr}->{'conf'}) || |