Commit Graph

153 Commits

Author SHA1 Message Date
Joseph Birr-Pixton a1ee6d28ac Rework certificate errors
rustls now has its own `CertificateError` type that aims to cover
most common errors with certificate validation.
2023-01-25 12:24:25 +00:00
Joseph Birr-Pixton a41ca7b8c2 Remove client session storage from tlsclient example
Persisting sessions to disk is now harder -- though not impossible.
But probably isn't pulling its weight in example code.
2023-01-24 13:53:34 +00:00
Dirkjan Ochtman f7267730db Update license to use SPDX-compatible operators 2023-01-16 11:18:24 +01:00
Dirkjan Ochtman a5d8f0ce87 examples: remove authors from Cargo metadata (per RFC 3052) 2023-01-16 11:18:24 +01:00
Dirkjan Ochtman b4e48468a0 examples: set rust-version to help guide clippy 2023-01-16 11:18:24 +01:00
Joseph Birr-Pixton 38e26f5755 Support IP address names in default verify_server_cert() 2023-01-13 15:43:30 +00:00
Dirkjan Ochtman 6e6baa91e7 Upgrade to 2021 edition 2023-01-13 12:11:26 +01:00
Joseph Birr-Pixton 425c6c2443 Fix clippy nightly nits 2022-11-27 08:12:39 -08:00
Francis Russell 0e07a40c7f Update `tlsserver-mio` usage. 2022-10-31 10:21:28 +01:00
Francis Russell aa7e96ec82 Update `tlsclient-mio` usage. 2022-10-31 10:21:28 +01:00
Josh Aas 5ada872296 Update paths to test/example programs. 2022-09-05 12:10:08 +02:00
Josh Aas 1289455f17 Move other examples to top-level example directory. 2022-09-05 12:10:08 +02:00
Josh Aas ba6b1d7ecd Use standard binary paths for example programs. 2022-09-05 12:10:08 +02:00
Josh Aas aad3a5805d Rename rustls-mio to examples. 2022-09-05 12:10:08 +02:00
Joseph Birr-Pixton 1d70e45af6 Move to using cargo workspaces
- rustls (the library) now lives in rustls/
- the mio examples/tests continue to live in rustls-mio, but
  are built by (eg) `cargo test` in the root of the repo.
