diff --git a/openssl-sys/src/sha.rs b/openssl-sys/src/sha.rs index 2ad91f6f83c669ba058dc9f891ba4225cc86fd8a..e8d1403f791d6eced5c2c9f3f39870088f36eb4c 100644 --- a/openssl-sys/src/sha.rs +++ b/openssl-sys/src/sha.rs @@ -26,6 +26,7 @@ extern "C" { } #[repr(C)] +#[derive(Clone)] pub struct SHA256_CTX { pub h: [SHA_LONG; 8], pub Nl: SHA_LONG, @@ -49,6 +50,7 @@ extern "C" { pub type SHA_LONG64 = u64; #[repr(C)] +#[derive(Clone)] pub struct SHA512_CTX { pub h: [SHA_LONG64; 8], pub Nl: SHA_LONG64, diff --git a/openssl/src/sha.rs b/openssl/src/sha.rs index dffadb9053432ffe8438c451d37c39bd1e97f6a3..a33a0f6c440fa2a2f325dd5e3f90f3c220d791fb 100644 --- a/openssl/src/sha.rs +++ b/openssl/src/sha.rs @@ -146,6 +146,7 @@ impl Sha1 { } /// An object which calculates a SHA224 hash of some data. +#[derive(Clone)] pub struct Sha224(ffi::SHA256_CTX); impl Sha224 { @@ -181,6 +182,7 @@ impl Sha224 { } /// An object which calculates a SHA256 hash of some data. +#[derive(Clone)] pub struct Sha256(ffi::SHA256_CTX); impl Sha256 { @@ -216,6 +218,7 @@ impl Sha256 { } /// An object which calculates a SHA384 hash of some data. +#[derive(Clone)] pub struct Sha384(ffi::SHA512_CTX); impl Sha384 { @@ -251,6 +254,7 @@ impl Sha384 { } /// An object which calculates a SHA512 hash of some data. +#[derive(Clone)] pub struct Sha512(ffi::SHA512_CTX); impl Sha512 {