diff --git a/sasl/Cargo.toml b/sasl/Cargo.toml index 3416954..62c6ec9 100644 --- a/sasl/Cargo.toml +++ b/sasl/Cargo.toml @@ -18,8 +18,8 @@ default = ["scram"] scram = ["openssl"] [dependencies] -base64 = "0.6.0" +base64 = "0.9.0" [dependencies.openssl] -version = "0.9.13" +version = "0.10.4" optional = true diff --git a/sasl/src/common/scram.rs b/sasl/src/common/scram.rs index 8ebe4aa..f9bae91 100644 --- a/sasl/src/common/scram.rs +++ b/sasl/src/common/scram.rs @@ -46,14 +46,14 @@ impl ScramProvider for Sha1 { // TODO: look at all these unwraps fn name() -> &'static str { "SHA-1" } fn hash(data: &[u8]) -> Vec { - hash(MessageDigest::sha1(), data).unwrap() + hash(MessageDigest::sha1(), data).unwrap().to_vec() } fn hmac(data: &[u8], key: &[u8]) -> Vec { let pkey = PKey::hmac(key).unwrap(); let mut signer = Signer::new(MessageDigest::sha1(), &pkey).unwrap(); signer.update(data).unwrap(); - signer.finish().unwrap() + signer.sign_to_vec().unwrap() } fn derive(password: &Password, salt: &[u8], iterations: usize) -> Result, String> { @@ -90,14 +90,14 @@ impl ScramProvider for Sha256 { // TODO: look at all these unwraps fn name() -> &'static str { "SHA-256" } fn hash(data: &[u8]) -> Vec { - hash(MessageDigest::sha256(), data).unwrap() + hash(MessageDigest::sha256(), data).unwrap().to_vec() } fn hmac(data: &[u8], key: &[u8]) -> Vec { let pkey = PKey::hmac(key).unwrap(); let mut signer = Signer::new(MessageDigest::sha256(), &pkey).unwrap(); signer.update(data).unwrap(); - signer.finish().unwrap() + signer.sign_to_vec().unwrap() } fn derive(password: &Password, salt: &[u8], iterations: usize) -> Result, String> {