2019-08-24 20:55:20 +01:00
Joseph Birr-Pixton 708b0a2ef7 Benchmark memory usage 2019-06-16 20:57:14 +01:00
Joseph Birr-Pixton 225339686e bench: fix integer overflow for large multipliers 2019-06-15 20:51:06 +01:00
Joseph Birr-Pixton f535d6483c bench: support BENCH_MULTIPLIER 2019-06-04 21:28:38 +01:00
Joseph Birr-Pixton 76b7bb7a9f Try both ipv4 and ipv6 localhost 2019-03-10 13:55:12 +00:00
Joseph Birr-Pixton edf98927dc Split up mio-using examples/tests 2019-03-08 19:04:05 +00:00
Erick Tryzelaar b3a06b9a38 Migrate examples into a subcrate
Fuchsia doesn't support yet mio, and there is unfortunately no
way to run the rustls on Fuchsia as the crate is currently setup.
Unfortunately there is no way to make dev-dependencies optional (see
https://github.com/rust-lang/cargo/issues/1596), so this patch
migrates the examples into a subcrate so we can compile the
rustls tests without mio.
2019-03-08 17:06:05 +00:00
Erick Tryzelaar 3dd033fdf6 env_logger 0.6.1 replaced `.parse` with `.parse_filters`
env_logger 0.6.1 deprecated `Builder::parse`, and replaced it with
`Builder::parse_filter`.
2019-03-07 20:41:55 -08:00
Joseph Birr-Pixton 40bd3d1aa8 Fix bogo tests:
- disable SHA1 invalid signature tests
- test for golang sending an internal error alert when
  we don't offer its selected signature algorithm
- also look for 'no common signature algorithms' in SHA1 tests
2019-01-27 18:39:19 +00:00
Joseph Birr-Pixton 5c2c750f5b cargo fix --edition-idioms --all-features 2019-01-20 17:25:45 +00:00
Joseph Birr-Pixton 46ba147d2b cargo fix --edition --all-features 2019-01-20 17:24:27 +00:00
Dirkjan Ochtman db70d79625 Expose ALPN protocols as bytes instead of String (fixes #115) 2019-01-11 21:34:54 +00:00
Joseph Birr-Pixton e0b9be1970 Support stateful resumption in TLS1.3
Prior to this we only supported ticket-style resumption.
2018-09-30 11:58:06 +01:00
Joseph Birr-Pixton b838ec0c4e Track bogo additional tests/changes 2018-09-16 23:57:39 +01:00
Joseph Birr-Pixton 5563722f56 Correct bogo TLS1.3 variant selection 2018-08-11 09:04:25 +01:00
Joseph Birr-Pixton 4f8455c4fb Provide a separate stream for 0rtt client data
This adds:

- ClientSession::early_data() which may return a WriteEarlyData
  if early data is possible with the server.  WriteEarlyData
  implements io::Write and also tells how many bytes can be
  written.
- ClientSession::is_early_data_accepted which returns true if
  early data was signalled as accepted by the server.

Update the 0rtt example with some docs for this.
2018-07-31 20:23:17 +01:00
Yiming Jing 66131c1846 Add a simple example to test against Cloudflare's 0-rtt server implementation 2018-07-31 20:23:17 +01:00
Yiming Jing 3ef32a23d2 Add bogo tests for TLS 1.3 0-RTT 2018-07-31 20:23:17 +01:00
Joseph Birr-Pixton 8a78639c7f Fix other tests 2018-06-09 16:00:51 +01:00
Joseph Birr-Pixton 320707f25a Update dependencies 2018-06-09 15:31:30 +01:00
Joseph Birr-Pixton 6b255981ed Demo setting protocol version in tlsclient/tlsserver 2018-06-07 21:11:58 +01:00
Joseph Birr-Pixton 794794ea27 Support ECDSA in benchmarks 2018-06-03 12:18:10 +01:00
Joseph Birr-Pixton 5a4d3d7827 Extend bogo testing of signature algorithms 2018-06-02 15:54:22 +01:00
Joseph Birr-Pixton 3912f0b701 Enable ECDSA bogo tests 2018-06-01 23:45:06 +01:00
Joseph Birr-Pixton ae70e4a9e1 Add support for vectored IO
This is abstract: behind a trivial rustls-specific trait so it
can be tested and doesn't rely on implementation details of vecio.
2018-05-30 21:31:56 +01:00
Joseph Birr-Pixton 673a082fff Correct more clippy lints 2018-05-28 11:14:13 +01:00
Joseph Birr-Pixton 91fd2398f5 Correct some clippy warnings 2018-05-27 22:12:21 +01:00
Joseph Birr-Pixton 5fa7277797 Bubble up errors in set_single_cert (et al) 2018-05-23 21:17:14 +01:00
Joseph Birr-Pixton 87ab639360 Enable quic tests in bogo
- bogo_shim needs quic feature
- provide/check quic transport params in bogo_shim
- reject servers that handshake at TLS1.2, but include a quic transport
  params extension.
- don't expose quic transport params extension for TLS1.2 clients.

These last two match BoringSSL.
2018-05-14 21:00:17 +01:00
Joseph Birr-Pixton 2213ddc578 Use KeyLogFile in examples. 2018-05-12 20:44:32 +01:00
Joseph Birr-Pixton 714fc9a312 Correct bench behaviour with new resumption defaults 2018-04-29 12:17:32 +01:00
Joseph Birr-Pixton 32eeec61d3 Update bogo config 2018-04-01 16:02:00 +01:00
Joseph Birr-Pixton b4a9bb3ce5 Include only read_tls time in receive performance 2018-01-06 21:51:20 +00:00
Joseph Birr-Pixton c8c32f55b1 tlsserver: don't close TCP connection until done 2017-12-31 22:22:55 +00:00
Joseph Birr-Pixton e66f0525c1 Merge remote-tracking branch 'origin/pr/139' into jbp-get-cs 2017-12-31 12:43:38 +00:00
Joseph Birr-Pixton 777dd534e7 bogo/bogo_shim updates
bogo_shim: don't remember kx hints
2017-12-30 12:29:09 +00:00