Commit Graph

3351 Commits

Author SHA1 Message Date
0x676e67 30cadfb1eb
boring: Add SslCurve `FFDHE2048`/`FFDHE3072` support (#19) 2024-12-17 23:22:56 +08:00
0x676e67 0ee30f7487
boring: update old ciphers patch (#18) 2024-12-17 20:12:33 +08:00
0x676e67 b9e1dbf825 Merge remote-tracking branch 'upstream/master' 2024-12-10 12:00:48 +08:00
Paul Mabileau 49d5a61163 Refactor!: Introduce a Cargo feature for optional Hyper 0 support
Closes #294. Requires breaking changes. The default v0 is changed in
favor of v1, but v0 is still kept available, just in a forced module
path. It enables dependency de-duplication when consuming it.

Signed-off-by: Paul Mabileau <paul.mabileau@harfanglab.fr>
2024-12-07 21:07:31 +00:00
Paul Mabileau e518c2444a Refactor!: Remove strict `TokioIo` response requirement from `hyper_boring::v1::HttpsConnector`
Closes #295.

Signed-off-by: Paul Mabileau <paul.mabileau@harfanglab.fr>
2024-12-07 19:20:22 +00:00
0x676e67 8467142bf2 v4.13.2 2024-12-06 23:02:48 +08:00
0x676e67 cbe77fd2ff
boring: Add SslConnector no default cert verify paths builder (#16) 2024-12-06 23:01:36 +08:00
0x676e67 f1c29d439c sync upstream 2024-12-06 22:59:10 +08:00
Rushil Mehra 4685af00bb Release 4.13.0 2024-11-28 12:47:31 -08:00
Kornel 57fbe0f594 Sync X509StoreBuilder with openssl 2024-11-28 11:48:09 -08:00
Kornel b26b78611b Sync X509VerifyFlags with openssl 2024-11-28 11:48:09 -08:00
Steven Fackler 6ef5c28239 More corresponds from openssl 2024-11-28 11:48:09 -08:00
Kornel 1946603e15 Work around Rust settings inconsistent iOS SDK version 2024-11-28 11:21:39 -08:00
Kornel 81e84c26a2 Clippy 2024-11-28 11:21:39 -08:00
Paul Mabileau 7ac0d2105c Fix Windows build
Only with this does it work for us.

Signed-off-by: Paul Mabileau <paul.mabileau@harfanglab.fr>
2024-11-27 12:56:03 -08:00
0x676e67 8b986e3521 v4.12.1 2024-11-27 19:48:56 +08:00
0x676e67 63d01c439a
Fix Windows build (#13) 2024-11-27 19:47:44 +08:00
0x676e67 5422a6bdce Merge remote-tracking branch 'upstream/master' 2024-11-21 10:02:26 +08:00
Evan Rittenhouse 2b75e1e127 Release 4.12.0 2024-11-20 08:59:31 -08:00
Evan Rittenhouse c113ec5a0d Add bindings for SSL_CB_ACCEPT_EXIT and SSL_CB_CONNECT_EXIT 2024-11-20 08:17:44 -08:00
0x676e67 1893144398
Update README.md 2024-11-15 10:55:58 +08:00
0x676e67 4e819482a1
Update README.md 2024-11-15 10:53:46 +08:00
0x676e67 5ddb1ee185 rename rboring to boring2 2024-11-15 10:44:03 +08:00
0x676e67 837ec6227b rename tokio-rboring to tokio-boring2 2024-11-15 10:42:55 +08:00
0x676e67 6b5844021d rename rboring-sys to boring-sys2 2024-11-15 10:42:09 +08:00
0x676e67 c77b15182d v4.11.1 2024-11-03 21:23:39 +08:00
0x676e67 a712b93e44 Fix X25519_MLKEM768 mapper 2024-11-03 21:23:26 +08:00
0x676e67 6768d3c437
sync upstream (#12)
* Release 4.10.3 (#280)

* Create semgrep.yml

Creating Semgrep.yml file - Semgrep is a tool that will be used to scan Cloudflare's public repos for Supply chain, code and secrets. This work is part of Application & Product Security team's initiative to onboard Semgrep onto all of Cloudflare's public repos.

In case of any questions, please reach out to "Hrushikesh Deshpande" on cf internal chat.

* Add "fips-compat" feature (#286)

This adds a feature to build against a BoringSSL version compatible with
the current boringssl-fips, but _without_ actually enabling the `fips`
feature.

This can be useful to use with `fips-link-precompiled` while using a
custom BoringSSL version based on the older FIPS branch.

* boring-sys: include HPKE header file for bindgen

BoringSSL doesn't expose these APIs for FIPs builds, so we gate them
here as well

* Release 4.11.0

* Add `set_cert_verify_callback` (`SSL_CTX_set_cert_verify`)

Add a wrapper for `SSL_CTX_set_cert_verify`, which allows consumers to
override the default certificate verification behavior.

The binding resembles `SSL_CTX_set_verify`'s.

See
https://docs.openssl.org/master/man3/SSL_CTX_set_cert_verify_callback/
for more details.

* Skip bindgen 0.70's layout tests before Rust 1.77

* (ci): brew link x86 toolchain for macos13 runner

It seems we need to manually symlink the x86_64-unknown-linux-gnu
toolchain for the macos13 runner. Also, we don't need to overwrite the
python version anymore

Fixes https://github.com/cloudflare/boring/issues/285

* feat(boring): Add SSL_CURVE_X25519_MLKEM768 curve binding

---------

Co-authored-by: Rushil Mehra <84047965+rushilmehra@users.noreply.github.com>
Co-authored-by: Hrushikesh Deshpande <161167942+hrushikeshdeshpande@users.noreply.github.com>
Co-authored-by: Alessandro Ghedini <alessandro@cloudflare.com>
Co-authored-by: Evan Rittenhouse <erittenhouse@cloudflare.com>
Co-authored-by: James Larisch <jlarisch@cloudflare.com>
Co-authored-by: Jordan Rose <jrose@signal.org>
Co-authored-by: Rushil Mehra <rmehra@cloudflare.com>
2024-11-03 21:13:37 +08:00
0x676e67 ab7848d878
feat(boring): Add SSL_CURVE_X25519_MLKEM768 curve binding (#11) 2024-11-03 21:12:28 +08:00
Rushil Mehra 7bb3647406 (ci): brew link x86 toolchain for macos13 runner
It seems we need to manually symlink the x86_64-unknown-linux-gnu
toolchain for the macos13 runner. Also, we don't need to overwrite the
python version anymore

Fixes https://github.com/cloudflare/boring/issues/285
2024-10-24 09:49:47 -07:00
Jordan Rose 3044e9ba98 Skip bindgen 0.70's layout tests before Rust 1.77 2024-10-22 16:53:40 -07:00
James Larisch bb373e5550 Add `set_cert_verify_callback` (`SSL_CTX_set_cert_verify`)
Add a wrapper for `SSL_CTX_set_cert_verify`, which allows consumers to
override the default certificate verification behavior.

The binding resembles `SSL_CTX_set_verify`'s.

See
https://docs.openssl.org/master/man3/SSL_CTX_set_cert_verify_callback/
for more details.
2024-10-22 00:05:57 -07:00
Evan Rittenhouse ec3b412cc8 Release 4.11.0 2024-10-17 10:18:52 -07:00
Evan Rittenhouse 80e3aab37d boring-sys: include HPKE header file for bindgen
BoringSSL doesn't expose these APIs for FIPs builds, so we gate them
here as well
2024-10-17 10:18:52 -07:00
Alessandro Ghedini a57cb3a997
Add "fips-compat" feature (#286)
This adds a feature to build against a BoringSSL version compatible with
the current boringssl-fips, but _without_ actually enabling the `fips`
feature.

This can be useful to use with `fips-link-precompiled` while using a
custom BoringSSL version based on the older FIPS branch.
2024-10-17 09:58:02 -07:00
Hrushikesh Deshpande d3177a4300 Create semgrep.yml
Creating Semgrep.yml file - Semgrep is a tool that will be used to scan Cloudflare's public repos for Supply chain, code and secrets. This work is part of Application & Product Security team's initiative to onboard Semgrep onto all of Cloudflare's public repos.

In case of any questions, please reach out to "Hrushikesh Deshpande" on cf internal chat.
2024-10-14 11:33:22 -04:00
Rushil Mehra 294796f7f6
Release 4.10.3 (#280) 2024-09-23 10:06:51 +02:00
0x676e67 3342c9dffe Update docs link 2024-09-22 08:00:26 +08:00
0x676e67 ef88a8572b v4.10.2 2024-09-22 07:57:54 +08:00
0x676e67 b0fe60dcf6 Merge remote-tracking branch 'upstream/master' 2024-09-22 07:57:47 +08:00
Yuchen Wu 0596b2dcab
Set MSRV to 1.70 (#279)
With the bindgen 0.70 upgrade, the default rust target is set to be 1.77,
which becomes the de facto MSRV of boring-sys since the change.

This change makes sure that the MSRV of boring-sys is kept at 1.70,
which is the same as that of bindgen.
2024-09-21 21:42:39 +02:00
Rushil Mehra 1a00540c16
Release 4.10.2 (#278) 2024-09-19 00:38:25 +02:00
Bas Westerbaan b1a7434c19 boring-pq.patch Fix by not updating crypto_test_data.cc
crypto_test_data.cc is not included anymore since 2475ef386b
2024-09-19 00:17:37 +02:00
Rushil Mehra df1c4f55e6
Release 4.10.1 (#276) 2024-09-18 22:53:02 +02:00
Bas Westerbaan b7eaa5bc95 Don't support X25519MLKEM768 by default (yet) 2024-09-18 22:36:04 +02:00
Rushil Mehra b7f47dec46
Release 4.10.0 (#274) 2024-09-18 14:20:28 +02:00
Anthony Ramine 193bf3b9d7
Implement optional Hyper 1 support in hyper-boring (#246) 2024-09-18 13:24:35 +02:00
Bas Westerbaan 6d3639f173 Add post-quantum key agreement X25519MLKEM768
This is the successor of X25519Kyber768Draft00.

Spec:

https://datatracker.ietf.org/doc/draft-kwiatkowski-tls-ecdhe-mlkem/02/

IANA has assigned the codepoint.

https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-8

Upstream BoringSSL support landed in.

7fb4d3da50

The version of BoringSSL we patch does not include it, so we add it manually.

Chrome and Firefox are planning to enable in October.

This PR is based on the IPD-Wing patch reviewed here:

https://github.com/cloudflare/boring/pull/243

There are two changes. First we simplify the patch a bit as we do not
need IPD-Wing. Secondly, we perform the encapsulation key check, which
was a last minute addition of NIST. We perform this check also for Kyber.
2024-09-18 12:00:27 +02:00
Bas Westerbaan 2c0a14253a Revert "PQ: fix timing sidechannels and add IPDWing"
For TLS, early adopters prefer X25519MLKEM768. Remove IPDWing in
preparation for adding X25519MLKEM768.

https://datatracker.ietf.org/doc/draft-kwiatkowski-tls-ecdhe-mlkem/

This reverts commit 4725a930d5.
2024-09-18 12:00:27 +02:00
Mike Aizatsky 8cb5da61a6 Update bindgen to 0.70.1
bindgen has had a lot of improvements since 0.68, and this newer version seems to able to compile libbssl from within edgeworker
2024-09-18 01:30:38 +02:00