Package: sauce
Version: 0.9.0+nmu2
--- /usr/share/sauce/rcpt-policy~ 2010-08-13 22:44:01.000000000 +0100
+++ /usr/share/sauce/rcpt-policy 2012-01-13 17:24:53.000000000 +0000
@@ -147,8 +147,9 @@
syxerr "invalid address: $emsg"
}
if {$len > 32} { syxerr "prefix length >32" }
- set ma_v [expr {$len == 0 ? 0 : (0xffffffff<<(32-$len))}]
- if {$re_v & ~$ma_v} { syxerr "mask is non-zero beyond prefix" }
+ set ma_v [expr {$len == 0 ? 0 : ((0xffffffff<<(32-$len))&0xffffffff)}]
+ set bad [expr {$re_v & ($ma_v ^ 0xffffffff)}]
+ if {$bad} { syxerr "mask is non-zero beyond prefix" }
cond_add "(\$ra_v & [format 0x%08x $ma_v]) == [format 0x%08x $re_v]"
} elseif {[string match "\[*" $pat]} {
syxerr "invalid address mask"
--
Ian Jackson personal email: <[email protected]>
These opinions are my own. http://www.chiark.greenend.org.uk/~ijackson/
PGP2 key 1024R/0x23f5addb, fingerprint 5906F687 BD03ACAD 0D8E602E FCF37657
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]