Fix bug 1225: Accept new testsuite case output.
authorJeremy Harris <jgh146exb@wizmail.org>
Sat, 5 May 2012 19:52:41 +0000 (20:52 +0100)
committerJeremy Harris <jgh146exb@wizmail.org>
Sat, 5 May 2012 20:09:17 +0000 (21:09 +0100)
Having looked further at the ratelimit code, the new output looks reasonable.  The obscure
values of "19" derive from testing "per-byte", being the size of the test message.

test/stderr/0038

index c66ffa8..141a112 100644 (file)
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/strict
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/strict
->>> ratelimit condition limit=0 period=3600 key=1h/per_mail/strict/V4NET.9.8.7
->>> ratelimit initializing new key's data
+>>> ratelimit condition count=1 0.0/1h/per_mail/V4NET.9.8.7
+>>> ratelimit creating new rate data block
+>>> ratelimit initializing new key's rate data
 >>> ratelimit db updated
 >>> ratelimit db updated
->>> ratelimit computed rate 0.0
+>>> ratelimit computed rate 1.0
 >>> warn: condition test succeeded in ACL "check_rcpt"
 >>> warn: condition test succeeded in ACL "check_rcpt"
-LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=0.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=1.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_byte/strict
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_byte/strict
->>> ratelimit condition limit=0 period=3600 key=1h/per_byte/strict/V4NET.9.8.7
->>> ratelimit initializing new key's data
->>> ratelimit db updated
->>> ratelimit computed rate 0.0
+>>> ratelimit condition count=19 0.0/1h/per_mail/V4NET.9.8.7
+>>> ratelimit found pre-computed rate 1.0
 >>> warn: condition test succeeded in ACL "check_data"
 >>> warn: condition test succeeded in ACL "check_data"
-LOG: 10HmaX-0005vi-00 H=(test.ex) [V4NET.9.8.7] Warning: DATA: sender_rate=0.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: 10HmaX-0005vi-00 H=(test.ex) [V4NET.9.8.7] Warning: DATA: sender_rate=1.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmaX-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmaX-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
@@ -45,22 +44,22 @@ LOG: 10HmaX-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/strict
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/strict
->>> ratelimit condition limit=0 period=3600 key=1h/per_mail/strict/V4NET.9.8.7
+>>> ratelimit condition count=1 0.0/1h/per_mail/V4NET.9.8.7
+>>> ratelimit found key in database
 >>> ratelimit db updated
 >>> ratelimit db updated
->>> ratelimit computed rate 1.0
+>>> ratelimit computed rate 2.0
 >>> warn: condition test succeeded in ACL "check_rcpt"
 >>> warn: condition test succeeded in ACL "check_rcpt"
-LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=1.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=2.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_byte/strict
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_byte/strict
->>> ratelimit condition limit=0 period=3600 key=1h/per_byte/strict/V4NET.9.8.7
->>> ratelimit db updated
->>> ratelimit computed rate 19.0
+>>> ratelimit condition count=19 0.0/1h/per_mail/V4NET.9.8.7
+>>> ratelimit found pre-computed rate 2.0
 >>> warn: condition test succeeded in ACL "check_data"
 >>> warn: condition test succeeded in ACL "check_data"
-LOG: 10HmaY-0005vi-00 H=(test.ex) [V4NET.9.8.7] Warning: DATA: sender_rate=19.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: 10HmaY-0005vi-00 H=(test.ex) [V4NET.9.8.7] Warning: DATA: sender_rate=2.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmaY-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmaY-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
@@ -77,22 +76,23 @@ LOG: 10HmaY-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_conn/strict
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_conn/strict
->>> ratelimit condition limit=0 period=3600 key=1h/per_conn/strict/V4NET.9.8.7
->>> ratelimit initializing new key's data
+>>> ratelimit condition count=1 0.0/1h/per_conn/V4NET.9.8.7
+>>> ratelimit creating new rate data block
+>>> ratelimit initializing new key's rate data
 >>> ratelimit db updated
 >>> ratelimit db updated
->>> ratelimit computed rate 0.0
+>>> ratelimit computed rate 1.0
 >>> warn: condition test succeeded in ACL "check_rcpt"
 >>> warn: condition test succeeded in ACL "check_rcpt"
-LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=0.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=1.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_conn/strict
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_conn/strict
->>> ratelimit condition limit=0 period=3600 key=1h/per_conn/strict/V4NET.9.8.7
->>> ratelimit found pre-computed rate 0.0
+>>> ratelimit condition count=1 0.0/1h/per_conn/V4NET.9.8.7
+>>> ratelimit found pre-computed rate 1.0
 >>> warn: condition test succeeded in ACL "check_data"
 >>> warn: condition test succeeded in ACL "check_data"
