exigrey.pl
changeset 33 cbff5ff61a0e
parent 31 7d2c9f3186f4
child 34 57bee7e4f4cf
--- a/exigrey.pl	Wed Jan 03 16:24:32 2007 +0000
+++ b/exigrey.pl	Wed Jan 03 16:58:30 2007 +0000
@@ -33,6 +33,8 @@
 do "@LIBDIR@/exigrey.pl" 
     or do "./exim-exigrey.pl" or die $!;
 
+my $VERSION = '$Id$';
+
 my $opt_list;
 my $opt_stats;
 my $opt_insert;
@@ -66,9 +68,9 @@
 	my %h;
 	connectDB(\%h, shift);
 	iterate(%h, sub {
-	    my ($item, $v0, $v1, $dv) = @_;
-	    printf "%-16s:\t$v0 $v1 (%3ds %s %s)\n", 
-		    $item, $dv, 
+	    my ($item, $v0, $v1, $c) = @_;
+	    printf "%-16s:\t$v0 $v1 (%3d %s %s)\n", 
+		    $item, $c,
 		    strftime("%F %T", localtime($v0)), 
 		    strftime("%F %T", localtime($v1));
 	});
@@ -83,9 +85,9 @@
 	    my ($seen, $returned, $oldest_c, $oldest_u);
 	    $oldest_c = $oldest_u = time();
 	    iterate(%h, sub {
-		my ($item, $v0, $v1, $dv) = @_;
+		my ($item, $v0, $v1, $c) = @_;
 		++$seen;
-		++$returned if $dv;
+		++$returned if $c;
 		$oldest_c = $v0 if $v0 < $oldest_c;
 		$oldest_u = $v1 if $v1 < $oldest_u;
 	    });
@@ -120,7 +122,7 @@
 	    my $tmp = tmpfile();
 	    my $db = connectDB(\%h, $_);
 	    iterate(%h, sub {
-		my ($item, $v0, $v1, $dv) = @_;
+		my ($item, $v0, $v1, $c) = @_;
 		my $rv = defined $opt_purge ? \$v0 : \$v1;
 		print $tmp "$item\0" if $$rv <= $cut;
 	    });
@@ -154,14 +156,12 @@
 }
 
 # Helper to iterate over our hash and call the passed
-# "callback" function (item, v0, v1, delta)
+# "callback" function (item, v0, v1, count)
 sub iterate(\%$) {
     my ($hash, $sub) = @_;
     while (my ($k, $v) = each %$hash) {
 	chop($k, $v);
-	my ($v0, $v1) = split " ", $v;
-	my $dv = $v1 - $v0;
-	&$sub($k, $v0, $v1, $dv);
+	&$sub($k, (split(" ", $v), 0)[0..2]);	# 0 for filling
     }
 }