diff options
author | Nick Mathewson <nickm@torproject.org> | 2011-01-05 16:02:43 -0500 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2011-01-05 16:02:43 -0500 |
commit | 31d6659d974800e972af43856405e8a7abe08f72 (patch) | |
tree | d971ce07d4ebd1f0da6bdf5e13cc536135b8b38a | |
parent | 69771bb5fc0fc472436c5f3fe6dfd3bd0f4929da (diff) | |
download | tor-31d6659d974800e972af43856405e8a7abe08f72.tar.gz tor-31d6659d974800e972af43856405e8a7abe08f72.zip |
Fix a double-counting bug in addrmap_get_virtual_address
We were decrementing "available" twice for each in-use address we ran
across. This would make us declare that we ran out of virtual
addresses when the address space was only half full.
-rw-r--r-- | changes/bug2328 | 4 | ||||
-rw-r--r-- | src/or/connection_edge.c | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/changes/bug2328 b/changes/bug2328 new file mode 100644 index 0000000000..e5ce492a82 --- /dev/null +++ b/changes/bug2328 @@ -0,0 +1,4 @@ + o Minor bugfixes + - Fix a bug where we would declare that we had run out of virtual + addresses when the address space was only half-exhausted. Bugfix + on 0.1.1.19-rc. diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c index 9ecdf5c7a9..6c23775315 100644 --- a/src/or/connection_edge.c +++ b/src/or/connection_edge.c @@ -1178,7 +1178,7 @@ addressmap_get_virtual_address(int type) ++next_virtual_addr; --available; log_info(LD_CONFIG, "%d addrs available", (int)available); - if (! --available) { + if (! available) { log_warn(LD_CONFIG, "Ran out of virtual addresses!"); return NULL; } |