aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2006-09-22 20:20:35 +0000
committerNick Mathewson <nickm@torproject.org>2006-09-22 20:20:35 +0000
commitda7f9d5a337bf2596a0fbda2a9b668b08c41cee6 (patch)
tree17533b23de2185503087940002c31c86972b6a64
parent4218f098207cedc17750ed025d939054afe7ca91 (diff)
downloadtor-da7f9d5a337bf2596a0fbda2a9b668b08c41cee6.tar
tor-da7f9d5a337bf2596a0fbda2a9b668b08c41cee6.tar.gz
r8911@Kushana: nickm | 2006-09-22 12:24:52 -0400
Make exitlist only output each result line once. svn:r8466
-rw-r--r--ChangeLog2
-rwxr-xr-xcontrib/exitlist16
-rw-r--r--doc/TODO2
3 files changed, 15 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index d35aa90d3..6912bfb78 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -32,6 +32,8 @@ Changes in version 0.1.2.2-alpha - 2006-??-??
malloc(0) returns a pointer.
- Fix a debug log message in eventdns to say "X resolved to Y"
instead of "X resolved to X".
+ - Prevent the 'exitlist' script from printing the same result more
+ than once.
o Documentation
- Documented (and renamed) ServerDNSSearchDomains and
diff --git a/contrib/exitlist b/contrib/exitlist
index 2b7785fb7..de26dab89 100755
--- a/contrib/exitlist
+++ b/contrib/exitlist
@@ -200,6 +200,13 @@ class Server:
self.ip = ip
self.policy = policy
+def uniq_sort(lst):
+ d = {}
+ for item in lst: d[item] = 1
+ lst = d.keys()
+ lst.sort()
+ return lst
+
def run():
servers = []
policy = []
@@ -237,12 +244,13 @@ def run():
else:
printlist = accepters
+ ents = []
if VERBOSE:
- for s in printlist:
- print "%s\t%s"%(s.ip,s.name)
+ ents = uniq_sort([ "%s\t%s"%(s.ip,s.name) for s in printlist ])
else:
- for s in printlist:
- print s.ip
+ ents = uniq_sort([ s.ip for s in printlist ])
+ for e in ents:
+ print e
def _test():
import doctest, exitparse
diff --git a/doc/TODO b/doc/TODO
index e11177338..c921980d7 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -165,7 +165,7 @@ N - provide no-cache no-index headers from the dirport?
M - rewrite how libevent does select() on win32 so it's not so very slow.
- Add overlapped IO
-N - Exitlist should avoid outputting the same IP address twice.
+ o Exitlist should avoid outputting the same IP address twice.
Nd- Have a mode that doesn't write to disk much, so we can run Tor on
flash memory (e.g. Linksys routers or USB keys).