Skip to content

Commit 93f30ff

Browse files
committed
fixed building on the latest boringssl
1 parent eb88fb0 commit 93f30ff

File tree

2 files changed

+27
-8
lines changed

2 files changed

+27
-8
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ jobs:
156156
- name: aws-lc
157157
version: vendored
158158
- name: boringssl
159-
version: e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6
159+
version: 71bae60c26549ce1875f07d8c394b934de4b0f7b
160160
- name: openssl
161161
version: vendored
162162
- name: openssl

openssl/src/ssl/bio.rs

Lines changed: 26 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,7 @@ unsafe extern "C" fn destroy<S>(bio: *mut BIO) -> c_int {
189189
}
190190

191191
cfg_if! {
192-
if #[cfg(any(ossl110, libressl273))] {
192+
if #[cfg(any(ossl110, libressl273, boringssl))] {
193193
use ffi::{BIO_get_data, BIO_set_data, BIO_set_flags, BIO_set_init};
194194
use crate::cvt;
195195

@@ -201,15 +201,34 @@ cfg_if! {
201201

202202
impl BIO_METHOD {
203203
fn new<S: Read + Write>() -> Result<BIO_METHOD, ErrorStack> {
204+
#[cfg(not(boringssl))]
205+
use ffi::{
206+
BIO_meth_set_write__fixed_rust as BIO_meth_set_write,
207+
BIO_meth_set_read__fixed_rust as BIO_meth_set_read,
208+
BIO_meth_set_puts__fixed_rust as BIO_meth_set_puts,
209+
BIO_meth_set_ctrl__fixed_rust as BIO_meth_set_ctrl,
210+
BIO_meth_set_create__fixed_rust as BIO_meth_set_create,
211+
BIO_meth_set_destroy__fixed_rust as BIO_meth_set_destroy,
212+
};
213+
#[cfg(boringssl)]
214+
use ffi::{
215+
BIO_meth_set_write,
216+
BIO_meth_set_read,
217+
BIO_meth_set_puts,
218+
BIO_meth_set_ctrl,
219+
BIO_meth_set_create,
220+
BIO_meth_set_destroy,
221+
};
222+
204223
unsafe {
205224
let ptr = cvt_p(ffi::BIO_meth_new(ffi::BIO_TYPE_NONE, b"rust\0".as_ptr() as *const _))?;
206225
let method = BIO_METHOD(ptr);
207-
cvt(ffi::BIO_meth_set_write__fixed_rust(method.0, Some(bwrite::<S>)))?;
208-
cvt(ffi::BIO_meth_set_read__fixed_rust(method.0, Some(bread::<S>)))?;
209-
cvt(ffi::BIO_meth_set_puts__fixed_rust(method.0, Some(bputs::<S>)))?;
210-
cvt(ffi::BIO_meth_set_ctrl__fixed_rust(method.0, Some(ctrl::<S>)))?;
211-
cvt(ffi::BIO_meth_set_create__fixed_rust(method.0, Some(create)))?;
212-
cvt(ffi::BIO_meth_set_destroy__fixed_rust(method.0, Some(destroy::<S>)))?;
226+
cvt(BIO_meth_set_write(method.0, Some(bwrite::<S>)))?;
227+
cvt(BIO_meth_set_read(method.0, Some(bread::<S>)))?;
228+
cvt(BIO_meth_set_puts(method.0, Some(bputs::<S>)))?;
229+
cvt(BIO_meth_set_ctrl(method.0, Some(ctrl::<S>)))?;
230+
cvt(BIO_meth_set_create(method.0, Some(create)))?;
231+
cvt(BIO_meth_set_destroy(method.0, Some(destroy::<S>)))?;
213232
Ok(method)
214233
}
215234
}

0 commit comments

Comments
 (0)
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