Commit 4ed81d64 authored by Steven Fackler's avatar Steven Fackler
Browse files

Fix EVP_DigestVerifyFinal version support

parent 2ff82649
Loading
Loading
Loading
Loading
+14 −3
Original line number Diff line number Diff line
@@ -168,8 +168,8 @@ impl<'a> Verifier<'a> {

    pub fn finish(&self, signature: &[u8]) -> Result<bool, ErrorStack> {
        unsafe {
            let r = ffi::EVP_DigestVerifyFinal(self.0,
                                               signature.as_ptr() as *const _ as _,
            let r = EVP_DigestVerifyFinal(self.0,
                                          signature.as_ptr() as *const _,
                                          signature.len());
            match r {
                1 => Ok(true),
@@ -194,6 +194,17 @@ impl<'a> Write for Verifier<'a> {
    }
}

#[cfg(not(ossl101))]
use ffi::EVP_DigestVerifyFinal;

#[cfg(ossl101)]
#[allow(bad_style)]
unsafe fn EVP_DigestVerifyFinal(ctx: *mut ffi::EVP_MD_CTX,
                                sigret: *const ::libc::c_uchar,
                                siglen: ::libc::size_t) -> ::libc::c_int {
    ffi::EVP_DigestVerifyFinal(ctx, sigret as *mut _, siglen)
}

#[cfg(test)]
mod test {
    use serialize::hex::FromHex;