-LOG: 10HmaZ-0005vi-00 H=(test.ex) [V4NET.9.8.7] Warning: DATA: sender_rate=0.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: 10HmaZ-0005vi-00 H=(test.ex) [V4NET.9.8.7] Warning: DATA: sender_rate=1.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmaZ-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmaZ-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
@@ -109,21 +109,22 @@ LOG: 10HmaZ-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_conn/strict
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_conn/strict
->>> ratelimit condition limit=0 period=3600 key=1h/per_conn/strict/V4NET.9.8.7
+>>> ratelimit condition count=1 0.0/1h/per_conn/V4NET.9.8.7
+>>> ratelimit found key in database
 >>> ratelimit db updated
 >>> ratelimit db updated
->>> ratelimit computed rate 1.0
+>>> ratelimit computed rate 2.0
 >>> warn: condition test succeeded in ACL "check_rcpt"
 >>> warn: condition test succeeded in ACL "check_rcpt"
-LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=1.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=2.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_conn/strict
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_conn/strict
->>> ratelimit condition limit=0 period=3600 key=1h/per_conn/strict/V4NET.9.8.7
->>> ratelimit found pre-computed rate 1.0
+>>> ratelimit condition count=1 0.0/1h/per_conn/V4NET.9.8.7
+>>> ratelimit found pre-computed rate 2.0
 >>> warn: condition test succeeded in ACL "check_data"
 >>> warn: condition test succeeded in ACL "check_data"
-LOG: 10HmbA-0005vi-00 H=(test.ex) [V4NET.9.8.7] Warning: DATA: sender_rate=1.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: 10HmbA-0005vi-00 H=(test.ex) [V4NET.9.8.7] Warning: DATA: sender_rate=2.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmbA-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmbA-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
@@ -140,31 +141,34 @@ LOG: 10HmbA-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_rcpt
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_rcpt
->>> ratelimit condition limit=0 period=3600 key=1h/per_cmd/leaky/V4NET.9.8.7
->>> ratelimit initializing new key's data
+>>> ratelimit condition count=1 0.0/1h/per_rcpt/V4NET.9.8.7
+>>> ratelimit creating new rate data block
+>>> ratelimit initializing new key's rate data
 >>> ratelimit db not updated: over the limit, but leaky
 >>> ratelimit db not updated: over the limit, but leaky
->>> ratelimit computed rate 0.0
+>>> ratelimit computed rate 1.0
 >>> warn: condition test succeeded in ACL "check_rcpt"
 >>> warn: condition test succeeded in ACL "check_rcpt"
-LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=0.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=1.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_rcpt
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_rcpt
->>> ratelimit condition limit=0 period=3600 key=1h/per_cmd/leaky/V4NET.9.8.7
->>> ratelimit initializing new key's data
+>>> ratelimit condition count=1 0.0/1h/per_rcpt/V4NET.9.8.7
+>>> ratelimit creating new rate data block
+>>> ratelimit initializing new key's rate data
 >>> ratelimit db not updated: over the limit, but leaky
 >>> ratelimit db not updated: over the limit, but leaky
->>> ratelimit computed rate 0.0
+>>> ratelimit computed rate 1.0
 >>> warn: condition test succeeded in ACL "check_rcpt"
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_rcpt
 >>> warn: condition test succeeded in ACL "check_rcpt"
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> using ACL "check_rcpt"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_rcpt
->>> ratelimit condition limit=0 period=3600 key=1h/per_cmd/leaky/V4NET.9.8.7
->>> ratelimit initializing new key's data
+>>> ratelimit condition count=1 0.0/1h/per_rcpt/V4NET.9.8.7
+>>> ratelimit creating new rate data block
+>>> ratelimit initializing new key's rate data
 >>> ratelimit db not updated: over the limit, but leaky
 >>> ratelimit db not updated: over the limit, but leaky
->>> ratelimit computed rate 0.0
+>>> ratelimit computed rate 1.0
 >>> warn: condition test succeeded in ACL "check_rcpt"
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
 >>> warn: condition test succeeded in ACL "check_rcpt"
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt"
@@ -172,12 +176,12 @@ LOG: H=(test.ex) [V4NET.9.8.7] Warning: RCPT: sender_rate=0.0 sender_rate_limit=
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_conn
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_conn
->>> ratelimit condition limit=0 period=3600 key=1h/per_conn/leaky/V4NET.9.8.7
->>> ratelimit initializing new key's data
+>>> ratelimit condition count=1 0.0/1h/per_conn/V4NET.9.8.7
+>>> ratelimit found key in database
 >>> ratelimit db not updated: over the limit, but leaky
 >>> ratelimit db not updated: over the limit, but leaky
->>> ratelimit computed rate 0.0
+>>> ratelimit computed rate 3.0
 >>> warn: condition test succeeded in ACL "check_data"
 >>> warn: condition test succeeded in ACL "check_data"
-LOG: 10HmbB-0005vi-00 H=(test.ex) [V4NET.9.8.7] Warning: DATA: sender_rate=0.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: 10HmbB-0005vi-00 H=(test.ex) [V4NET.9.8.7] Warning: DATA: sender_rate=3.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmbB-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmbB-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
@@ -194,32 +198,32 @@ LOG: 10HmbB-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> using ACL "check_rcpt2"
 >>> processing "warn"
 >>> check ratelimit = 1/1m/per_rcpt/noupdate
 >>> using ACL "check_rcpt2"
 >>> processing "warn"
 >>> check ratelimit = 1/1m/per_rcpt/noupdate
