mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-14 07:03:44 +01:00
Merge branch 'maint-0.4.1'
This commit is contained in:
commit
044bb019b6
4
changes/bug31024
Normal file
4
changes/bug31024
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
o Minor bugfixes (circuitpadding):
|
||||||
|
- Add two NULL checks in unreachable places to silence Coverity (CID 144729
|
||||||
|
and 1447291) and better future proof ourselves. Fixes bug 31024; bugfix
|
||||||
|
on 0.4.1.1-alpha.
|
3
changes/bug31027
Normal file
3
changes/bug31027
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
o Code simplification and refactoring:
|
||||||
|
- Remove some dead code from circpad_machine_remove_token() to fix some
|
||||||
|
Coverity warnings (CID 1447298). Fixes bug 31027; bugfix on 0.4.1.1-alpha.
|
@ -450,6 +450,9 @@ circpad_is_token_removal_supported(circpad_machine_runtime_t *mi)
|
|||||||
/* Machines that do want token removal are less sensitive to performance.
|
/* Machines that do want token removal are less sensitive to performance.
|
||||||
* Let's spend some time to check that our state is consistent and sane */
|
* Let's spend some time to check that our state is consistent and sane */
|
||||||
const circpad_state_t *state = circpad_machine_current_state(mi);
|
const circpad_state_t *state = circpad_machine_current_state(mi);
|
||||||
|
if (BUG(!state)) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
tor_assert_nonfatal(state->token_removal != CIRCPAD_TOKEN_REMOVAL_NONE);
|
tor_assert_nonfatal(state->token_removal != CIRCPAD_TOKEN_REMOVAL_NONE);
|
||||||
tor_assert_nonfatal(state->histogram_len == mi->histogram_len);
|
tor_assert_nonfatal(state->histogram_len == mi->histogram_len);
|
||||||
tor_assert_nonfatal(mi->histogram_len != 0);
|
tor_assert_nonfatal(mi->histogram_len != 0);
|
||||||
@ -1091,8 +1094,11 @@ circpad_machine_remove_token(circpad_machine_runtime_t *mi)
|
|||||||
|
|
||||||
state = circpad_machine_current_state(mi);
|
state = circpad_machine_current_state(mi);
|
||||||
|
|
||||||
|
/* If we are not in a padding state (like start or end), we're done */
|
||||||
|
if (!state)
|
||||||
|
return;
|
||||||
/* Don't remove any tokens if we're not doing token removal */
|
/* Don't remove any tokens if we're not doing token removal */
|
||||||
if (!state || state->token_removal == CIRCPAD_TOKEN_REMOVAL_NONE)
|
if (state->token_removal == CIRCPAD_TOKEN_REMOVAL_NONE)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
current_time = monotime_absolute_usec();
|
current_time = monotime_absolute_usec();
|
||||||
@ -1111,10 +1117,6 @@ circpad_machine_remove_token(circpad_machine_runtime_t *mi)
|
|||||||
timer_disable(mi->padding_timer);
|
timer_disable(mi->padding_timer);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* If we are not in a padding state (like start or end), we're done */
|
|
||||||
if (!state)
|
|
||||||
return;
|
|
||||||
|
|
||||||
/* Perform the specified token removal strategy */
|
/* Perform the specified token removal strategy */
|
||||||
switch (state->token_removal) {
|
switch (state->token_removal) {
|
||||||
case CIRCPAD_TOKEN_REMOVAL_CLOSEST_USEC:
|
case CIRCPAD_TOKEN_REMOVAL_CLOSEST_USEC:
|
||||||
@ -1676,6 +1678,9 @@ circpad_estimate_circ_rtt_on_received(circuit_t *circ,
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
const circpad_state_t *state = circpad_machine_current_state(mi);
|
const circpad_state_t *state = circpad_machine_current_state(mi);
|
||||||
|
if (BUG(!state)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
/* Since monotime is unpredictably expensive, only update this field
|
/* Since monotime is unpredictably expensive, only update this field
|
||||||
* if rtt estimates are needed. Otherwise, stop the rtt update. */
|
* if rtt estimates are needed. Otherwise, stop the rtt update. */
|
||||||
|
Loading…
Reference in New Issue
Block a user