소스 검색

Merge remote-tracking branch 'origin/maint-0.2.2'

Nick Mathewson 14 년 전
부모
커밋
26c022ecbc
2개의 변경된 파일7개의 추가작업 그리고 2개의 파일을 삭제
  1. 5 0
      changes/clear_trackexithost
  2. 2 2
      src/or/connection_edge.c

+ 5 - 0
changes/clear_trackexithost

@@ -0,0 +1,5 @@
+  o Minor bugfixes:
+    - Fix a bug in the code where we could keep trying to use a
+      TrackHostExits-based mapping after we failed to reach the intended
+      destination node. Fixes bug 2999. Bugfix on 0.2.0.20-rc.
+

+ 2 - 2
src/or/connection_edge.c

@@ -799,8 +799,8 @@ clear_trackexithost_mappings(const char *exitname)
   tor_strlower(suffix);
   tor_strlower(suffix);
 
 
   STRMAP_FOREACH_MODIFY(addressmap, address, addressmap_entry_t *, ent) {
   STRMAP_FOREACH_MODIFY(addressmap, address, addressmap_entry_t *, ent) {
-    /* XXXX022 HEY!  Shouldn't this look at ent->new_address? */
-    if (ent->source == ADDRMAPSRC_TRACKEXIT && !strcmpend(address, suffix)) {
+    if (ent->source == ADDRMAPSRC_TRACKEXIT &&
+        !strcmpend(ent->new_address, suffix)) {
       addressmap_ent_remove(address, ent);
       addressmap_ent_remove(address, ent);
       MAP_DEL_CURRENT(address);
       MAP_DEL_CURRENT(address);
     }
     }