->>> ratelimit condition limit=1 period=60 key=1m/per_cmd/leaky/V4NET.9.8.6
->>> ratelimit initializing new key's data
->>> ratelimit db not updated: noupdate set
+>>> ratelimit condition count=0 1.0/1m/per_rcpt/V4NET.9.8.6
+>>> ratelimit creating new rate data block
+>>> ratelimit initializing new key's rate data
+>>> ratelimit db not updated: readonly mode
 >>> ratelimit computed rate 0.0
 >>> warn: condition test failed in ACL "check_rcpt2"
 >>> processing "warn"
 >>> check ratelimit = 1/1m/per_rcpt
 >>> ratelimit computed rate 0.0
 >>> warn: condition test failed in ACL "check_rcpt2"
 >>> processing "warn"
 >>> check ratelimit = 1/1m/per_rcpt
->>> ratelimit condition limit=1 period=60 key=1m/per_cmd/leaky/V4NET.9.8.6
->>> ratelimit initializing new key's data
->>> ratelimit db updated
->>> ratelimit computed rate 0.0
+>>> ratelimit condition count=1 1.0/1m/per_rcpt/V4NET.9.8.6
+>>> ratelimit found pre-computed rate 0.0
 >>> warn: condition test failed in ACL "check_rcpt2"
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt2"
 >>> using ACL "check_rcpt2"
 >>> processing "warn"
 >>> check ratelimit = 1/1m/per_rcpt/noupdate
 >>> warn: condition test failed in ACL "check_rcpt2"
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt2"
 >>> using ACL "check_rcpt2"
 >>> processing "warn"
 >>> check ratelimit = 1/1m/per_rcpt/noupdate
->>> ratelimit condition limit=1 period=60 key=1m/per_cmd/leaky/V4NET.9.8.6
->>> ratelimit db not updated: noupdate set
->>> ratelimit computed rate 1.0
+>>> ratelimit condition count=0 1.0/1m/per_rcpt/V4NET.9.8.6
+>>> ratelimit creating new rate data block
+>>> ratelimit initializing new key's rate data
+>>> ratelimit db not updated: readonly mode
+>>> ratelimit computed rate 0.0
 >>> warn: condition test failed in ACL "check_rcpt2"
 >>> processing "warn"
 >>> check ratelimit = 1/1m/per_rcpt
 >>> warn: condition test failed in ACL "check_rcpt2"
 >>> processing "warn"
 >>> check ratelimit = 1/1m/per_rcpt
->>> ratelimit condition limit=1 period=60 key=1m/per_cmd/leaky/V4NET.9.8.6
->>> ratelimit db updated
->>> ratelimit computed rate 1.0
+>>> ratelimit condition count=1 1.0/1m/per_rcpt/V4NET.9.8.6
+>>> ratelimit found pre-computed rate 0.0
 >>> warn: condition test failed in ACL "check_rcpt2"
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt2"
 >>> warn: condition test failed in ACL "check_rcpt2"
 >>> processing "accept"
 >>> accept: condition test succeeded in ACL "check_rcpt2"
@@ -227,12 +231,13 @@ LOG: 10HmbB-0005vi-00 H=(test.ex) [V4NET.9.8.7] F=<> rejected after DATA
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_byte/strict
 >>> using ACL "check_data"
 >>> processing "warn"
 >>> check ratelimit = 0/1h/per_byte/strict
->>> ratelimit condition limit=0 period=3600 key=1h/per_byte/strict/V4NET.9.8.6
->>> ratelimit initializing new key's data
+>>> ratelimit condition count=19 0.0/1h/per_mail/V4NET.9.8.6
+>>> ratelimit creating new rate data block
+>>> ratelimit initializing new key's rate data
 >>> ratelimit db updated
 >>> ratelimit db updated
->>> ratelimit computed rate 0.0
+>>> ratelimit computed rate 19.0
 >>> warn: condition test succeeded in ACL "check_data"
 >>> warn: condition test succeeded in ACL "check_data"
-LOG: 10HmbC-0005vi-00 H=(test.ex) [V4NET.9.8.6] Warning: DATA: sender_rate=0.0 sender_rate_limit=0 sender_rate_period=1h
+LOG: 10HmbC-0005vi-00 H=(test.ex) [V4NET.9.8.6] Warning: DATA: sender_rate=19.0 sender_rate_limit=0 sender_rate_period=1h
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmbC-0005vi-00 H=(test.ex) [V4NET.9.8.6] F=<> rejected after DATA
 >>> processing "deny"
 >>> deny: condition test succeeded in ACL "check_data"
 LOG: 10HmbC-0005vi-00 H=(test.ex) [V4NET.9.8.6] F=<> rejected after DATA