Nick Mathewson
361e955cf3
map_anon: define a macro if it is possible for noinherit to fail.
2019-04-04 12:56:52 -04:00
Nick Mathewson
12205c3cbe
Make map_anon expose the result of a noinherit attempt
...
Previously we did this for tests only, but it's valuable for getting
proper fork behavior in rand_fast.
2019-04-04 12:56:52 -04:00
Nick Mathewson
d194f6bedf
Implement an DormantCanceledByStartup option
...
Closes ticket 29357, and comes with appropriate notions of caution.
2019-04-04 11:48:36 -04:00
rl1987
4172b638b8
Fix SC2015 warning
2019-04-03 18:03:34 +03:00
rl1987
9e04a87220
Fix SC2064 warning
2019-04-03 17:58:05 +03:00
rl1987
700310df61
Fix SC2006 warnings
2019-04-03 17:56:52 +03:00
rl1987
9e0f0a5656
Fix SC2086 warnings in test_key_expiration.sh
2019-04-03 17:52:31 +03:00
Nick Mathewson
367dd9cf02
30001: Fix a race condition in test_dir_handle_get.c
...
Previously we used time(NULL) to set the Expires: header in our HTTP
responses. This made the actual contents of that header untestable,
since the unit tests have no good way to override time(), or to see
what time() was at the exact moment of the call to time() in
dircache.c.
This gave us a race in dir_handle_get/status_vote_next_bandwidth,
where the time() call in dircache.c got one value, and the call in
the tests got another value.
I'm applying our regular solution here: using approx_time() so that
the value stays the same between the code and the test. Since
approx_time() is updated on every event callback, we shouldn't be
losing any accuracy here.
Fixes bug 30001. Bug introduced in fb4a40c32c4a7e5; not in any
released Tor.
2019-04-03 10:16:18 -04:00
Nick Mathewson
ee6f54ff3f
Merge remote-tracking branch 'tor-github/pr/860'
2019-04-03 08:33:40 -04:00
rl1987
a549e4f7a3
Remove no-longer needed logging statements
2019-04-02 12:59:37 +03:00
rl1987
eaf071d7da
Stop requiring bash in test-network.sh. Make it POSIX compliant
2019-04-02 12:31:57 +03:00
teor
583ed7c6ec
Merge remote-tracking branch 'tor-github/pr/864'
2019-04-02 11:46:42 +10:00
Nick Mathewson
9ed02ec282
Merge branch 'ticket29662_squashed' into ticket29662_squashed_merged
2019-03-29 14:28:48 -04:00
rl1987
a959d7cb98
Use tor_assertf{_nonfatal} in code
2019-03-29 14:25:59 -04:00
Nick Mathewson
a7bc47532b
test_routerkeys.c: Always check mkdir() return value
...
After this fix, we have no more unchecked mkdir() calls.
Bug 29939; CID 144254. Bugfix on 0.2.7.2-alpha.
2019-03-28 09:31:13 -04:00
teor
a10d4adc25
Stop assuming that /usr/bin/python3 exists
...
For scripts that work with python2, use /usr/bin/python.
Otherwise, use /usr/bin/env python3.
Fixes bug 29913; bugfix on 0.2.5.3-alpha.
2019-03-27 11:07:55 +10:00
Nick Mathewson
a47b61f329
Merge branch 'messaging_v3' into messaging_v3_merged
2019-03-26 20:13:49 -04:00
teor
6d057c56f1
Merge remote-tracking branch 'tor-github/pr/820' into maint-0.3.4
2019-03-27 10:01:45 +10:00
Nick Mathewson
203e9138d1
Remove message/subsystem numbers from log messages
...
Having the numbers in those messages makes some of the unit test
unstable, by causing them to depend on the initialization order of
the naming objects.
2019-03-26 19:56:39 -04:00
George Kadianakis
989b6325d6
Merge branch 'tor-github/pr/842'
2019-03-26 16:41:07 +02:00
George Kadianakis
d11976b8bd
Merge branch 'tor-github/pr/709'
2019-03-26 15:34:54 +02:00
George Kadianakis
2790ee3685
Merge branch 'maint-0.4.0'
2019-03-26 15:16:37 +02:00
George Kadianakis
06951cb3fc
Merge branch 'tor-github/pr/847' into maint-0.4.0
2019-03-26 15:16:21 +02:00
teor
613c5ff357
Merge remote-tracking branch 'tor-github/pr/724'
2019-03-26 19:31:17 +10:00
teor
0642650865
Merge branch 'maint-0.4.0'
2019-03-26 19:16:06 +10:00
teor
4258728d56
Merge remote-tracking branch 'tor-github/pr/852' into maint-0.4.0
2019-03-26 19:15:46 +10:00
rl1987
4e6ba575a6
Add header guards to ptr_helpers.h
2019-03-26 09:49:32 +02:00
juga0
da7a8d7624
dircache: fix identation and remove unneded goto
2019-03-26 17:41:17 +10:00
juga0
a4bf3be8bc
test: check that .../bandwidth.z is compressed
2019-03-26 17:41:09 +10:00
juga0
fb4a40c32c
test: Check bw file cache lifetime
2019-03-26 17:41:06 +10:00
juga0
3eacae42b2
Serve bandwidth file used in the next vote
...
When a directory authority is using a bandwidth file to obtain the
bandwidth values that will be included in the next vote, serve this
bandwidth file at /tor/status-vote/next/bandwidth.z.
2019-03-26 17:40:45 +10:00
teor
d482913e69
Merge remote-tracking branch 'tor-github/pr/834'
2019-03-26 12:55:48 +10:00
teor
3af9a51118
test/dir: add a 4th argument to dirserv_read_measured_bandwidths()
...
Part of 29806.
2019-03-26 11:49:33 +10:00
teor
b76ae3898d
Merge branch 'ticket29806_035_squashed_merged' into ticket29806_040_squashed_merged
2019-03-26 11:48:52 +10:00
Nick Mathewson
3f0bfe1d29
Rename DISPATCH_DEFINE_TYPE() to DISPATCH_REGISTER_TYPE()
...
Also fix a grammar error in a comment.
2019-03-25 16:35:34 -04:00
Nick Mathewson
8d70f21717
Add a test for pubsub_items_clear_bindings()
2019-03-25 16:35:34 -04:00
Nick Mathewson
b11b4b7bb7
Add test for dispatch_send() fast path.
2019-03-25 16:35:34 -04:00
Nick Mathewson
d976cda49f
pubsub: add test for items_out in builder_finalize()
2019-03-25 16:35:34 -04:00
Nick Mathewson
c40bcab85d
dispatch: Test behavior of formatting type with no set fmt function.
2019-03-25 16:35:34 -04:00
Nick Mathewson
f74301f8fd
Unit test for namemap_fmt_name()
2019-03-25 16:35:34 -04:00
Nick Mathewson
9fb511526a
pubsub test: add a test to make sure typefns can't be changed.
2019-03-25 16:35:34 -04:00
Nick Mathewson
24df14eb09
Pubsub: macros for ease-of-use and typesafety.
2019-03-25 16:35:33 -04:00
Nick Mathewson
a7681525ab
Add function to clear publish bindings.
...
When we clean up, we'd like to clear all the bindings that refer to
a dispatch_t, so that they don't have dangling pointers to it.
2019-03-25 16:35:33 -04:00
Nick Mathewson
9e60482b80
Pubsub: an OO layer on top of lib/dispatch
...
This "publish/subscribe" layer sits on top of lib/dispatch, and
tries to provide more type-safety and cross-checking for the
lower-level layer.
Even with this commit, we're still not done: more checking will come
in the next commit, and a set of usability/typesafety macros will
come after.
2019-03-25 16:35:33 -04:00
Nick Mathewson
e4d3098d4d
Low-level dispatch module for publish-subscribe mechanism
...
This module implements a way to send messages from one module to
another, with associated data types. It does not yet do anything to
ensure that messages are correct, that types match, or that other
forms of consistency are preserved.
2019-03-25 16:35:33 -04:00
Nick Mathewson
253fea84cf
Add a smartlist_grow() function to expand a smartlist
...
Tests included.
2019-03-25 16:35:33 -04:00
Nick Mathewson
dfd7a7f5b6
Add a type to map names to short identifiers
...
We'll be using this for four kinds of identifier in dispatch.c
2019-03-25 16:35:33 -04:00
Nick Mathewson
61cebb2035
Minimize the includes in control.c
2019-03-25 14:14:56 -04:00
Nick Mathewson
2917ecaa97
Split command-handling and authentication from control.c
2019-03-25 14:06:56 -04:00
Nick Mathewson
4754e9058b
Split getinfo handling into a new control_getinfo.c
2019-03-25 12:49:24 -04:00