diff --git a/benches/jwt.rs b/benches/jwt.rs index ad0a2ab..1de9124 100644 --- a/benches/jwt.rs +++ b/benches/jwt.rs @@ -18,7 +18,7 @@ fn bench_encode(b: &mut test::Bencher) { company: "ACME".to_owned() }; - b.iter(|| encode(&claim, "secret", Header::default())); + b.iter(|| encode(&claim, "secret".as_ref(), Header::default())); } #[bench] diff --git a/src/lib.rs b/src/lib.rs index d030f6e..34f94ae 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -110,7 +110,7 @@ fn verify(signature: &str, data: &str, secret: &[u8], algorithm: Algorithm) -> b } /// Encode the claims passed and sign the payload using the algorithm and the secret -pub fn encode>(claims: &T, secret: B, header: Header) -> Result { +pub fn encode(claims: &T, secret: &[u8], header: Header) -> Result { let encoded_header = try!(header.to_base64()); let encoded_claims = try!(claims.to_base64()); // seems to be a tiny bit faster than format!("{}.{}", x, y) @@ -195,7 +195,7 @@ mod tests { }; let mut header = Header::default(); header.kid = Some("kid".to_owned()); - let token = encode(&my_claims, "secret", header).unwrap(); + let token = encode(&my_claims, "secret".as_ref(), header).unwrap(); let token_data = decode::(&token, "secret".as_ref(), Algorithm::HS256).unwrap(); assert_eq!(my_claims, token_data.claims); assert_eq!("kid", token_data.header.kid.unwrap()); @@ -207,7 +207,7 @@ mod tests { sub: "b@b.com".to_owned(), company: "ACME".to_owned() }; - let token = encode(&my_claims, "secret", Header::default()).unwrap(); + let token = encode(&my_claims, "secret".as_ref(), Header::default()).unwrap(); let token_data = decode::(&token, "secret".as_ref(), Algorithm::HS256).unwrap(); assert_eq!(my_claims, token_data.claims); assert!(token_data.header.kid.is_none());