Loading openssl-sys/build/expando.c +4 −0 Original line number Diff line number Diff line Loading @@ -81,3 +81,7 @@ RUST_CONF_OPENSSL_NO_TLSEXT #ifdef OPENSSL_NO_STDIO RUST_CONF_OPENSSL_NO_STDIO #endif #ifdef OPENSSL_NO_SM3 RUST_CONF_OPENSSL_NO_SM3 #endif openssl-sys/src/evp.rs +2 −0 Original line number Diff line number Diff line Loading @@ -243,6 +243,8 @@ extern "C" { #[cfg(ossl111)] pub fn EVP_shake256() -> *const EVP_MD; pub fn EVP_ripemd160() -> *const EVP_MD; #[cfg(all(any(ossl111, libressl291), not(osslconf = "OPENSSL_NO_SM3")))] pub fn EVP_sm3() -> *const EVP_MD; pub fn EVP_des_ecb() -> *const EVP_CIPHER; pub fn EVP_des_ede3() -> *const EVP_CIPHER; pub fn EVP_des_ede3_cbc() -> *const EVP_CIPHER; Loading openssl-sys/src/obj_mac.rs +8 −0 Original line number Diff line number Diff line Loading @@ -920,3 +920,11 @@ pub const NID_X448: c_int = 1035; pub const NID_ED25519: c_int = 1087; #[cfg(ossl111)] pub const NID_ED448: c_int = 1088; #[cfg(ossl111)] pub const NID_sm3: c_int = 1143; #[cfg(libressl291)] pub const NID_sm3: c_int = 968; #[cfg(ossl111)] pub const NID_sm3WithRSAEncryption: c_int = 1144; #[cfg(libressl291)] pub const NID_sm3WithRSAEncryption: c_int = 969; openssl/src/hash.rs +18 −0 Original line number Diff line number Diff line Loading @@ -128,6 +128,11 @@ impl MessageDigest { unsafe { MessageDigest(ffi::EVP_ripemd160()) } } #[cfg(all(any(ossl111, libressl291), not(osslconf = "OPENSSL_NO_SM3")))] pub fn sm3() -> MessageDigest { unsafe { MessageDigest(ffi::EVP_sm3()) } } #[allow(clippy::trivially_copy_pass_by_ref)] pub fn as_ptr(&self) -> *const ffi::EVP_MD { self.0 Loading Loading @@ -626,6 +631,19 @@ mod tests { } } #[cfg(all(any(ossl111, libressl291), not(osslconf = "OPENSSL_NO_SM3")))] #[test] fn test_sm3() { let tests = [( "616263", "66c7f0f462eeedd9d1f2d46bdc10e4e24167c4875cf2f7a2297da02b8f4ba8e0", )]; for test in tests.iter() { hash_test(MessageDigest::sm3(), test); } } #[test] fn from_nid() { assert_eq!( Loading Loading
openssl-sys/build/expando.c +4 −0 Original line number Diff line number Diff line Loading @@ -81,3 +81,7 @@ RUST_CONF_OPENSSL_NO_TLSEXT #ifdef OPENSSL_NO_STDIO RUST_CONF_OPENSSL_NO_STDIO #endif #ifdef OPENSSL_NO_SM3 RUST_CONF_OPENSSL_NO_SM3 #endif
openssl-sys/src/evp.rs +2 −0 Original line number Diff line number Diff line Loading @@ -243,6 +243,8 @@ extern "C" { #[cfg(ossl111)] pub fn EVP_shake256() -> *const EVP_MD; pub fn EVP_ripemd160() -> *const EVP_MD; #[cfg(all(any(ossl111, libressl291), not(osslconf = "OPENSSL_NO_SM3")))] pub fn EVP_sm3() -> *const EVP_MD; pub fn EVP_des_ecb() -> *const EVP_CIPHER; pub fn EVP_des_ede3() -> *const EVP_CIPHER; pub fn EVP_des_ede3_cbc() -> *const EVP_CIPHER; Loading
openssl-sys/src/obj_mac.rs +8 −0 Original line number Diff line number Diff line Loading @@ -920,3 +920,11 @@ pub const NID_X448: c_int = 1035; pub const NID_ED25519: c_int = 1087; #[cfg(ossl111)] pub const NID_ED448: c_int = 1088; #[cfg(ossl111)] pub const NID_sm3: c_int = 1143; #[cfg(libressl291)] pub const NID_sm3: c_int = 968; #[cfg(ossl111)] pub const NID_sm3WithRSAEncryption: c_int = 1144; #[cfg(libressl291)] pub const NID_sm3WithRSAEncryption: c_int = 969;
openssl/src/hash.rs +18 −0 Original line number Diff line number Diff line Loading @@ -128,6 +128,11 @@ impl MessageDigest { unsafe { MessageDigest(ffi::EVP_ripemd160()) } } #[cfg(all(any(ossl111, libressl291), not(osslconf = "OPENSSL_NO_SM3")))] pub fn sm3() -> MessageDigest { unsafe { MessageDigest(ffi::EVP_sm3()) } } #[allow(clippy::trivially_copy_pass_by_ref)] pub fn as_ptr(&self) -> *const ffi::EVP_MD { self.0 Loading Loading @@ -626,6 +631,19 @@ mod tests { } } #[cfg(all(any(ossl111, libressl291), not(osslconf = "OPENSSL_NO_SM3")))] #[test] fn test_sm3() { let tests = [( "616263", "66c7f0f462eeedd9d1f2d46bdc10e4e24167c4875cf2f7a2297da02b8f4ba8e0", )]; for test in tests.iter() { hash_test(MessageDigest::sm3(), test); } } #[test] fn from_nid() { assert_eq!( Loading