David Goulet
a30f17f72f
Merge branch 'tor-github/pr/696'
2019-02-20 11:29:55 -05:00
Roger Dingledine
c22446e305
Merge branch 'maint-0.4.0'
2019-02-20 10:40:20 -05:00
Roger Dingledine
5ec65be8bf
Merge remote-tracking branch 'nickm/ticket29530_040' into maint-0.4.0
2019-02-20 10:39:28 -05:00
Roger Dingledine
4d4eda89a1
Merge branch 'maint-0.4.0'
2019-02-20 10:36:54 -05:00
Roger Dingledine
ccab4347e5
Merge remote-tracking branch 'nickm/ticket29534_040' into maint-0.4.0
2019-02-20 10:35:56 -05:00
Roger Dingledine
249319ec5d
fix typos from #28614
2019-02-20 10:32:47 -05:00
Nick Mathewson
208f04e9b8
Add a quick test for get_thread_fast_rng()
2019-02-19 15:36:11 -05:00
Nick Mathewson
b25cd5cfe1
Implement code to manage a per-thread instance of crypto_fast_rng()
...
The subsystems API makes this really simple, fortunately.
Closes ticket 29536
2019-02-19 15:36:08 -05:00
Nick Mathewson
d32e407976
Downgrade some LOG_ERR messages in the address/* tests to warnings
...
Fixes bug 29530, where the LOG_ERR messages were occurring when
we had no configured network, and so we were failing the unit tests
because of the recently-merged #28668 .
Bug not in any released Tor.
2019-02-19 14:02:32 -05:00
Nick Mathewson
c9ff6a7f83
Mark map_anon_nofork test as skipped in 0.4.0
...
This test fails in some environments; since the code isn't used in
0.4.0, let's disable it for now.
Band-aid solution for #29534 ; bug not in any released Tor.
2019-02-19 13:14:26 -05:00
Nick Mathewson
6927e9a60c
Merge remote-tracking branch 'tor-github/pr/665'
2019-02-19 11:56:48 -05:00
Nick Mathewson
c3fca4e4b3
Merge branch 'maint-0.4.0'
2019-02-19 11:51:24 -05:00
Nick Mathewson
4df31adef7
Merge remote-tracking branch 'tor-github/pr/704' into maint-0.4.0
2019-02-19 11:51:19 -05:00
Nick Mathewson
f70929347f
Merge branch 'maint-0.4.0'
2019-02-19 11:49:24 -05:00
Nick Mathewson
4bc55ed5ee
Merge branch 'bug29145_029' into maint-0.4.0
2019-02-19 11:49:20 -05:00
Kris Katterjohn
4417ac880a
Fix a compiler warning on OpenBSD
...
malloc_options needs to be declared extern (and declaring it extern
means we need to initialize it separately)
Fixes bug 29145; bugfix on 0.2.9.3-alpha
Signed-off-by: Kris Katterjohn <katterjohn@gmail.com>
2019-02-19 11:38:32 -05:00
Nick Mathewson
17e29bda5d
Merge branch 'maint-0.4.0'
2019-02-19 11:34:25 -05:00
Nick Mathewson
b5f3a3d6a7
Merge remote-tracking branch 'tor-github/pr/707' into maint-0.4.0
2019-02-19 11:34:21 -05:00
Nick Mathewson
1239e411a7
Merge remote-tracking branch 'tor-github/pr/694'
2019-02-19 11:31:22 -05:00
Nick Mathewson
0db0b4769c
Merge remote-tracking branch 'tor-github/pr/678'
2019-02-19 11:30:27 -05:00
Nick Mathewson
8a5c66cbb0
Merge branch 'maint-0.4.0'
2019-02-19 11:27:21 -05:00
Nick Mathewson
26873bc4ed
Merge branch 'bug28698_035' into maint-0.4.0
2019-02-19 11:27:18 -05:00
José M. Guisado
78220aae1e
Add circuit time check before logging about relaxing circuit time
...
Signed-off-by: José M. Guisado <guigom@riseup.net>
2019-02-19 11:24:51 -05:00
Nick Mathewson
485803dffe
Merge branch 'maint-0.4.0'
2019-02-19 11:21:54 -05:00
Nick Mathewson
5c87add923
Merge remote-tracking branch 'tor-github/pr/701' into maint-0.4.0
2019-02-19 11:21:51 -05:00
Nick Mathewson
9a158a45b1
Bump to 0.4.1.0-alpha-dev
2019-02-19 09:29:43 -05:00
Roger Dingledine
94f7e53d04
fix a bootstrapping string typo
...
introduced in 85542ee5
next step is to fix it in torspec too
2019-02-17 16:56:13 -05:00
Neel Chauhan
384c5c6188
Make test-slow compile with libevent
2019-02-16 16:03:17 -05:00
Matt Traudt
b054a6c6b9
kist: When readding chans, check correct chan's sched_heap_idx
...
Closes #29508
Signed-off-by: David Goulet <dgoulet@torproject.org>
2019-02-14 16:19:31 -05:00
David Goulet
6c173d00f5
Merge branch 'tor-github/pr/702'
2019-02-14 11:43:10 -05:00
George Kadianakis
00b073b1bc
Merge branch 'maint-0.3.5'
2019-02-14 18:01:07 +02:00
George Kadianakis
d83c299eba
Merge branch 'tor-github/pr/689' into maint-0.3.5
2019-02-14 18:00:05 +02:00
George Kadianakis
9bfe4ed6dd
Merge branch 'tor-github/pr/536' into maint-0.3.5
2019-02-14 17:39:34 +02:00
Nick Mathewson
6a29aa7b8c
Add whitebox test for the long-output optimization of fast_rng
2019-02-14 09:26:40 -05:00
Nick Mathewson
3f28b98220
Add test for crypto_fast_rng_get_double().
2019-02-14 09:26:40 -05:00
Nick Mathewson
acbde10fce
Add a test-rng program so we can pipe to dieharder.
2019-02-14 09:26:40 -05:00
Nick Mathewson
490e187056
Add a benchmark for our several PRNGs.
2019-02-14 09:26:40 -05:00
Nick Mathewson
f3cbd6426c
Implement a fast aes-ctr prng
...
This module is currently implemented to use the same technique as
libottery (later used by the bsds' arc4random replacement), using
AES-CTR-256 as its underlying stream cipher. It's backtracking-
resistant immediately after each call, and prediction-resistant
after a while.
Here's how it works:
We generate psuedorandom bytes using AES-CTR-256. We generate BUFLEN bytes
at a time. When we do this, we keep the first SEED_LEN bytes as the key
and the IV for our next invocation of AES_CTR, and yield the remaining
BUFLEN - SEED_LEN bytes to the user as they invoke the PRNG. As we yield
bytes to the user, we clear them from the buffer.
Every RESEED_AFTER times we refill the buffer, we mix in an additional
SEED_LEN bytes from our strong PRNG into the seed.
If the user ever asks for a huge number of bytes at once, we pull SEED_LEN
bytes from the PRNG and use them with our stream cipher to fill the user's
request.
2019-02-14 09:26:40 -05:00
Nick Mathewson
3d3578ab41
Extract RNG tests into a new test module
...
test_crypto.c is pretty big; it wouldn't hurt to split it up some
more before I start adding stuff to the PRNG tests.
2019-02-14 09:26:40 -05:00
Nick Mathewson
622a9a8a36
Extract the common body of our random-int functions into a macro
...
This is the second part of refactoring the random-int-in-range code.
2019-02-14 09:26:40 -05:00
George Kadianakis
f5a6d4c6ea
Disable unstable circuit padding unittest.
...
until #29298 is implemented.
2019-02-14 12:09:41 +02:00
Nick Mathewson
5f42bc0f48
Merge remote-tracking branch 'tor-github/pr/699'
2019-02-13 15:19:59 -05:00
David Goulet
d5de1a0a55
Merge branch 'tor-github/pr/651'
2019-02-13 11:02:02 -05:00
David Goulet
6efc2a0e1f
Merge branch 'tor-github/pr/650' into maint-0.3.5
2019-02-13 10:56:24 -05:00
rl1987
ad48aab056
Let's not double-quote EXTRA_CARGO_OPTIONS after all
2019-02-13 15:04:12 +02:00
juga0
ec7da50ab4
dirvote: Add the bandwidth file digest in the vote
2019-02-13 12:26:00 +00:00
juga0
28490fa23e
test: Add test to get the digest of a bw file
2019-02-13 12:26:00 +00:00
juga0
fc3e90a7b6
bwauth: Add function to get the digest of a bw file
2019-02-13 12:26:00 +00:00
David Goulet
c320c52e89
Merge branch 'tor-github/pr/690'
2019-02-12 13:04:25 -05:00
David Goulet
95e5f8fe03
Merge branch 'tor-github/pr/671'
2019-02-12 13:02:30 -05:00
Nick Mathewson
72b978c3a5
On windows, if we fail to load a consensus and it has a CRLF, retry.
...
Fixes bug 28614; bugfix on 0.4.0.1-alpha when we started mmapping
the consensus.
2019-02-12 12:57:33 -05:00
Nick Mathewson
a797a69679
Merge branch 'maint-0.3.5'
2019-02-12 09:56:50 -05:00
Nick Mathewson
db209d4dba
Merge branch 'maint-0.3.3' into maint-0.3.4
2019-02-12 09:56:49 -05:00
Nick Mathewson
7ead2af622
Merge branch 'maint-0.2.9' into maint-0.3.3
2019-02-12 09:56:49 -05:00
Nick Mathewson
2e770216c4
Merge branch 'maint-0.3.4' into maint-0.3.5
2019-02-12 09:56:49 -05:00
David Goulet
46b6df7122
test: Fix a warning underflow in rend_cache/clean
...
Because the test is adding entries to the "rend_cache" directly, the
rend_cache_increment_allocation() was never called which made the
rend_cache_clean() call trigger that underflow warning:
rend_cache/clean: [forking] Nov 29 09:55:04.024 [warn] rend_cache_decrement_allocation(): Bug: Underflow in rend_cache_decrement_allocation (on Tor 0.4.0.0-alpha-dev 2240fe63feb9a8cf)
The test is still good and valid.
Fixes #28660
Signed-off-by: David Goulet <dgoulet@torproject.org>
2019-02-12 09:15:41 -05:00
Karsten Loesing
a3f9ddcf03
Update geoip and geoip6 to the February 5 2019 database.
2019-02-12 14:40:42 +01:00
rl1987
4c10221332
Use compress_dir_buf_add() function in a few places
2019-02-09 16:46:31 +02:00
rl1987
09a3c949f8
Add connection_dir_buf_add() helper function
2019-02-09 16:06:32 +02:00
rl1987
b53fee4622
Fix SC2086 warning in test_workqueue_*.sh shell scripts
2019-02-08 16:51:49 +02:00
Nick Mathewson
49ec29044d
Add more openssl includes to fix no-deprecated compilation
...
Closes ticket 29026; patch from Mangix.
2019-02-08 08:51:23 -05:00
Nick Mathewson
b9abdcd6bc
Fix compilation when openssl is compiled without engine support.
...
Patch from Mangix. Closes part of ticket 29026.
2019-02-08 08:50:43 -05:00
Nick Mathewson
7f59b9fb1f
Merge branch 'maint-0.3.5'
2019-02-08 08:37:46 -05:00
Nick Mathewson
ab65347819
Merge branch 'ticket29040_1_changes' into maint-0.3.5
2019-02-08 08:37:43 -05:00
Nick Mathewson
b1ae2fd65b
Merge branch 'maint-0.3.5'
2019-02-08 08:19:34 -05:00
Nick Mathewson
4b36f9676d
Merge remote-tracking branch 'tor-github/pr/670' into maint-0.3.5
2019-02-08 08:19:31 -05:00
rl1987
8df6a65e6b
Fix shellcheck warning in zero_length_keys.sh
2019-02-07 17:23:23 +02:00
Nick Mathewson
a49149fc13
Extract numeric CSPRNG functions into a new module.
...
Some of the code for getting a random value within a range wants to
be shared between crypto_rand() and the new crypto_fast_rng() code.
2019-02-06 22:06:05 -05:00
Nick Mathewson
21d184a184
Remove extraneous #if/#endif wrapper in crypto_rand.c
...
I don't know how this got here, but this kind of a wrapper only
belongs in a header file.
2019-02-06 22:05:39 -05:00
Nick Mathewson
8ca808f81d
Code for anonymous mappings via mmap() or CreateFileMapping().
...
Using an anonymous mmap() is a good way to get pages that we can set
kernel-level flags on, like minherit() or madvise() or mlock().
We're going to use that so that we can make uninheritable locked
pages to store PRNG data.
2019-02-06 22:03:30 -05:00
rl1987
daff9e1ba1
Fix shellcheck warning in fuzz_static_testcases.sh
2019-02-06 11:01:22 +02:00
Roger Dingledine
bfd1d70243
Merge branch 'maint-0.3.5'
2019-02-05 08:10:43 -05:00
Roger Dingledine
bca25eebfb
Merge branch 'maint-0.3.4' into maint-0.3.5
2019-02-05 08:10:14 -05:00
Roger Dingledine
8ea98c0f4c
Merge branch 'maint-0.3.3' into maint-0.3.4
2019-02-05 08:09:47 -05:00
rl1987
3f5459cb95
Fix all instances of SC2015 in test_keygen.sh
2019-02-01 21:41:14 +02:00
rl1987
3ca1d58561
Fix SC2064
2019-02-01 21:26:29 +02:00
rl1987
82813315ed
Fix instances of SC2086 in test_keygen.sh
2019-02-01 21:24:06 +02:00
rl1987
a84dc1973b
Fix instances of SC2006 in test_keygen.sh
2019-02-01 21:15:10 +02:00
rl1987
10455aeff2
Fix shellcheck warnings in test_rust.sh
2019-02-01 20:53:40 +02:00
Nick Mathewson
4d7a0a1310
Update Cargo.lock with new comment; suppress 29244.
2019-02-01 16:38:23 +01:00
José M. Guisado
cb1072790f
Warn about missing ContactInfo when MyFamily set
...
Operators should be warned when setting MyFamily in
addition to missing ContactInfo
Signed-off-by: José M. Guisado <guigom@riseup.net>
2019-01-31 13:27:42 +01:00
Nick Mathewson
bbd893d6bd
Write consensus files in binary mode
...
This will help us out on windows now that we mmap files. Fixes part
of ticket 28614.
2019-01-29 16:18:41 +01:00
rl1987
790150e57a
Allow empty username/password in SOCKS5 username/password auth message
2019-01-26 11:06:33 +02:00
Nick Mathewson
d9010c5b67
One more 32-bit clang warning
2019-01-24 15:23:06 -05:00
Nick Mathewson
e19222a0da
Use tt_u64_op() in test_circuitpadding.c to fix compilation warnings
...
Fixes bug 29169.
2019-01-24 13:20:21 -05:00
Neel Chauhan
c985940de9
Add version 3 onion service support to HSFETCH
2019-01-24 10:22:41 -05:00
Nick Mathewson
bbe417ae8f
Merge branch 'ticket28668_035' into ticket28668_040
2019-01-23 17:08:36 -05:00
Nick Mathewson
d71ca39682
Another case of possible gmtime angst.
2019-01-23 17:08:23 -05:00
Suphanat Chunhapanya
238a9080c6
hs-v3: add an option param to safe log functions
...
We add an option param to safe_str and safe_str_client because in
some case we need to use those functions before global_options is set.
2019-01-24 04:31:18 +07:00
Suphanat Chunhapanya
8de735f068
hs-v3: fix use after free in client auth config
...
We accidentally use `auth` after freeing it in
client_service_authorization_free. The way to solve it is to
free after using it.
2019-01-24 04:31:07 +07:00
Nick Mathewson
d23704bf26
Merge branch 'ticket28668_035' into ticket28668_040
2019-01-23 14:50:22 -05:00
David Goulet
2d74da3d0e
test: Fix a warning underflow in rend_cache/clean
...
Because the test is adding entries to the "rend_cache" directly, the
rend_cache_increment_allocation() was never called which made the
rend_cache_clean() call trigger that underflow warning:
rend_cache/clean: [forking] Nov 29 09:55:04.024 [warn] rend_cache_decrement_allocation(): Bug: Underflow in rend_cache_decrement_allocation (on Tor 0.4.0.0-alpha-dev 2240fe63feb9a8cf)
The test is still good and valid.
Fixes #28660
Signed-off-by: David Goulet <dgoulet@torproject.org>
2019-01-23 13:11:49 -05:00
Nick Mathewson
6144cf99ad
Capture more BUG warnings in util/time test
...
These are ones that happen on windows only.
Fixes bug 29161.
2019-01-23 12:37:12 -05:00
Nick Mathewson
54c9c8b04f
If address/get_if_addrs6 can't findipv6, log WARN, not ERR
...
Fixes 29160, and allows 28668 (treating ERR logs as test failures)
to procede.
2019-01-23 12:04:57 -05:00
Nick Mathewson
adeeb8841e
Merge branch 'maint-0.3.5'
2019-01-23 11:18:14 -05:00
rl1987
712a622fce
Log an HSDesc we failed to parse at Debug loglevel
2019-01-23 10:37:10 -05:00
Peter Gerber
db3ee1d862
Allow getsockopt(…, SOL_SOCKET, SO_ACCEPTCONN, …) in sandbox
...
SO_ACCEPTCONN checks whether socket listening is enabled and is
used ever since 9369152aae
has been merged.
Closes ticket #29150
2019-01-22 21:51:25 +00:00
Nick Mathewson
8e1e71cc0d
Merge branch 'bug29122'
2019-01-22 14:31:01 -05:00
George Kadianakis
6243133a71
Fix intermittent failures of test_circuitpadding_wronghop().
...
We fix it by disabling the scheduling of actual padding.
Fixes #29122 .
2019-01-22 14:30:43 -05:00
Nick Mathewson
21dd3ece62
Merge branch 'maint-0.3.5'
2019-01-22 11:55:56 -05:00