From 18a209ffe6580115124ba08e125ff77c9478dcfb Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Thu, 21 Feb 2008 08:08:13 +0000 Subject: Even though the man page said that "TrackHostExits ." should work, nobody had ever implemented it. Bugfix on 0.1.0.x. svn:r13647 --- ChangeLog | 2 ++ src/or/circuituse.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 0f8155a907..c78300f640 100644 --- a/ChangeLog +++ b/ChangeLog @@ -67,6 +67,8 @@ Changes in version 0.2.0.20-?? - 2008-02-?? on the socket. Bugfix on 0.1.2.x. - Change the behavior of "getinfo status/good-server-descriptor" so it doesn't return failure when any authority disappears. + - Even though the man page said that "TrackHostExits ." should + work, nobody had ever implemented it. Bugfix on 0.1.0.x. o Code simplifications and refactoring: - Remove the tor_strpartition function: its logic was confused, diff --git a/src/or/circuituse.c b/src/or/circuituse.c index 668d5db5cd..b1b65754b4 100644 --- a/src/or/circuituse.c +++ b/src/or/circuituse.c @@ -1185,7 +1185,8 @@ consider_recording_trackhost(edge_connection_t *conn, origin_circuit_t *circ) SMARTLIST_FOREACH(options->TrackHostExits, const char *, cp, { if (cp[0] == '.') { /* match end */ - if (!strcasecmpend(conn->socks_request->address, cp) || + if (cp[1] == '\0' || + !strcasecmpend(conn->socks_request->address, cp) || !strcasecmp(conn->socks_request->address, &cp[1])) found_needle = 1; } else if (strcasecmp(cp, conn->socks_request->address) == 0) { -- cgit v1.2.3-54-g00ecf