aboutsummaryrefslogtreecommitdiff
path: root/src/test/test_channelpadding.c
AgeCommit message (Collapse)Author
2018-09-21Split main.c into main.c and mainloop.cNick Mathewson
The main.c code is responsible for initialization and shutdown; the mainloop.c code is responsible for running the main loop of Tor. Splitting the "generic event loop" part of mainloop.c from the event-loop-specific part is not done as part of this patch.
2018-08-28hs: Render obsolete Tor2webDavid Goulet
Remove support for Tor2web in the code and build system. At this commit, tor doesn't have Tor2web support anymore. Ref: https://lists.torproject.org/pipermail/tor-dev/2018-July/013295.html Close #26367 Signed-off-by: David Goulet <dgoulet@torproject.org>
2018-07-05Fix every include path changed in the previous commit (automated)Nick Mathewson
I am very glad to have written this script.
2018-07-05Clean up include paths for libtor-evloop (automated)Nick Mathewson
2018-07-01Remove other needless includes include from or/*.hNick Mathewson
2018-07-01Remove needless includes from or.hNick Mathewson
or.h should really include only the minimum of stuff from or/*, common/*, and lib/*.
2018-06-29Merge branch 'maint-0.3.4'Nick Mathewson
2018-06-29Merge branch 'maint-0.3.3' into maint-0.3.4Nick Mathewson
2018-06-29Merge branch 'maint-0.3.2' into maint-0.3.3Nick Mathewson
2018-06-29Merge branch 'maint-0.3.1' into maint-0.3.2Nick Mathewson
2018-06-29Fix some memory errors in the recent coverity fixes.Nick Mathewson
Found by asan on travis :/
2018-06-29Merge branch 'maint-0.3.4'Nick Mathewson
2018-06-29Merge branch 'maint-0.3.3' into maint-0.3.4Nick Mathewson
2018-06-29Merge branch 'maint-0.3.2' into maint-0.3.3Nick Mathewson
2018-06-29Merge branch 'maint-0.3.1' into maint-0.3.2Nick Mathewson
2018-06-28Fix up the include path of compat_time.h (automated)Nick Mathewson
2018-06-23Fix memory leak in test_channelpadding_consensus().Alexander Færøy
The relay variable is always allocated, but might not be freed before we return from this function. See: Coverity CID 1437431
2018-06-21Rectify include paths (automated).Nick Mathewson
You have no idea how glad I am that this is automated.
2018-06-20Run rectify_include_paths.pyNick Mathewson
2018-06-20Update copyrights to 2018.Nick Mathewson
2018-06-15Extract cell type and their queues into new headersNick Mathewson
Since packed_cell and destroy_cell exist only to be queued, they go in the same headers as the queues.
2018-06-15Extract routerstatus_t into its own header.Nick Mathewson
2018-06-15Extract networkstatus_t and ..sr_info_t into their own headersNick Mathewson
2018-06-15Move or_connection_t to its own header.Nick Mathewson
2018-04-05Wrap the function we use to run the event loop.Nick Mathewson
Doing this lets us remove the event2/event.h header from a few more modules, particularly in the tests. Part of work on 23750.
2018-04-05Add wrappers for event_base_loopexit and event_base_loopbreak.Nick Mathewson
2018-02-07Fix spelling mistakes corresponding to ticket #23650Deepesh Pathak
2017-12-13Use monotime_coarse for transfer times and padding timesNick Mathewson
Using absolute_msec requires a 64-bit division operation every time we calculate it, which gets expensive on 32-bit architectures. Instead, just use the lazy "monotime_coarse_get()" operation, and don't convert to milliseconds until we absolutely must. In this case, it seemed fine to use a full monotime_coarse_t rather than a truncated "stamp" as we did to solve this problem for the timerstamps in buf_t and packed_cell_t: There are vastly more cells and buffer chunks than there are channels, and using 16 bytes per channel in the worst case is not a big deal. There are still more millisecond operations here than strictly necessary; let's see any divisions show up in profiles.
2017-10-31Merge branch 'maint-0.3.2'Nick Mathewson
2017-10-31hs-v3: Attempt descriptor refetch when dirinfo changesDavid Goulet
When the directory information changes, callback to the HS client subsystem so it can check if any pending SOCKS connections are waiting for a descriptor. If yes, attempt a refetch for those. Fixes #23762 Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-10-27Make sure all C files have copyright/license noticesNick Mathewson
2017-09-21Bug 23608: Mock time for all channelpadding tests.Mike Perry
2017-09-14Merge remote-tracking branch 'mikeperry/bug23077' into maint-0.3.1Nick Mathewson
2017-09-14Bug 23077: Make channelpadding tests use mocked time.Mike Perry
2017-09-12Merge branch 'ticket17857_squashed' into maint-0.3.1Nick Mathewson
2017-09-12Ticket #17857: Apply padding off-switch to existing connections.Mike Perry
2017-06-26Demote a log message due to libevent delays.Mike Perry
This is a side-effect of being single-threaded. The worst cases of this are actually Bug #16585.
2017-06-23Ticket #17857: Padding off-switch for single hop connectionsMike Perry
This doesn't apply to currently active connections.. yet...
2017-05-10Resurrect dead code in test_channelpadding.cTaylor Yu
A for-loop in test_channelpadding_timers() would never run because it was trying to increment a counter up to CHANNELS_TO_TEST/3 after an earlier block already incremented it to CHANNELS_TO_TEST/2. Fixes #22221, CID 1405983.
2017-05-10Fix compilation on libevent2-only systemsNick Mathewson
Patch from rubiate; fixes bug 22219. Remember, we don't support libevent1 any more.
2017-05-10In channelpadding tests that touch libevent, call event_reinit().Nick Mathewson
This is necessary to avoid crashes and test failures on kevent-based systems. Fixes bug 22209; bug not in any released Tor.
2017-05-09Fix an implicit conversion warningNick Mathewson
2017-05-08clang-i386: use house style for public-when-testing variablesNick Mathewson
This fixes a warning from jenkins.
2017-05-08Fix some clang-i386 warnings in master.Nick Mathewson
2017-05-08Fix some channelpadding test issues.Mike Perry
asan was finding an alignment issue with a cast, so set the field in the trunnel struct and then encode it instead. Also, enable log capture and verification.
2017-05-08Cache netflow-related consensus parameters.Mike Perry
Checking all of these parameter lists for every single connection every second seems like it could be an expensive waste. Updating globally cached versions when there is a new consensus will still allow us to apply consensus parameter updates to all existing connections immediately.
2017-05-08Bug 17592: Clean up connection timeout logic.Mike Perry
This unifies CircuitIdleTimeout and PredictedCircsRelevanceTime into a single option, and randomizes it. It also gives us control over the default value as well as relay-to-relay connection lifespan through the consensus. Conflicts: src/or/circuituse.c src/or/config.c src/or/main.c src/test/testing_common.c
2017-05-08Netflow record collapsing defense.Mike Perry
This defense will cause Cisco, Juniper, Fortinet, and other routers operating in the default configuration to collapse netflow records that would normally be split due to the 15 second flow idle timeout. Collapsing these records should greatly reduce the utility of default netflow data for correlation attacks, since all client-side records should become 30 minute chunks of total bytes sent/received, rather than creating multiple separate records for every webpage load/ssh command interaction/XMPP chat/whatever else happens to be inactive for more than 15 seconds. The defense adds consensus parameters to govern the range of timeout values for sending padding packets, as well as for keeping connections open. The defense only sends padding when connections are otherwise inactive, and it does not pad connections used solely for directory traffic at all. By default it also doesn't pad inter-relay connections. Statistics on the total padding in the last 24 hours are exported to the extra-info descriptors.