[tor-commits] [stem/master] Parse "private" alias better
atagar at torproject.org
atagar at torproject.org
Thu Jul 19 16:01:03 UTC 2012
commit 607e32a3cf3d69ed185ecee4e62f55e7101d587a
Author: Sathyanarayanan Gunasekaran <gsathya.ceg at gmail.com>
Date: Fri Mar 23 14:10:54 2012 +0530
Parse "private" alias better
---
stem/exit_policy.py | 17 +++++++----------
1 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/stem/exit_policy.py b/stem/exit_policy.py
index 15c2b2c..287b620 100644
--- a/stem/exit_policy.py
+++ b/stem/exit_policy.py
@@ -19,15 +19,6 @@ class ExitPolicyLine:
# sets the ip address component
self.isIpWildcard = entryIp == "*" or entryIp.endswith("/0")
- # checks for the private alias (which expands this to a chain of entries)
- if entryIp.lower() == "private":
- # constructs the chain backwards (last first)
- prefix = "accept " if self.isAccept else "reject "
- suffix = ":" + entryPort
- for addr in PRIVATE_IP_RANGES:
- # TODO: Add ExitPolicy.add method
- ExitPolicy.add(prefix + addr + suffix)
-
if "/" in entryIp:
ipComp = entryIp.split("/", 1)
self.ipAddress = ipComp[0]
@@ -121,7 +112,13 @@ class ExitPolicy:
self._policies = []
def add(self, ruleEntry):
- self._policies.append(ExitPolicyLine(ruleEntry))
+ # checks for the private alias (which expands this to a chain of entries)
+ if "private" in ruleEntry.lower():
+ for addr in PRIVATE_IP_RANGES:
+ newEntry = ruleEntry.replace("private", addr)
+ self._policies.append(ExitPolicyLine(newEntry))
+ else:
+ self._policies.append(ExitPolicyLine(ruleEntry))
def isExitingAllowed(self):
"""
More information about the tor-commits
mailing list