Commit Graph

3433 Commits

Author SHA1 Message Date
0x676e67 e6e8b0af17 chore(compio-boring2): remove unused docs 2025-07-07 21:40:20 +08:00
0x676e67 109c35839c chore: fix ci and docs 2025-07-07 21:32:45 +08:00
0x676e67 d8ab50af6e docs: update README.md 2025-07-07 21:22:27 +08:00
0x676e67 39afe81356 chore: update `compio-boring` version 2025-07-07 21:13:24 +08:00
0x676e67 83e049d8d9
feat(boring): adapt `boring2` for compio async runtime (#85)
close: https://github.com/0x676e67/boring2/issues/78
2025-07-07 21:10:50 +08:00
0x676e67 736c374e3d v5.0.0-alpha.3 2025-07-06 18:01:43 +08:00
0x676e67 8ec7576cf4
feat: Add Hash impls for extension types (#84) 2025-07-06 17:59:49 +08:00
0x676e67 3010f78112 v5.0.0-alpha.2 2025-06-23 23:34:29 +08:00
zebrapurring e47d09e242
feat: add support for FreeBSD (#83)
* feat: add support for FreeBSD

---------

Co-authored-by: zebrapurring <>
Co-authored-by: 0x676e67 <gngppz@gmail.com>
2025-06-23 23:14:01 +08:00
0x676e67 f8918297cc Merge branch 'docs' 2025-06-21 19:54:27 +08:00
0x676e67 3a32ea51f7 docs(connector): update documents 2025-06-21 19:54:17 +08:00
0x676e67 58d2b58d70
docs: update prefer chacha20 option docs (#81) 2025-06-18 22:19:30 +08:00
0x676e67 590cef9b1f docs: update prefer chacha20 option docs 2025-06-18 22:16:46 +08:00
0x676e67 afde990c6b docs: update prefer chacha20 option docs 2025-06-18 22:15:44 +08:00
0x676e67 53e9475c68 v5.0.0-alpha.1 2025-06-18 12:39:57 +08:00
0x676e67 eaf49e631e
feat(boring): sync updated extension permutation patch (#80) 2025-06-18 12:36:34 +08:00
0x676e67 4ba97ba54e
chore(boring): Remove deprecated or outdated APIs (#79) 2025-06-17 23:19:52 +08:00
0x676e67 ee124d7ccc
Update README.md 2025-06-17 22:59:08 +08:00
0x676e67 f08c7cf8b7
test(boring): fix ech test (#77) 2025-06-17 22:26:23 +08:00
0x676e67 f4419dc416 revert(boring): Restore `src/x509/store.rs` to match upstream 2025-06-17 20:22:42 +08:00
0x676e67 e04066ee46 Merge remote-tracking branch 'upstream/master' 2025-06-17 20:16:49 +08:00
Kornel 0ca11b5680 Use cargo:warning for warnings 2025-06-13 15:06:50 +02:00
Kornel 8d5fba3767 Don't link binaries on docs.rs 2025-06-13 15:06:50 +02:00
Jordan Rose b01510d050
Expose PKey::raw_{private,public}_key (#364) 2025-06-13 09:11:51 +01:00
Alex Bakon c596d7d47c Upgrade bindgen to v0.72.0
This release includes a fix for a build issue with the latest XCode
release.
2025-06-10 12:39:19 +01:00
0x676e67 b4fb079585
Merge pull request #75 from 0x676e67/dependabot/cargo/bindgen-0.72.0 2025-06-09 23:17:47 +08:00
dependabot[bot] e362ce762e
build(deps): update bindgen requirement from 0.71.1 to 0.72.0
Updates the requirements on [bindgen](https://github.com/rust-lang/rust-bindgen) to permit the latest version.
- [Release notes](https://github.com/rust-lang/rust-bindgen/releases)
- [Changelog](https://github.com/rust-lang/rust-bindgen/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/rust-bindgen/compare/v0.71.1...v0.71.1)

---
updated-dependencies:
- dependency-name: bindgen
  dependency-version: 0.71.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-09 09:07:04 +00:00
0x676e67 6107475db1 chore: remove dead code 2025-06-07 23:09:11 +08:00
0x676e67 80f9221bbb Merge remote-tracking branch 'upstream/master' 2025-06-07 23:08:32 +08:00
Justin-Kwan 17d137e33b
Expose SSL_set1_groups to Efficiently Set Curves on SSL Session (#346) 2025-06-06 02:25:28 +01:00
Kornel 5fa9c81c88
Sprinkle #[must_use] (#368) 2025-06-05 20:40:35 +01:00
Kornel 5d57b3a057 Make X509Store shareable between contexts
#362
2025-06-05 14:45:40 +01:00
Kornel 4d178a7f9f Clippy 2025-06-05 10:16:08 +01:00
Kornel bcec9462af Don't unwrap when Result can be returned instead 2025-06-05 10:14:54 +01:00
Kornel 29c05d41cd Avoid panicking in error handling 2025-06-05 10:14:54 +01:00
Kornel 05f798adc4 Rename to reset_with_context_data 2025-06-05 01:06:09 +01:00
Anthony Ramine 56e9fef055 Add X509StoreContextRef::init_without_cleanup
As X509_STORE_CTX_init requires its arguments to outlive
the store context, we take ownership of all of them
and put them in the store context's ex data, ensuring
the soundness of the operation without the mandatory
call to X509_STORE_CTX_cleanup after a closure
is run.
2025-06-05 01:06:09 +01:00
Anthony Ramine 45f8589d48 Add mutable ex_data APIs for X509StoreContext 2025-06-05 01:06:09 +01:00
Anthony Ramine 15975ddde4
Ensure we call X509_STORE_CTX_cleanup on error path too (#360)
As X509_STORE_CTX_init may fail after setting some values
that should outlive the store context, we must ensure we
clean things up on its error path too.

We also know it's always ok to call X509_STORE_CTX_cleanupas X509_STORE_CTX_init starts with a call to it.
2025-06-02 16:40:44 +02:00
Anthony Ramine 6789a72fc0
Fix X509VerifyContextRef::set_verify_param (#358)
This method takes ownership of the given verify param.
2025-06-02 16:39:25 +02:00
Anthony Ramine 7a52fbbe99
Add X509VerifyParamRef::copy_from (#361) 2025-06-02 16:39:11 +02:00
James Larisch 2bc82e8d1c Add support for X509_STORE_CTX_get0_untrusted 2025-06-01 19:04:22 +01:00
0x676e67 0f2461ad00
sync upstream (#74)
* Add fips-precompiled feature to support newer versions of FIPS (#338)

Newer versions of FIPS don't need any special casing in our bindings,
unlike the submoduled boringssl-fips. In addition, many users currently
use FIPS by precompiling BoringSSL with the proper build tools and
passing that in to the bindings.

Until we adopt the Update Stream pattern for FIPS, there are two main
use cases:

1. Passing an unmodified, precompiled FIPS validated version of
   boringssl (fips-precompiled)

2. Passing a custom source directory of boringssl meant to be linked
   with a FIPS validated bcm.o. This is mainly useful if you carry
   custom patches but still want to use a FIPS validated BoringCrypto.
   (fips-link-precompiled)

This commit introduces the `fips-precompiled` feature and removes the
`fips-no-compat` feature.

* Release 4.16.0 (#341)

* feat(x509): Implement `Clone` for `X509Store` (#339)


* boring(x509): impl Clone of X509Store

* expose SSL_set_compliance_policy

* fix clippy error

* Use ubuntu-latest for all ci jobs

ubuntu 20.04 is now deprecated:
https://github.com/actions/runner-images/issues/11101

* add SslCurve::X25519_MLKEM768 constant

* Clippy

* Fix linking SystemFunction036 from advapi32 in Rust 1.87

* rustfmt ;(

* build: Fix the build for 32-bit Linux platform

* Update Cargo.toml

* boring(ssl): use `corresponds` macro in `add_certificate_compression_algorithm`

* Add `X509_STORE_CTX_get0_cert` interface

This method reliably retrieves the certificate the `X509_STORE_CTX` is
verifying, unlike `X509_STORE_CTX_get_current_cert`, which may return
the "problematic" cert when verification fails.

* Update bindgen from 0.70.1 -> 0.71.1.

* Revert "feat(x509): Implement `Clone` for `X509Store` (#339)" (#353)

* Revert "feat(x509): Implement `Clone` for `X509Store` (#339)"

This reverts commit 49a8d0906a.

See <https://github.com/cloudflare/boring/pull/120>.

* Ensure Clone is not added to X509Store

* Add comment about why X509Store must not implement Clone

---------

Co-authored-by: Kornel <kornel@cloudflare.com>

* Release 4.17.0 (#354)

* Add set_verify_param

* clippy fix

---------

Co-authored-by: Rushil Mehra <84047965+rushilmehra@users.noreply.github.com>
Co-authored-by: Shih-Chiang Chien <shih-chiang@cloudflare.com>
Co-authored-by: Rushil Mehra <rmehra@cloudflare.com>
Co-authored-by: Eric Rosenberg <eric_rosenberg@apple.com>
Co-authored-by: Kornel <kornel@cloudflare.com>
Co-authored-by: James Larisch <jlarisch@cloudflare.com>
Co-authored-by: Yury Yarashevich <yura.yaroshevich@gmail.com>
Co-authored-by: Anthony Ramine <123095+nox@users.noreply.github.com>
2025-05-30 11:15:39 +08:00
0x676e67 4fd641f79d clippy fix 2025-05-30 11:00:23 +08:00
0x676e67 6169bcd543 Merge remote-tracking branch 'upstream/master' into sync 2025-05-30 10:55:52 +08:00
James Larisch e99d162891 Add set_verify_param 2025-05-30 02:17:53 +02:00
Anthony Ramine 5e8aaf63f0
Release 4.17.0 (#354) 2025-05-28 11:53:09 +02:00
Anthony Ramine 560925293b
Revert "feat(x509): Implement `Clone` for `X509Store` (#339)" (#353)
* Revert "feat(x509): Implement `Clone` for `X509Store` (#339)"

This reverts commit 49a8d0906a.

See <https://github.com/cloudflare/boring/pull/120>.

* Ensure Clone is not added to X509Store

* Add comment about why X509Store must not implement Clone

---------

Co-authored-by: Kornel <kornel@cloudflare.com>
2025-05-27 18:19:35 +02:00
Yury Yarashevich 4ea82a2e1b Update bindgen from 0.70.1 -> 0.71.1. 2025-05-27 15:04:04 +01:00
James Larisch eefc7b7265 Add `X509_STORE_CTX_get0_cert` interface
This method reliably retrieves the certificate the `X509_STORE_CTX` is
verifying, unlike `X509_STORE_CTX_get_current_cert`, which may return
the "problematic" cert when verification fails.
2025-05-27 14:41:16 +01:00