summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Add changes file for 24531ticket24531_033_01Matt Traudt2017-12-11
|
* Function declaration whitespaceMatt Traudt2017-12-11
|
* One more missed chance to use get_scheduler_state_stringMatt Traudt2017-12-11
|
* Make get_scheduler_state_string available to scheduler*.cMatt Traudt2017-12-11
|
* Remove now-duplicate log_debug linesMatt Traudt2017-12-11
|
* Helper to log chan scheduler_states as strings not intsMatt Traudt2017-12-11
|
* Add all the missed scheduler_state assignmentsMatt Traudt2017-12-11
|
* Fix cosmetic issues around scheduler_set_channel_stateMatt Traudt2017-12-11
| | | | | | | | Whitespace issues Line length Unused variable
* Bug:24531 Function to change channel scheduler state for easy debugging added.ArunaMaurya221B2017-12-11
|
* Bug:24531 Add function to change scheduler state and always use itArunaMaurya221B2017-12-11
|
* Fix compilation with --disable-memory-sentinelsNick Mathewson2017-12-11
| | | | We'd broken this with the recent _free() rewrite.
* Fix up test_circuitstats to use the new circuit_free macroNick Mathewson2017-12-08
|
* Merge remote-tracking branch 'mikeperry/bug23114_squashed2'Nick Mathewson2017-12-08
|\
| * Add tests for circuitstats.cMike Perry2017-12-07
| | | | | | | | | | These tests primarily test the relaxed and measured behavior of circuitstats.c, to make sure we did not break it with #23100 or #23114.
| * Report close and timeout rates since uptime, not based on data.Mike Perry2017-12-07
| | | | | | | | | | Bug #23114 was harder to see because we were just reporting our math, rather than reporting behavior.
| * Bug #23114: Time out circuits immediately.Mike Perry2017-12-07
| | | | | | | | | | This changes the purpose of circuits that are past the timeout to measurement *as they are built*, ensuring accurate application of the timeout logic.
| * Bug #23100: Count all 3 hop circuits for CBT.Mike Perry2017-12-07
| | | | | | | | | | This change causes us to count anything once it reaches 3 hops (but not after).
* | move a macro; fix a build?Nick Mathewson2017-12-08
| |
* | Merge branch 'macro_free_v2_squashed'Nick Mathewson2017-12-08
|\ \
| * | document our allocator conventionsNick Mathewson2017-12-08
| | |
| * | Convert remaining function (mostly static) to new free styleNick Mathewson2017-12-08
| | |
| * | Fix wide lines introduced by previous patch.Nick Mathewson2017-12-08
| | |
| * | Replace all FREE_AND_NULL* uses to take a type and a free function.Nick Mathewson2017-12-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit was made mechanically by this perl script: \#!/usr/bin/perl -w -i -p next if /^#define FREE_AND_NULL/; s/\bFREE_AND_NULL\((\w+),/FREE_AND_NULL\(${1}_t, ${1}_free_,/; s/\bFREE_AND_NULL_UNMATCHED\(/FREE_AND_NULL\(/;
| * | Let's have only one FREE_AND_NULL variant.Nick Mathewson2017-12-08
| | | | | | | | | | | | | | | | | | | | | | | | This commit removes the old FREE_AND_NULL, and renames the old FREE_AND_NULL_UNMATCHED so that it is now called FREE_AND_NULL. This will break all the FREE_AND_NULL_* users; the next commit will fix them.
| * | changes file for big free macro-ization branchNick Mathewson2017-12-08
| | |
| * | Make tor_free only evaluate its input once (at least on gcc and clang)Nick Mathewson2017-12-08
| | |
| * | Switch to a safer FREE_AND_NULL implementationNick Mathewson2017-12-08
| | | | | | | | | | | | | | | This one only evaluates the input once, so it cannot mess up even if there are side effects.
| * | Change the free macro convention in the rest of src/or/*.hNick Mathewson2017-12-08
| | |
| * | Convert connection_free to a nulling macro.Nick Mathewson2017-12-08
| | |
| * | Rename connection_free_ to connection_free_minimal.Nick Mathewson2017-12-08
| | |
| * | Update free functions into macros: src/or/ part 1Nick Mathewson2017-12-08
| | | | | | | | | | | | This covers addressmap.h (no change needed) through confparse.h
| * | Convert the rest of src/common's headers to use FREE_AND_NULLNick Mathewson2017-12-08
| | |
| * | Make all the crypto free() functions macros that clear their targetsNick Mathewson2017-11-17
| | |
| * | Make all the free() functions from container.h clear their targetsNick Mathewson2017-11-17
| | |
| * | Add a macro to call a free_ function and clear a variableNick Mathewson2017-11-17
| | |
* | | Merge branch 'dgoulet_ticket23709_033_01_squashed'Nick Mathewson2017-12-08
|\ \ \
| * | | chan: Add changes file for ticket 23709David Goulet2017-12-08
| | | | | | | | | | | | | | | | | | | | | | | | Closes #23709 Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Make older GCC happy and thus our oniongit pipelineDavid Goulet2017-12-08
| | | | | | | | | | | | | | | | Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | chan: Do not re-queue after a fail cell writeDavid Goulet2017-12-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Couple things happen in this commit. First, we do not re-queue a cell back in the circuit queue if the write packed cell failed. Currently, it is close to impossible to have it failed but just in case, the channel is mark as closed and we move on. The second thing is that the channel_write_packed_cell() always took ownership of the cell whatever the outcome. This means, on success or failure, it needs to free it. It turns out that that we were using the wrong free function in one case and not freeing it in an other possible code path. So, this commit makes sure we only free it in one place that is at the very end of channel_write_packed_cell() which is the top layer of the channel abstraction. This makes also channel_tls_write_packed_cell_method() return a negative value on error. Two unit tests had to be fixed (quite trivial) due to a double free of the packed cell in the test since now we do free it in all cases correctly. Part of #23709 Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | doc: Update channel.c top comments from latestDavid Goulet2017-11-22
| | | | | | | | | | | | | | | | Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Cleanup unused code in test_channel.cDavid Goulet2017-11-22
| | | | | | | | | | | | | | | | Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Add unit test for channel_listener_tDavid Goulet2017-11-22
| | | | | | | | | | | | | | | | Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Add unit test for channel_get_for_extend()David Goulet2017-11-22
| | | | | | | | | | | | | | | | Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Add unit test for channel_check_for_duplicates()David Goulet2017-11-22
| | | | | | | | | | | | | | | | Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Add channel state unit testDavid Goulet2017-11-22
| | | | | | | | | | | | | | | | Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Fix memleak of channel cmuxDavid Goulet2017-11-22
| | | | | | | | | | | | | | | | Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Fix channel dumpstats testDavid Goulet2017-11-22
| | | | | | | | | | | | | | | | Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Fix channel lifecycle and lifecycle_2David Goulet2017-11-22
| | | | | | | | | | | | | | | | | | | | | | | | They were broken due to previous commit. Fixes are trivial. Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Add outbound channel cell testDavid Goulet2017-11-22
| | | | | | | | | | | | | | | | Signed-off-by: David Goulet <dgoulet@torproject.org>
| * | | test: Improve the inbound channel cell testDavid Goulet2017-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | First, that test was broken from the previous commit because the channel_queue_cell() has been removed. This now tests the channel_process_cell() directly. Second, it wasn't testing much except if the channel subsystem actually went through the cell handler. This commit adds more checks on the state of a channel going from open, receiving a cell and closing. Third, this and the id_map unit test are working, not the others so they've been marked as not working and future commit will improve and fix those. Signed-off-by: David Goulet <dgoulet@torproject.org>