From df0e2f097ffca57546da269750a1a8f1fa1458af Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Tue, 8 Apr 2025 10:12:00 -0400 Subject: [PATCH 1/8] test against openssl 3.5.0 --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1d35e2224..789b70b14 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -159,6 +159,8 @@ jobs: version: e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6 - name: openssl version: vendored + - name: openssl + version: 3.5.0 - name: openssl version: 3.4.0 - name: openssl From 5292decaf1faaa0e8f075ff33d6fb99e6cf09741 Mon Sep 17 00:00:00 2001 From: Theo Buehler Date: Wed, 30 Apr 2025 14:25:45 +0200 Subject: [PATCH 2/8] Allow libressl 4.1.0 (stable release) Fixes #2397 --- openssl-sys/build/main.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/openssl-sys/build/main.rs b/openssl-sys/build/main.rs index c4ac240e3..4007a2658 100644 --- a/openssl-sys/build/main.rs +++ b/openssl-sys/build/main.rs @@ -449,6 +449,8 @@ See rust-openssl documentation for more information: (3, 9, _) => ('3', '9', 'x'), (4, 0, 0) => ('4', '0', '0'), (4, 0, _) => ('4', '0', 'x'), + (4, 1, 0) => ('4', '1', '0'), + (4, 1, _) => ('4', '1', 'x'), _ => version_error(), }; @@ -491,7 +493,7 @@ fn version_error() -> ! { " This crate is only compatible with OpenSSL (version 1.0.1 through 1.1.1, or 3), or LibreSSL 2.5 -through 4.0.x, but a different version of OpenSSL was found. The build is now aborting +through 4.1.x, but a different version of OpenSSL was found. The build is now aborting due to this version mismatch. " From ae9d9881d9f48dd9c906463078c77ffa4097a67c Mon Sep 17 00:00:00 2001 From: Theo Buehler Date: Wed, 30 Apr 2025 14:25:45 +0200 Subject: [PATCH 3/8] Replace LibreSSL 3.8 with 4.1 in CI --- .github/workflows/ci.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 789b70b14..3978a41f2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -192,17 +192,17 @@ jobs: bindgen: true library: name: libressl - version: 3.8.4 + version: 3.9.2 - target: x86_64-unknown-linux-gnu bindgen: true library: name: libressl - version: 3.9.2 + version: 4.0.0 - target: x86_64-unknown-linux-gnu bindgen: true library: name: libressl - version: 4.0.0 + version: 4.1.0 - target: x86_64-unknown-linux-gnu bindgen: false library: @@ -212,17 +212,17 @@ jobs: bindgen: false library: name: libressl - version: 3.8.4 + version: 3.9.2 - target: x86_64-unknown-linux-gnu bindgen: false library: name: libressl - version: 3.9.2 + version: 4.0.0 - target: x86_64-unknown-linux-gnu bindgen: false library: name: libressl - version: 4.0.0 + version: 4.1.0 name: ${{ matrix.target }}-${{ matrix.library.name }}-${{ matrix.library.version }}-${{ matrix.bindgen }} runs-on: ubuntu-22.04 env: From f7a692bc2fd330c925085c3f66ec9ba6ffe55211 Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Wed, 30 Apr 2025 17:45:45 -0400 Subject: [PATCH 4/8] Release openssl-sys v0.9.108 --- openssl-sys/CHANGELOG.md | 9 ++++++++- openssl-sys/Cargo.toml | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/openssl-sys/CHANGELOG.md b/openssl-sys/CHANGELOG.md index 62f110d57..d19db72c8 100644 --- a/openssl-sys/CHANGELOG.md +++ b/openssl-sys/CHANGELOG.md @@ -2,6 +2,12 @@ ## [Unreleased] +## [v0.9.108] - 2025-04-30 + +### Added + +* Added support for LibreSSL 4.1.x. + ## [v0.9.107] - 2025-04-04 ### Added @@ -642,7 +648,8 @@ Fixed builds against OpenSSL built with `no-cast`. * Added `X509_verify` and `X509_REQ_verify`. * Added `EVP_MD_type` and `EVP_GROUP_get_curve_name`. -[Unreleased]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.107..master +[Unreleased]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.108..master +[v0.9.108]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.107...openssl-sys-v0.9.108 [v0.9.107]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.106...openssl-sys-v0.9.107 [v0.9.106]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.105...openssl-sys-v0.9.106 [v0.9.105]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.104...openssl-sys-v0.9.105 diff --git a/openssl-sys/Cargo.toml b/openssl-sys/Cargo.toml index a38da8468..c30ca97c5 100644 --- a/openssl-sys/Cargo.toml +++ b/openssl-sys/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openssl-sys" -version = "0.9.107" +version = "0.9.108" authors = [ "Alex Crichton ", "Steven Fackler ", From 79a304a364711cbf562763f3de4d49f2af07f5e4 Mon Sep 17 00:00:00 2001 From: Theo Buehler Date: Wed, 7 May 2025 23:14:07 +0200 Subject: [PATCH 5/8] Replace ctest2 with ctest Fixes #2402 --- systest/Cargo.toml | 2 +- systest/build.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/systest/Cargo.toml b/systest/Cargo.toml index d1e55ac3f..25a3258c9 100644 --- a/systest/Cargo.toml +++ b/systest/Cargo.toml @@ -9,7 +9,7 @@ libc = "0.2" openssl-sys = { path = "../openssl-sys" } [build-dependencies] -ctest2 = "0.4.7" +ctest = "0.4.11" [features] vendored = ['openssl-sys/vendored'] diff --git a/systest/build.rs b/systest/build.rs index fc970f410..22fc6b836 100644 --- a/systest/build.rs +++ b/systest/build.rs @@ -7,7 +7,7 @@ use std::env; mod cfgs; fn main() { - let mut cfg = ctest2::TestGenerator::new(); + let mut cfg = ctest::TestGenerator::new(); let target = env::var("TARGET").unwrap(); if let Ok(out) = env::var("DEP_OPENSSL_INCLUDE") { From 93f30ff3726b76b72044142bc817892016d0d005 Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Tue, 27 May 2025 20:43:57 -0400 Subject: [PATCH 6/8] fixed building on the latest boringssl --- .github/workflows/ci.yml | 2 +- openssl/src/ssl/bio.rs | 33 ++++++++++++++++++++++++++------- 2 files changed, 27 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3978a41f2..8cbd92f45 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -156,7 +156,7 @@ jobs: - name: aws-lc version: vendored - name: boringssl - version: e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6 + version: 71bae60c26549ce1875f07d8c394b934de4b0f7b - name: openssl version: vendored - name: openssl diff --git a/openssl/src/ssl/bio.rs b/openssl/src/ssl/bio.rs index 16485624f..ecd74c9a1 100644 --- a/openssl/src/ssl/bio.rs +++ b/openssl/src/ssl/bio.rs @@ -189,7 +189,7 @@ unsafe extern "C" fn destroy(bio: *mut BIO) -> c_int { } cfg_if! { - if #[cfg(any(ossl110, libressl273))] { + if #[cfg(any(ossl110, libressl273, boringssl))] { use ffi::{BIO_get_data, BIO_set_data, BIO_set_flags, BIO_set_init}; use crate::cvt; @@ -201,15 +201,34 @@ cfg_if! { impl BIO_METHOD { fn new() -> Result { + #[cfg(not(boringssl))] + use ffi::{ + BIO_meth_set_write__fixed_rust as BIO_meth_set_write, + BIO_meth_set_read__fixed_rust as BIO_meth_set_read, + BIO_meth_set_puts__fixed_rust as BIO_meth_set_puts, + BIO_meth_set_ctrl__fixed_rust as BIO_meth_set_ctrl, + BIO_meth_set_create__fixed_rust as BIO_meth_set_create, + BIO_meth_set_destroy__fixed_rust as BIO_meth_set_destroy, + }; + #[cfg(boringssl)] + use ffi::{ + BIO_meth_set_write, + BIO_meth_set_read, + BIO_meth_set_puts, + BIO_meth_set_ctrl, + BIO_meth_set_create, + BIO_meth_set_destroy, + }; + unsafe { let ptr = cvt_p(ffi::BIO_meth_new(ffi::BIO_TYPE_NONE, b"rust\0".as_ptr() as *const _))?; let method = BIO_METHOD(ptr); - cvt(ffi::BIO_meth_set_write__fixed_rust(method.0, Some(bwrite::)))?; - cvt(ffi::BIO_meth_set_read__fixed_rust(method.0, Some(bread::)))?; - cvt(ffi::BIO_meth_set_puts__fixed_rust(method.0, Some(bputs::)))?; - cvt(ffi::BIO_meth_set_ctrl__fixed_rust(method.0, Some(ctrl::)))?; - cvt(ffi::BIO_meth_set_create__fixed_rust(method.0, Some(create)))?; - cvt(ffi::BIO_meth_set_destroy__fixed_rust(method.0, Some(destroy::)))?; + cvt(BIO_meth_set_write(method.0, Some(bwrite::)))?; + cvt(BIO_meth_set_read(method.0, Some(bread::)))?; + cvt(BIO_meth_set_puts(method.0, Some(bputs::)))?; + cvt(BIO_meth_set_ctrl(method.0, Some(ctrl::)))?; + cvt(BIO_meth_set_create(method.0, Some(create)))?; + cvt(BIO_meth_set_destroy(method.0, Some(destroy::)))?; Ok(method) } } From 5e24219c18c69f99b18e5a0d6d4ec4552593648f Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Wed, 28 May 2025 08:10:11 -0400 Subject: [PATCH 7/8] Attempt to fix with vcpkg --- openssl-sys/build/find_normal.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/openssl-sys/build/find_normal.rs b/openssl-sys/build/find_normal.rs index 1439e9ab3..6ab95259e 100644 --- a/openssl-sys/build/find_normal.rs +++ b/openssl-sys/build/find_normal.rs @@ -265,6 +265,7 @@ fn try_vcpkg() { println!("cargo:rustc-link-lib=user32"); println!("cargo:rustc-link-lib=gdi32"); println!("cargo:rustc-link-lib=crypt32"); + println!("cargo:rustc-link-lib=advapi32"); process::exit(0); } From 9ca6cfe2e68e676afb9f160a6efc656473d26e6c Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Wed, 28 May 2025 19:05:10 -0400 Subject: [PATCH 8/8] Release openssl v0.10.73 and openssl-sys v0.9.109 --- openssl-sys/CHANGELOG.md | 10 +++++++++- openssl-sys/Cargo.toml | 2 +- openssl/CHANGELOG.md | 13 ++++++++++++- openssl/Cargo.toml | 4 ++-- 4 files changed, 24 insertions(+), 5 deletions(-) diff --git a/openssl-sys/CHANGELOG.md b/openssl-sys/CHANGELOG.md index d19db72c8..f153892ab 100644 --- a/openssl-sys/CHANGELOG.md +++ b/openssl-sys/CHANGELOG.md @@ -2,6 +2,13 @@ ## [Unreleased] +## [v0.9.109] - 2025-05-28 + +### Fixed + +* Fixed building with `vcpkg`, a statically linked OpenSSL, and rust 1.87.0. +* Fixed building on the latest BoringSSL. + ## [v0.9.108] - 2025-04-30 ### Added @@ -648,7 +655,8 @@ Fixed builds against OpenSSL built with `no-cast`. * Added `X509_verify` and `X509_REQ_verify`. * Added `EVP_MD_type` and `EVP_GROUP_get_curve_name`. -[Unreleased]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.108..master +[Unreleased]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.109..master +[v0.9.109]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.108...openssl-sys-v0.9.109 [v0.9.108]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.107...openssl-sys-v0.9.108 [v0.9.107]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.106...openssl-sys-v0.9.107 [v0.9.106]: https://github.com/sfackler/rust-openssl/compare/openssl-sys-v0.9.105...openssl-sys-v0.9.106 diff --git a/openssl-sys/Cargo.toml b/openssl-sys/Cargo.toml index c30ca97c5..2ca5ce93b 100644 --- a/openssl-sys/Cargo.toml +++ b/openssl-sys/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openssl-sys" -version = "0.9.108" +version = "0.9.109" authors = [ "Alex Crichton ", "Steven Fackler ", diff --git a/openssl/CHANGELOG.md b/openssl/CHANGELOG.md index da2db978f..250c619ea 100644 --- a/openssl/CHANGELOG.md +++ b/openssl/CHANGELOG.md @@ -2,6 +2,16 @@ ## [Unreleased] +## [v0.10.73] - 2025-05-28 + +### Fixed + +* Fixed building on the latest BoringSSL. + +### Changed + +* Replaced ctest2 with ctest in systest. + ## [v0.10.72] - 2025-04-04 ### Fixed @@ -969,7 +979,8 @@ Look at the [release tags] for information about older releases. -[Unreleased]: https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.72...master +[Unreleased]: https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.73...master +[v0.10.73]: https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.72...openssl-v0.10.73 [v0.10.72]: https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.71...openssl-v0.10.72 [v0.10.71]: https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.70...openssl-v0.10.71 [v0.10.70]: https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.69...openssl-v0.10.70 diff --git a/openssl/Cargo.toml b/openssl/Cargo.toml index 75d440496..c8e809e96 100644 --- a/openssl/Cargo.toml +++ b/openssl/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openssl" -version = "0.10.72" +version = "0.10.73" authors = ["Steven Fackler "] license = "Apache-2.0" description = "OpenSSL bindings" @@ -32,7 +32,7 @@ libc = "0.2" once_cell = "1.5.2" openssl-macros = { version = "0.1.1", path = "../openssl-macros" } -ffi = { package = "openssl-sys", version = "0.9.107", path = "../openssl-sys" } +ffi = { package = "openssl-sys", version = "0.9.109", path = "../openssl-sys" } [dev-dependencies] hex = "0.4" pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy