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
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
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
Nick Mathewson
4159d103d6
Merge branch 'bug29042_035' into maint-0.3.5
2019-01-22 11:55:53 -05:00
rl1987
00fff96e48
Fix shellcheck warning in test_rebind.sh
2019-01-22 15:14:16 +02:00
Nick Mathewson
d1af4d65df
Merge branch 'maint-0.3.5'
2019-01-18 12:25:08 -05:00
Nick Mathewson
761f1bf71e
Merge branch 'maint-0.3.3' into maint-0.3.4
2019-01-18 12:25:08 -05:00
Nick Mathewson
4cca7fb99b
Merge branch 'maint-0.2.9' into maint-0.3.3
2019-01-18 12:25:08 -05:00
Nick Mathewson
a8580a6836
Merge branch 'maint-0.3.4' into maint-0.3.5
2019-01-18 12:25:08 -05:00
Nick Mathewson
67f275f8da
Bump to 0.4.0.1-alpha-dev
2019-01-18 10:08:57 -05:00
Nick Mathewson
81f1b89efc
Better failure message on stochastic test failure
2019-01-17 17:27:13 -05:00
Nick Mathewson
c08fc2e19e
Speed up the deterministic prng in test_prob_distr, by a lot.
...
Using a single xof object and squeezing it repeatedly should make
everything MUCH faster here.
2019-01-17 16:10:02 -05:00
Nick Mathewson
f632335feb
Fix users of base32_decode to check for expected length in return.
...
Also, when we log about a failure from base32_decode(), we now
say that the length is wrong or that the characters were invalid:
previously we would just say that there were invalid characters.
Follow-up on 28913 work.
2019-01-17 13:32:19 -05:00
Nick Mathewson
77712a5fa2
Merge remote-tracking branch 'tor-github/pr/645'
2019-01-17 12:04:50 -05:00
Nick Mathewson
3da3aca08f
Fix a LOG_ERR message from test_pt.c
...
Fixes an instance of ticket28668.
2019-01-16 15:54:35 -05:00
Nick Mathewson
3baf99e81b
Merge branch 'ticket28668_035' into ticket28668_040
2019-01-16 15:54:31 -05:00
Nick Mathewson
f684cd8005
Fail any unit test that causes an unhandled LD_BUG or LOG_ERR
...
Closes ticket 28668.
2019-01-16 15:47:33 -05:00
Nick Mathewson
16430fdaf5
Merge branch 'maint-0.3.5'
2019-01-16 14:43:53 -05:00
Kris Katterjohn
cbcf75d728
Update and fix a couple of comments in meminfo.c
...
This fixes a typo and also notes that HW_PHYSMEM64 is defined on
NetBSD (not just OpenBSD).
Signed-off-by: Kris Katterjohn <katterjohn@gmail.com>
2019-01-16 14:40:15 -05:00
Kris Katterjohn
0f3d88a159
Use HW_PHYSMEM instead of HW_USERMEM in get_total_system_memory_impl
...
The code checked for sysctl being available and HW_PHYSMEM being
defined, but HW_USERMEM was actually being used with sysctl instead
of HW_PHYSMEM.
The case for OpenBSD, etc. use HW_PHYSMEM64 (which is obviously a
64-bit variant of HW_PHYSMEM) and the case for OSX uses HW_MEMSIZE
(which appears to be a 64-bit variant of HW_PHYSMEM).
Signed-off-by: Kris Katterjohn <katterjohn@gmail.com>
2019-01-16 14:40:15 -05:00
Nick Mathewson
0981ac4c59
Log more messages when failing to decode RSA keys
...
We log these messages at INFO level, except when we are reading a
private key from a file, in which case we log at WARN.
This fixes a regression from when we re-wrote our PEM code to be
generic between nss and openssl.
Fixes bug 29042, bugfix on 0.3.5.1-alpha.
2019-01-16 14:35:30 -05:00
Nick Mathewson
2f683465d4
Bump copyright date to 2019
2019-01-16 12:33:22 -05:00
Nick Mathewson
efe55b8898
Bump copyright date to 2019.
2019-01-16 12:32:32 -05:00
Nick Mathewson
dd524c6335
Bump to 0.4.0.1-alpha
2019-01-16 08:32:09 -05:00
Nick Mathewson
b169c8c14f
Merge remote-tracking branch 'asn-github/adaptive_padding-final'
2019-01-14 14:48:00 -05:00
Nick Mathewson
691dec5d46
Merge branch 'maint-0.3.5'
2019-01-14 14:02:42 -05:00
rl1987
9d9e71824c
Rework rep_hist_log_link_protocol_counts()
2019-01-14 14:01:55 -05:00
Nick Mathewson
99947c3ce0
Merge remote-tracking branch 'teor/bug29015'
2019-01-14 13:59:07 -05:00