Commit Graph

3357 Commits

Author SHA1 Message Date
Anthony Ramine 56564c7cb6 Tweak yet again the boring error reporting
We also omit file and line in ErrorStack itself now too.

ErrorStack is the wrapped error type returned by
hyper_boring::HttpsConnector::call.
2021-03-15 11:26:09 +01:00
Ivan Nikulin 7f6bd732e4 Bump boring to 1.1.3 2021-03-11 21:28:57 +00:00
Ivan Nikulin c11de09195
Merge pull request #18 from nox/rm-error-file-line
Remove file/line from Display for HandshakeError
2021-03-11 21:28:00 +00:00
Anthony Ramine 6f4ecb3d90 Remove file/line from Display for HandshakeError 2021-03-11 14:42:00 +01:00
Ivan Nikulin ebab82eb5b Bump boring to 1.1.2, tokio-boring 2.1.1 2021-03-09 17:47:01 +00:00
Ivan Nikulin 2667b0fdee
Merge pull request #17 from nox/handshake-error
Improve error printing
2021-03-09 17:43:44 +00:00
Anthony Ramine 8fc84f01e0 Add tokio_boring::HandshakeError::as_source_stream 2021-03-09 16:26:31 +01:00
Anthony Ramine 66cabd882c Introduce MidHandshakeSslStream::into_parts 2021-03-09 16:26:30 +01:00
Anthony Ramine 51734088ef Print handshake errors in a better way
We completely ignore the ErrorStack value if it is
an X509 verification failure.
2021-03-09 16:26:30 +01:00
Anthony Ramine 8274492b95 Separate errors in an error stack better 2021-03-05 16:24:11 +01:00
Ivan Nikulin adb00bde17 Bump boring to 1.1.1 2021-03-01 12:54:56 +00:00
Ivan Nikulin 8b58d3b5aa
Merge pull request #16 from nox/OXY-262
Make Display for Error more readable
2021-03-01 11:32:24 +00:00
Anthony Ramine be0b2605ff Make Display for Error more readable 2021-03-01 12:09:04 +01:00
Ivan Nikulin ed3279c4f1 Bump feature version on all packages instead. 2021-02-24 11:52:24 +00:00
Ivan Nikulin 3772a53bc0 Bump boring-sys to 1.0.5. Bump boring to 1.0.4 2021-02-24 11:06:01 +00:00
Ivan Nikulin af25e9c9a0
Merge pull request #14 from except/bssl-specific-options
Enable various client features of bssl
2021-02-24 02:51:33 +00:00
Ivan Nikulin 3ecbd282a4
Merge pull request #13 from nox/oxy-221
Bind the select_cert hook and allow users to inspect extensions early
2021-02-23 12:46:09 +00:00
Anthony Ramine 86691d8d72 Introduce ExtensionType for the arg of get_extension 2021-02-22 14:23:26 +01:00
Anthony Ramine f831b25bf1 Introduce ClientHello::get_extension 2021-02-22 14:20:50 +01:00
Hasan Gondal ee94b2a01d Add support for SSL_CTX_set1_curves 2021-02-20 23:58:25 +00:00
Hasan Gondal 6cfc713483 Enable various client features of bssl 2021-02-19 22:52:38 +00:00
Anthony Ramine 9c5c7e3db5 Introduce set_select_certificate_callback 2021-02-19 16:11:14 +01:00
Ivan Nikulin 8b6767094d
Merge pull request #11 from jedisct1/bindgen
Use bindgen to automatically generate boring-sys
2021-02-19 12:42:39 +00:00
Ivan Nikulin d07f6e8639
Merge pull request #12 from cloudflare/tokio1
Sync upstream changes to support tokio 1.x
2021-02-18 17:19:20 +00:00
Ivan Nikulin 10488a85f3 Sync upstream changes to support tokio 1.x
Bump major versions of hyper-boring and tokio-boring.
2021-02-18 16:12:19 +00:00
Frank Denis 05c6a41270 Use bindgen to automatically generate boring-sys
This ensures that all the Rust functions, types and constants
always match the actual BoringSSL definitions.

