my %IntegerDirectives = (
'delaycompress' => 1,
'rotate' => 1,
- 'maxage' => 1,
'start' => 1,
);
warn $p . "Direktive '$key' darf keine Argumente haben ( '$val' in Datei '$f', Zeile $linenr).\n"
if defined $val and $val !~ /^\s*$/;
$val = $ValidPeriods{$key};
+ } else {
+ if ( defined $val and $val =~ /^\s*-\s*\d+\s*$/ ) {
+ $val = -1;
+ } else {
+ $val = period2days($val);
+ unless ( defined $val ) {
+ warn $p . "Ungueltige Perioden-Definition (Datei '$f', Zeile $linenr).\n";
+ return 1;
+ }
+ }
+ }
+
+ print $p . "Setze Periode in '$wo' auf '$val'.\n" if verbose() > 5;
+ $self->{$wo}{'period'} = $val;
+ return 1;
+ }
+
+ # Maximalalter fuer alte Logdateien ermitteln
+ if ( $directive =~ /^(not?)?maxage$/ ) {
+
+ $negated = $1;
+ print $p . "Untersuche Direktive 'maxage' ...\n" if verbose() > 5;
+
+ $negated = 1 if not defined($val) or $val =~ /^\s*$/;
+ if ( $negated ) {
+ $val = 0;
} else {
$val = period2days($val);
unless ( defined $val ) {
- warn $p . "Ungueltige Perioden-Definition (Datei '$f', Zeile $linenr).\n";
+ warn $p . "Ungueltige Maxage-Definition (Datei '$f', Zeile $linenr).\n";
return 1;
}
}
- print $p . "Setze Periode in '$wo' auf '$val'.\n" if verbose() > 5;
- $self->{$wo}{'period'} = $val;
+ print $p . "Setze Maxage in '$wo' auf '$val'.\n" if verbose() > 5;
+ $self->{$wo}{'maxage'} = $val;
return 1;
}