Loading hash.rs +9 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ mod libcrypto { #[link_args = "-lcrypto"] extern { fn EVP_MD_CTX_create() -> EVP_MD_CTX; fn EVP_MD_CTX_destroy(ctx: EVP_MD_CTX); fn EVP_md5() -> EVP_MD; fn EVP_sha1() -> EVP_MD; Loading Loading @@ -96,6 +97,14 @@ impl Hasher { } } impl Drop for Hasher { fn drop(&self) { unsafe { libcrypto::EVP_MD_CTX_destroy(self.ctx); } } } /** * Hashes the supplied input data using hash t, returning the resulting hash * value Loading pkey.rs +8 −0 Original line number Diff line number Diff line Loading @@ -336,6 +336,14 @@ impl PKey { } } impl Drop for PKey { fn drop(&self) { unsafe { libcrypto::EVP_PKEY_free(self.evp); } } } #[cfg(test)] mod tests { use super::*; Loading symm.rs +9 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ pub mod libcrypto { #[link_args = "-lcrypto"] fn EVP_CIPHER_CTX_new() -> EVP_CIPHER_CTX; fn EVP_CIPHER_CTX_set_padding(ctx: EVP_CIPHER_CTX, padding: c_int); fn EVP_CIPHER_CTX_free(ctx: EVP_CIPHER_CTX); fn EVP_aes_128_ecb() -> EVP_CIPHER; fn EVP_aes_128_cbc() -> EVP_CIPHER; Loading Loading @@ -149,6 +150,14 @@ impl Crypter { } } impl Drop for Crypter { fn drop(&self) { unsafe { libcrypto::EVP_CIPHER_CTX_free(self.ctx); } } } /** * Encrypts data, using the specified crypter type in encrypt mode with the * specified key and iv; returns the resulting (encrypted) data. Loading Loading
hash.rs +9 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ mod libcrypto { #[link_args = "-lcrypto"] extern { fn EVP_MD_CTX_create() -> EVP_MD_CTX; fn EVP_MD_CTX_destroy(ctx: EVP_MD_CTX); fn EVP_md5() -> EVP_MD; fn EVP_sha1() -> EVP_MD; Loading Loading @@ -96,6 +97,14 @@ impl Hasher { } } impl Drop for Hasher { fn drop(&self) { unsafe { libcrypto::EVP_MD_CTX_destroy(self.ctx); } } } /** * Hashes the supplied input data using hash t, returning the resulting hash * value Loading
pkey.rs +8 −0 Original line number Diff line number Diff line Loading @@ -336,6 +336,14 @@ impl PKey { } } impl Drop for PKey { fn drop(&self) { unsafe { libcrypto::EVP_PKEY_free(self.evp); } } } #[cfg(test)] mod tests { use super::*; Loading
symm.rs +9 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ pub mod libcrypto { #[link_args = "-lcrypto"] fn EVP_CIPHER_CTX_new() -> EVP_CIPHER_CTX; fn EVP_CIPHER_CTX_set_padding(ctx: EVP_CIPHER_CTX, padding: c_int); fn EVP_CIPHER_CTX_free(ctx: EVP_CIPHER_CTX); fn EVP_aes_128_ecb() -> EVP_CIPHER; fn EVP_aes_128_cbc() -> EVP_CIPHER; Loading Loading @@ -149,6 +150,14 @@ impl Crypter { } } impl Drop for Crypter { fn drop(&self) { unsafe { libcrypto::EVP_CIPHER_CTX_free(self.ctx); } } } /** * Encrypts data, using the specified crypter type in encrypt mode with the * specified key and iv; returns the resulting (encrypted) data. Loading