Don't cannibalize already cannibalized circuits

This ensures we don't build circuits that have 5 hops or more. Patch
contributed by wanoskarnet, thanks!
This commit is contained in:
Sebastian Hahn 2012-02-25 17:58:09 +01:00
parent f7e87f41f7
commit 2755b09c52
2 changed files with 6 additions and 0 deletions

5
changes/bug5231 Normal file
View File

@ -0,0 +1,5 @@
o Minor bugfixes:
- Ensure we don't cannibalize circuits that are longer than three hops
already, so we don't end up making circuits with 5 or more hops. Patch
contributed by wanoskarnet. Fixes bug 5231; bugfix on 0.1.0.1-rc which
introduced cannibalization.

View File

@ -1086,6 +1086,7 @@ circuit_find_to_cannibalize(uint8_t purpose, extend_info_t *info,
(!need_capacity || circ->build_state->need_capacity) &&
(internal == circ->build_state->is_internal) &&
circ->remaining_relay_early_cells &&
circ->build_state->desired_path_len == DEFAULT_ROUTE_LEN &&
!circ->build_state->onehop_tunnel &&
!circ->isolation_values_set) {
if (info) {