Commit 3be2f3b8 authored by Steven Fackler's avatar Steven Fackler
Browse files

fix build

parent 8086cc33
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -66,7 +66,7 @@ extern "C" {
        data: *const c_void,
        count: size_t,
        md: *mut c_uchar,
        size: *mut c_int,
        size: *mut c_uint,
    ) -> c_int;
    pub fn EVP_DigestInit(ctx: *mut EVP_MD_CTX, typ: *const EVP_MD) -> c_int;
    pub fn EVP_DigestFinal(ctx: *mut EVP_MD_CTX, res: *mut u8, n: *mut u32) -> c_int;
+76 −23
Original line number Diff line number Diff line
@@ -32,12 +32,11 @@ cfg_if! {

cfg_if! {
    if #[cfg(ossl300)] {
        macro_rules! digest {
            ($name:ident) => {
                pub unsafe fn $name(d: *const c_uchar, n: size_t, md: *mut c_uchar) -> *mut c_uchar {
        // Ideally we'd macro define these, but that crashes ctest :(
        pub unsafe fn SHA1(d: *const c_uchar, n: size_t, md: *mut c_uchar) -> *mut c_uchar {
            if EVP_Q_digest(
                ptr::null_mut(),
                        concat!(stringify!($name), "\0").as_ptr() as *const c_char,
                "SHA1\0".as_ptr() as *const c_char,
                ptr::null(),
                d as *const c_void,
                n,
@@ -49,10 +48,6 @@ cfg_if! {
                ptr::null_mut()
            }
        }
            }
        }

        digest!(SHA1);
    } else {
        extern "C" {
            pub fn SHA1(d: *const c_uchar, n: size_t, md: *mut c_uchar) -> *mut c_uchar;
@@ -86,8 +81,37 @@ cfg_if! {

cfg_if! {
    if #[cfg(ossl300)] {
        digest!(SHA224);
        digest!(SHA256);
        pub unsafe fn SHA224(d: *const c_uchar, n: size_t, md: *mut c_uchar) -> *mut c_uchar {
            if EVP_Q_digest(
                ptr::null_mut(),
                "SHA224\0".as_ptr() as *const c_char,
                ptr::null(),
                d as *const c_void,
                n,
                md,
                ptr::null_mut(),
            ) != 0 {
                md
            } else {
                ptr::null_mut()
            }
        }

        pub unsafe fn SHA256(d: *const c_uchar, n: size_t, md: *mut c_uchar) -> *mut c_uchar {
            if EVP_Q_digest(
                ptr::null_mut(),
                "SHA256\0".as_ptr() as *const c_char,
                ptr::null(),
                d as *const c_void,
                n,
                md,
                ptr::null_mut(),
            ) != 0 {
                md
            } else {
                ptr::null_mut()
            }
        }
    } else {
        extern "C" {
            pub fn SHA224(d: *const c_uchar, n: size_t, md: *mut c_uchar) -> *mut c_uchar;
@@ -125,8 +149,37 @@ cfg_if! {

cfg_if! {
    if #[cfg(ossl300)] {
        digest!(SHA384);
        digest!(SHA512);
        pub unsafe fn SHA384(d: *const c_uchar, n: size_t, md: *mut c_uchar) -> *mut c_uchar {
            if EVP_Q_digest(
                ptr::null_mut(),
                "SHA384\0".as_ptr() as *const c_char,
                ptr::null(),
                d as *const c_void,
                n,
                md,
                ptr::null_mut(),
            ) != 0 {
                md
            } else {
                ptr::null_mut()
            }
        }

        pub unsafe fn SHA512(d: *const c_uchar, n: size_t, md: *mut c_uchar) -> *mut c_uchar {
            if EVP_Q_digest(
                ptr::null_mut(),
                "SHA512\0".as_ptr() as *const c_char,
                ptr::null(),
                d as *const c_void,
                n,
                md,
                ptr::null_mut(),
            ) != 0 {
                md
            } else {
                ptr::null_mut()
            }
        }
    } else {
        extern "C" {
            pub fn SHA384(d: *const c_uchar, n: size_t, md: *mut c_uchar) -> *mut c_uchar;