diff --git a/openssl-sys/src/lib.rs b/openssl-sys/src/lib.rs index 7f3af1d786c0268224a92df423230ea9dcabe44a..77f69188e6725232afc9a1624f4b2fb9516f0dd3 100644 --- a/openssl-sys/src/lib.rs +++ b/openssl-sys/src/lib.rs @@ -18,6 +18,11 @@ mod ossl110; #[cfg(ossl110)] pub use ossl110::*; +#[cfg(ossl111)] +mod ossl111; +#[cfg(ossl111)] +pub use ossl111::*; + #[cfg(libressl)] mod libressl; #[cfg(libressl)] @@ -1430,6 +1435,8 @@ pub const GEN_URI: c_int = 6; pub const GEN_IPADD: c_int = 7; pub const GEN_RID: c_int = 8; +pub const DTLS1_COOKIE_LENGTH: c_uint = 256; + // macros pub unsafe fn BIO_get_mem_data(b: *mut BIO, pp: *mut *mut c_char) -> c_long { BIO_ctrl(b, BIO_CTRL_INFO, 0, pp as *mut c_void) @@ -2762,4 +2769,33 @@ extern "C" { pub fn FIPS_mode_set(onoff: c_int) -> c_int; #[cfg(not(libressl))] pub fn FIPS_mode() -> c_int; + + pub fn SSL_CTX_set_cookie_generate_cb( + s: *mut SSL_CTX, + cb: Option c_int> + ); + + #[cfg(ossl110)] + pub fn SSL_CTX_set_cookie_verify_cb( + s: *mut SSL_CTX, + cb: Option c_int> + ); + + #[cfg(not(ossl110))] + pub fn SSL_CTX_set_cookie_verify_cb( + s: *mut SSL_CTX, + cb: Option c_int> + ); } diff --git a/openssl-sys/src/ossl111.rs b/openssl-sys/src/ossl111.rs new file mode 100644 index 0000000000000000000000000000000000000000..c22d506c3415c96e77ca92ae5c849b8e8e141294 --- /dev/null +++ b/openssl-sys/src/ossl111.rs @@ -0,0 +1,11 @@ +use libc::{c_int, c_ulong}; + +use ossl110::*; + +pub const SSL_COOKIE_LENGTH: c_int = 255; + +pub const SSL_OP_ENABLE_MIDDLEBOX_COMPAT: c_ulong = 0x00100000; + +extern "C" { + pub fn SSL_stateless(s: *mut SSL) -> c_int; +}