Re. my previous post, suggested patch:
--- ratelimit-1.9.orig 2015-03-18 10:41:48.000000000 -0500
+++ ratelimit.py 2015-03-18 10:39:51.000000000 -0500
@@ -67,10 +67,12 @@
if limitNetwork:
if '.' in sender:
# For IPv4, use the first three octets
- sender = sender[:sender.rindex('.')]
+ senderID = sender[sender.rindex("["):sender.rindex('.')]
else:
# For IPv6, expand the address and then use the first three hextets
- sender = courier.config.explodeIP6(sender)[:14]
+ senderID = courier.config.explodeIP6(sender)[:14]
+ else:
+ senderID = sender
_sendersLock.acquire()
try:
@@ -87,16 +89,16 @@
# First, add this connection to the bucket:
if not _senders.has_key(now):
_senders[now] = {}
- if not _senders[now].has_key(sender):
- _senders[now][sender] = 1
+ if not _senders[now].has_key(senderID):
+ _senders[now][senderID] = 1
else:
- _senders[now][sender] = _senders[now][sender] + 1
+ _senders[now][senderID] = _senders[now][senderID] + 1
# Now count the number of connections from this sender
connections = 0
for i in range(0, interval):
- if _senders.has_key(now - i) and _senders[now - i].has_key(sender):
- connections = connections + _senders[now - i][sender]
+ if _senders.has_key(now - i) and _senders[now -
i].has_key(senderID):
+ connections = connections + _senders[now - i][senderID]
# If the connection count is higher than the maxConnections setting,
# return a soft failure.
--
Lindsay Haisley | "UNIX is user-friendly, it just
FMP Computer Services | chooses its friends."
512-259-1190 | -- Andreas Bogk
http://www.fmp.com |
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
courier-users mailing list
[email protected]
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users