It also removes quite a lot of manually maintained code, as well
as the need for systest.

The value for `SslOptions::ALL`, for example, was wrong. On current
BoringSSL versions, this is a no-op, and is set to `0`.

Clearing it does nothing. So, the `clear_ctx_options` test, that
passed by accident, was adjusted to use a different option.

The `libc` crate is not required, as we only use it for types that
are already defined in the standard library. It was removed from
`boring-sys`. The same can be done to other crates later.
2021-02-12 15:03:45 +01:00
Ivan Nikulin 0c9166dd74 Make new clippy happy 2021-02-11 19:35:11 +00:00
Ivan Nikulin 4b5ef5e182 Bump boring-sys to 1.0.4 2021-02-11 18:39:32 +00:00
Ivan Nikulin e753fd5d8f
Merge pull request #9 from ghedo/boring-next
Update boringssl submodule pointer
2021-02-11 18:37:39 +00:00
Alessandro Ghedini 3e513cc619 Update boringssl submodule pointer
* 2020-11-09 Document X509V3_add1_i2d and friends.
* 2020-11-09 Re-reformat x509.h.
* 2020-11-11 aarch64: Fix name of gnu property note section
* 2020-11-10 Reformat and convert comments in asn1.h.
* 2020-11-10 Unwind M_ASN1_* macros for primitive types.
* 2020-11-10 Switch M_ASN1_TIME macros within the library.
* 2020-11-11 Remove the legacy MSTRING M_ASN1 macros.
* 2020-11-10 Rearrange ASN1_STRING_copy slightly.
* 2020-11-09 Document some defaults for the EVP RSA interface.
* 2020-11-10 Document the basic ASN1_STRING functions.
* 2020-11-10 Remove some unnecessary pointer casts.
* 2020-09-04 Add APIs for checking ASN.1 INTEGERs.
* 2020-11-11 Const-correct and document more X509 functions.
* 2020-11-13 Fix NETSCAPE_SPKI_get_pubkey documentation.
* 2020-11-18 Always check the TLS 1.3 downgrade signal.
* 2020-11-19 Rename the master_key field in SSL_SESSION to secret.
* 2020-11-19 Add FIPS self test for the TLS KDF.
* 2020-11-19 acvp: add SHA-512/256 support.
* 2020-11-19 Document ASN1_STRING.
* 2020-11-30 Add digest.h to self_check.c
* 2020-11-30 util/fipstools/acvp/acvptool: buffer signal channel to avoid losing signal
* 2020-11-30 Poly1305: Use |size_t|; assert |poly1305_state| is large enough.
* 2020-11-25 Improve sk_dup.
* 2020-12-01 aesv8-armx.pl: avoid 32-bit lane assignment in CTR mode
* 2020-12-01 Only accept little-endian ARM and MIPS variants in base.h.
* 2020-12-02 Update FIPS.md to include latest FIPS certificate.
* 2020-12-02 draft-ietf-tls-certificate-compression is now RFC 8879.
* 2020-12-02 Get closer to Ed25519 boundary conditions.
* 2020-12-01 PWCT failures should clear the generated key.
* 2020-10-29 Fix EDIPartyName parsing and GENERAL_NAME_cmp.
* 2020-12-08 Const-correct GENERAL_NAME_cmp.
* 2020-12-07 acvp: fix subprocess_test.go
* 2020-12-07 acvp: tweak config
* 2020-12-07 acvp: add TLS KDF support
* 2020-03-11 Implement GREASE for ECH (draft-ietf-tls-esni-08).
* 2020-12-08 Reject bad ASN.1 templates with implicitly-tagged CHOICEs.
* 2020-12-08 Align armv8.pl references to OPENSSL_armcap_P.
* 2020-12-08 acvp: add support for KAS
* 2020-12-10 Add TLS_KDF to documented break tests.
* 2020-12-09 Skip ASN.1 template tests in Windows shared library builds.
* 2020-12-01 Switch to passive entropy collection for Android FIPS.
* 2020-12-11 Finish switching to NASM.
* 2020-12-11 Remove unused Netware codepaths in x86 perlasm.
* 2020-12-10 Move DH code into the FIPS module.
* 2020-12-10 acvp: add support for finite-field Diffie–Hellman.
* 2020-12-14 Include bn.h from bn/internal.h
* 2020-12-02 Fix ChaCha20-Poly1305 x86-64 asm on Windows
* 2020-12-15 Check for trailing data in X509Test.GeneralName.
* 2020-12-15 Use stdlib.h instead of cstdlib in span.h.
* 2020-12-14 Add support for the new QUIC TLS extension codepoint
* 2020-12-14 Move DH parameter generation out of the FIPS module.
* 2020-12-16 Revert "Add support for the new QUIC TLS extension codepoint"
* 2020-12-16 Use more efficient std::string::find overload.
* 2020-12-17 Export tool_sources to GN.
* 2020-12-16 Allow some non-minimal lengths in BER.
* 2020-12-17 acvp: load config later.
* 2020-12-17 acvp: fix silly errors.
* 2020-12-22 Add .text.unlikely.* pattern to fips_shared.lds.
* 2020-12-23 acvp: better document the subprocess protocol.
* 2020-12-23 Gerrit ignores <sup>; use Unicode superscript instead.
* 2020-12-21 Update ECH GREASE to draft-ietf-tls-esni-09
* 2020-12-21 Fix awkward wording in comment.
* 2021-01-05 Fix chacha20_poly1305_x86_64.pl comments.
* 2020-12-17 acvp: add tests
* 2021-01-06 Update third_party/googletest.
* 2020-12-22 delocate: support alternative comment indicators
* 2020-12-22 delocate: eliminate expression from vpaes assembly.
* 2021-01-06 Add some OpenSSL-compatibility aliases
* 2020-12-17 acvp: drop subprocess_test.go
* 2021-01-06 Update HPKE to draft-irtf-cfrg-hpke-07.
* 2021-01-07 A handful more compatibility functions.
* 2021-01-06 Optimize suffix building in FileTest::ReadNext().
* 2021-01-08 Use gai_strerrorA on Windows.
* 2020-10-19 Add ASM optimizations for Windows on Arm
* 2020-12-22 delocate: handle Aarch64 assembly in parser.
* 2020-10-29 Send ECH acceptance signal from backend server.
* 2021-01-12 Test that ALPS can be deferred to the ALPN callback.
* 2021-01-12 runner: Allow tokbind without RI/EMS in TLS 1.3.
* 2021-01-12 Fix ALPS state machine in QUIC servers.
* 2021-01-12 Make QUIC work with -async tests.
* 2021-01-12 Make QUIC tests work with early data.
* 2021-01-12 Run extension tests at all protocols.
* 2021-01-12 Replace MockQUICTransport tags with record types.
* 2020-12-22 delocate: preprocess perlasm output on Aarch64
* 2021-01-14 Add support for the new QUIC TLS extension codepoint
* 2021-01-15 doc: fix SSL_set0_rbio
* 2021-01-18 acvp: add XTS support.
* 2021-01-19 Fix client 0-RTT handling with ALPS.
* 2021-01-08 Add DH_compute_key_padded.
* 2020-12-22 delocate: support Aarch64
* 2021-01-19 Make BN_clear_free a wrapper around BN_free.
* 2021-01-20 Define TLSEXT_TYPE_quic_transport_parameters to the old code point for now.
* 2021-01-21 Fix comments that refer to old draft of HPKE.
* 2021-01-21 acvp: don't advertise SHA-1 RSA signature generation.
* 2021-01-21 acvp: drop 3DES fields from output when unused.
* 2021-01-17 Support cross-compiling AArch64 FIPS to Android.
* 2021-01-22 acvp: update test expectations in light of 8dcdcb39a7
* 2021-01-22 acvp: check that the payloadLen of cipher tests is correct.
* 2021-01-21 Add basic BLAKE2b-256 support.
* 2021-01-25 acvp: update to newer FFDH test.
* 2021-01-19 Add FFDH FIPS self-test.
* 2021-01-27 Support MOVLPS and MOVHPS in delocate.
* 2021-01-27 Benchmark BORINGSSL_self_test in FIPS mode.
* 2021-01-27 acvp: move CMAC verification into the module wrapper.
* 2021-01-28 Use ID instead of Id in Go.
* 2021-01-29 Fix TLS13SessionID-TLS13 test.
* 2021-01-29 Revert "Disable check that X.509 extensions implies v3."
* 2021-02-02 Add missing include to self_check.c.
* 2021-02-02 Add various function calls to test_fips.
* 2021-02-04 Include bn/internal.h for non-bcm.c builds.
2021-02-10 12:59:03 +00:00
Ivan Nikulin e473e32ab4 Bump boring-sys to 1.0.3 2021-02-08 13:27:47 +00:00
Ivan Nikulin b581fc54a8
Merge pull request #7 from hayleyjames/master
Include .asm files required for Windows
2021-02-08 13:08:47 +00:00
Hayley James 5a8f7264e4
Include .asm files required for Windows 2021-01-28 13:58:35 +00:00
Ivan Nikulin 97029c4d0b Bump hyper-boring version 2021-01-20 11:27:35 +00:00
Ivan Nikulin 3364ecc2e7
Merge pull request #6 from gabi-250/ipv6-hosts
Ensure the host can be parsed as an IPv6 address.
2021-01-20 11:26:25 +00:00
Gabriela Alexandra Moldovan 12d6a27104 Fix clippy warning. 2021-01-08 16:53:20 +00:00
Gabriela Alexandra Moldovan 51e36d1f1a Ensure the host can be parsed as an IPv6 address. 2021-01-08 16:53:17 +00:00
Ivan Nikulin a6fbc0fed2 Bump version 2020-12-23 14:15:50 +00:00
Ivan Nikulin f809be1a90
Merge pull request #5 from cloudflare/err-src-stream
Implement conversion of HandshakeError to the source stream
2020-12-23 14:11:43 +00:00
Ivan Nikulin f40ac2d1ed Implement conversion of HandshakeError to the source stream 2020-12-23 12:25:30 +00:00
Ivan Nikulin 42322f8b1e Make clippy happy 2020-12-03 14:12:46 +00:00
Ivan Nikulin 2fc44386af Add support for wss: scheme in hyper-boring 2020-12-03 01:25:18 +00:00
Ivan Nikulin f8ab082d59
Merge pull request #2 from gabi-250/fix-boring-links
Fix hyper-boring repository link.
2020-11-14 13:57:40 +00:00
Gabriela Alexandra Moldovan 31ed6443b1 Fix boring repository links. 2020-11-14 00:03:43 +00:00
Ivan Nikulin 5a308ba6ab Add publish script 2020-11-12 13:08:13 +00:00
Ivan Nikulin 5afd10b577 Fix boring-sys linking. Bump version. 2020-11-12 13:03:41 +00:00
Ivan Nikulin 2b61e14211 Fix doc comment 2020-11-11 20:40:58 +00:00
Ivan Nikulin fda73f4947 Fix docs 2020-11-11 20:32:53 +00:00
Ivan Nikulin f4096d8afd Add hyper-boring 2020-11-11 20:29:54 +00:00
Ivan Nikulin 548771adb1 Add tokio-boring 2020-11-11 19:26:22 +00:00