Nick Mathewson
17273d38d9
Make rsa::PublicKey derive Debug.
2020-10-02 14:03:15 -04:00
Nick Mathewson
98b4e004a7
Remove an unwrap() from tor-cert.
2020-10-02 12:05:16 -04:00
Nick Mathewson
e0941523eb
Use batch verification in client<->relay handshake.
2020-10-02 12:01:46 -04:00
Nick Mathewson
610739c139
Enable batch ed25519 verification.
2020-10-02 11:53:50 -04:00
Nick Mathewson
8c2aae10f7
netdoc: remove some outdated/unused stuff.
2020-10-02 11:21:59 -04:00
Nick Mathewson
1adc6c40fb
authcert: test error recovery.
2020-10-02 10:59:55 -04:00
Nick Mathewson
38685d3cc1
Netdoc: use a more bulletproof pattern to prevent infinite loops
...
Previously our "read a bunch of this kind of document" functions had
a common problem, where they could get into an infinite loop if the
underlying "read this kind of document" function failed without
consuming any tokens.
I _think_ that this error case was unreachable (or else fuzzing
would have found it, right?), but proving that it was unreachable
was a bit fiddly, and I couldn't follow my own arguments about it.
Instead, we just store the position of the reader before we start
reading, and make sure that it has consumed at least some data. If
it hasn't, then we consume and drop a token before advancing to the
next document.
2020-10-02 10:15:14 -04:00
Nick Mathewson
4a1f319ffe
authcert: add tests for several ways certs can fail.
2020-10-02 09:50:47 -04:00
Nick Mathewson
17e82a50c2
authcert: fix an error, and detect mismatched fingerprints
2020-10-02 09:49:27 -04:00
Nick Mathewson
e6ba2ac8ed
netdoc: rename BadVersion to BadTorVersion for clarity
2020-10-01 10:23:22 -04:00
Nick Mathewson
5ff859b89d
improve errors in authcert.rs
2020-10-01 10:21:25 -04:00
Nick Mathewson
a5f382aa61
Remove redundant signature check in authcert parsing.
2020-09-30 18:50:31 -04:00
Nick Mathewson
d4d3e1c3db
More tests on parsing, plus remove dead code.
2020-09-30 18:46:27 -04:00
Nick Mathewson
c4d0ffa859
Start on some parser backend tests
2020-09-30 14:20:01 -04:00
Nick Mathewson
035e0422d9
tokenize: accept base64 with funny linewraps.
2020-09-30 14:19:07 -04:00
Nick Mathewson
b57692aacd
README edits
2020-09-30 10:51:31 -04:00
Nick Mathewson
9cab4e0f14
More tests for tokenize.rs, with some bugfixes
2020-09-30 09:39:52 -04:00
Nick Mathewson
59c46ec27b
Start on some tests for parse::tokenize.rs
2020-09-29 17:30:48 -04:00
Nick Mathewson
aafef113b3
Add tests for macros module in tor-netdoc.
...
Also improve output for multi-keyword tokens.
2020-09-29 17:02:56 -04:00
Nick Mathewson
beee7a7f2a
cargo upgrade
2020-09-29 16:43:16 -04:00
Nick Mathewson
d0bed5e647
Throw a rudimentary CLI onto client-demo.
2020-09-29 16:42:27 -04:00
Nick Mathewson
91b7c7b874
Tests and minor debugging in tor_netdoc::types::policy
2020-09-29 11:34:07 -04:00
Nick Mathewson
e02cccdf00
More tests for tor_netdoc::types
2020-09-29 10:15:08 -04:00
Nick Mathewson
788e0347cb
Move around the modules inside tor-netdoc.
...
This change just gives them a more logical breakdown into parsing,
documents, and misc other types.
2020-09-29 09:05:17 -04:00
Nick Mathewson
b0a53d4d40
Move RelayCell into a more reasonable place.
2020-09-29 08:43:13 -04:00
Nick Mathewson
5844037f89
Remove idmap as needlessly complex.
2020-09-29 08:24:51 -04:00
Nick Mathewson
5bb01ba305
make it work on rust 1.45
2020-09-28 21:57:29 -04:00
Nick Mathewson
8d5957ca4b
test vectors for cell crypto.
2020-09-28 21:36:10 -04:00
Nick Mathewson
f43db0d048
Mark most of the cell crypto code as crate-local.
2020-09-28 18:20:16 -04:00
Nick Mathewson
56101a0673
Add a round-trip test for cell encryption.
2020-09-28 18:16:30 -04:00
Nick Mathewson
3bcd647263
tor-cert: comment out cert-generation code
...
This won't be used until we have onion service or relay support.
2020-09-28 16:19:23 -04:00
Nick Mathewson
98ab84e774
Rename remaining get_ accessors
2020-09-28 16:13:14 -04:00
Nick Mathewson
9b276e6a5a
tor_cert: rename accessors
2020-09-28 16:01:33 -04:00
Nick Mathewson
22c84aeaf6
Tests for CircTarget::linkspecs()
2020-09-28 15:53:23 -04:00
Nick Mathewson
05da5a7f73
Rename some identifiers in tor-linkspec.
...
By convention, rust accessor functions don't start with 'get'.
2020-09-28 15:29:39 -04:00
Nick Mathewson
3b3a6736f6
Rename ExtendTarget to CircTarget.
2020-09-28 15:22:24 -04:00
Nick Mathewson
079b38a609
Rewrite the TODO file.
2020-09-28 15:04:25 -04:00
Nick Mathewson
190d9e38f2
Tests for tor-cert
2020-09-28 12:02:32 -04:00
Nick Mathewson
52016aa35b
A few more unit tests for tor-cell
2020-09-28 11:01:59 -04:00
Nick Mathewson
397d753e4e
Fix a few clippy issues
2020-09-27 03:30:09 -04:00
Nick Mathewson
2feb750ba1
fix fuzzing targets that broke from recent refactoring
2020-09-27 03:16:53 -04:00
Nick Mathewson
34fb048e25
Tests for relay cell encoding/decoding.
2020-09-27 02:17:37 -04:00
Nick Mathewson
4ea9bb6153
Tests for channel-cell codec
2020-09-27 01:37:28 -04:00
Nick Mathewson
eba1d796fb
Add tests for certs cell accessors
2020-09-27 00:46:52 -04:00
Nick Mathewson
13edb7b10e
Test a few more channel cell types.
2020-09-27 00:35:26 -04:00
Nick Mathewson
096f0d499f
test ipv6 connected cell
2020-09-27 00:09:42 -04:00
Nick Mathewson
31b8d95c2f
Tests for Unrecognized and Data relay messages
2020-09-27 00:01:55 -04:00
Nick Mathewson
7096a6b774
Add tests for END_REASON_EXITPOLICY messages.
2020-09-26 23:44:57 -04:00
Nick Mathewson
a0a3004a82
More tests for begin cells, plus fixes
2020-09-26 23:38:22 -04:00
Nick Mathewson
207a971cd2
add a spec conformance comment
2020-09-26 19:27:15 -04:00