@@ -133,7 +133,7 @@ impl RecoverableSignature {
133133 /// verify-capable context.
134134 #[ inline]
135135 #[ cfg( feature = "global-context" ) ]
136- pub fn recover ( & self , msg : & Message ) -> Result < key:: PublicKey , Error > {
136+ pub fn recover ( & self , msg : impl Into < Message > ) -> Result < key:: PublicKey , Error > {
137137 crate :: SECP256K1 . recover_ecdsa ( msg, self )
138138 }
139139}
@@ -154,10 +154,11 @@ impl From<ffi::RecoverableSignature> for RecoverableSignature {
154154impl < C : Signing > Secp256k1 < C > {
155155 fn sign_ecdsa_recoverable_with_noncedata_pointer (
156156 & self ,
157- msg : & Message ,
157+ msg : impl Into < Message > ,
158158 sk : & key:: SecretKey ,
159159 noncedata_ptr : * const super_ffi:: types:: c_void ,
160160 ) -> RecoverableSignature {
161+ let msg = msg. into ( ) ;
161162 let mut ret = ffi:: RecoverableSignature :: new ( ) ;
162163 unsafe {
163164 // We can assume the return value because it's not possible to construct
@@ -182,7 +183,7 @@ impl<C: Signing> Secp256k1<C> {
182183 /// Requires a signing-capable context.
183184 pub fn sign_ecdsa_recoverable (
184185 & self ,
185- msg : & Message ,
186+ msg : impl Into < Message > ,
186187 sk : & key:: SecretKey ,
187188 ) -> RecoverableSignature {
188189 self . sign_ecdsa_recoverable_with_noncedata_pointer ( msg, sk, ptr:: null ( ) )
@@ -195,7 +196,7 @@ impl<C: Signing> Secp256k1<C> {
195196 /// Requires a signing-capable context.
196197 pub fn sign_ecdsa_recoverable_with_noncedata (
197198 & self ,
198- msg : & Message ,
199+ msg : impl Into < Message > ,
199200 sk : & key:: SecretKey ,
200201 noncedata : & [ u8 ; 32 ] ,
201202 ) -> RecoverableSignature {
@@ -209,9 +210,10 @@ impl<C: Verification> Secp256k1<C> {
209210 /// `msg`. Requires a verify-capable context.
210211 pub fn recover_ecdsa (
211212 & self ,
212- msg : & Message ,
213+ msg : impl Into < Message > ,
213214 sig : & RecoverableSignature ,
214215 ) -> Result < key:: PublicKey , Error > {
216+ let msg = msg. into ( ) ;
215217 unsafe {
216218 let mut pk = super_ffi:: PublicKey :: new ( ) ;
217219 if ffi:: secp256k1_ecdsa_recover (
@@ -252,15 +254,15 @@ mod tests {
252254 let ( sk, pk) = full. generate_keypair ( & mut rand:: thread_rng ( ) ) ;
253255
254256 // Try signing
255- assert_eq ! ( sign. sign_ecdsa_recoverable( & msg, & sk) , full. sign_ecdsa_recoverable( & msg, & sk) ) ;
256- let sigr = full. sign_ecdsa_recoverable ( & msg, & sk) ;
257+ assert_eq ! ( sign. sign_ecdsa_recoverable( msg, & sk) , full. sign_ecdsa_recoverable( msg, & sk) ) ;
258+ let sigr = full. sign_ecdsa_recoverable ( msg, & sk) ;
257259
258260 // Try pk recovery
259- assert ! ( vrfy. recover_ecdsa( & msg, & sigr) . is_ok( ) ) ;
260- assert ! ( full. recover_ecdsa( & msg, & sigr) . is_ok( ) ) ;
261+ assert ! ( vrfy. recover_ecdsa( msg, & sigr) . is_ok( ) ) ;
262+ assert ! ( full. recover_ecdsa( msg, & sigr) . is_ok( ) ) ;
261263
262- assert_eq ! ( vrfy. recover_ecdsa( & msg, & sigr) , full. recover_ecdsa( & msg, & sigr) ) ;
263- assert_eq ! ( full. recover_ecdsa( & msg, & sigr) , Ok ( pk) ) ;
264+ assert_eq ! ( vrfy. recover_ecdsa( msg, & sigr) , full. recover_ecdsa( msg, & sigr) ) ;
265+ assert_eq ! ( full. recover_ecdsa( msg, & sigr) , Ok ( pk) ) ;
264266 }
265267
266268 #[ test]
@@ -280,7 +282,7 @@ mod tests {
280282 let sk = SecretKey :: from_slice ( & ONE ) . unwrap ( ) ;
281283 let msg = Message :: from_digest_slice ( & ONE ) . unwrap ( ) ;
282284
283- let sig = s. sign_ecdsa_recoverable ( & msg, & sk) ;
285+ let sig = s. sign_ecdsa_recoverable ( msg, & sk) ;
284286
285287 assert_eq ! ( Ok ( sig) , RecoverableSignature :: from_compact( & [
286288 0x66 , 0x73 , 0xff , 0xad , 0x21 , 0x47 , 0x74 , 0x1f ,
@@ -306,7 +308,7 @@ mod tests {
306308 let msg = Message :: from_digest_slice ( & ONE ) . unwrap ( ) ;
307309 let noncedata = [ 42u8 ; 32 ] ;
308310
309- let sig = s. sign_ecdsa_recoverable_with_noncedata ( & msg, & sk, & noncedata) ;
311+ let sig = s. sign_ecdsa_recoverable_with_noncedata ( msg, & sk, & noncedata) ;
310312
311313 assert_eq ! ( Ok ( sig) , RecoverableSignature :: from_compact( & [
312314 0xb5 , 0x0b , 0xb6 , 0x79 , 0x5f , 0x31 , 0x74 , 0x8a ,
@@ -331,14 +333,14 @@ mod tests {
331333
332334 let ( sk, pk) = s. generate_keypair ( & mut rand:: thread_rng ( ) ) ;
333335
334- let sigr = s. sign_ecdsa_recoverable ( & msg, & sk) ;
336+ let sigr = s. sign_ecdsa_recoverable ( msg, & sk) ;
335337 let sig = sigr. to_standard ( ) ;
336338
337339 let msg = crate :: random_32_bytes ( & mut rand:: thread_rng ( ) ) ;
338340 let msg = Message :: from_digest_slice ( & msg) . unwrap ( ) ;
339- assert_eq ! ( s. verify_ecdsa( & msg, & sig, & pk) , Err ( Error :: IncorrectSignature ) ) ;
341+ assert_eq ! ( s. verify_ecdsa( msg, & sig, & pk) , Err ( Error :: IncorrectSignature ) ) ;
340342
341- let recovered_key = s. recover_ecdsa ( & msg, & sigr) . unwrap ( ) ;
343+ let recovered_key = s. recover_ecdsa ( msg, & sigr) . unwrap ( ) ;
342344 assert ! ( recovered_key != pk) ;
343345 }
344346
@@ -353,9 +355,9 @@ mod tests {
353355
354356 let ( sk, pk) = s. generate_keypair ( & mut rand:: thread_rng ( ) ) ;
355357
356- let sig = s. sign_ecdsa_recoverable ( & msg, & sk) ;
358+ let sig = s. sign_ecdsa_recoverable ( msg, & sk) ;
357359
358- assert_eq ! ( s. recover_ecdsa( & msg, & sig) , Ok ( pk) ) ;
360+ assert_eq ! ( s. recover_ecdsa( msg, & sig) , Ok ( pk) ) ;
359361 }
360362
361363 #[ test]
@@ -371,9 +373,9 @@ mod tests {
371373
372374 let ( sk, pk) = s. generate_keypair ( & mut rand:: thread_rng ( ) ) ;
373375
374- let sig = s. sign_ecdsa_recoverable_with_noncedata ( & msg, & sk, & noncedata) ;
376+ let sig = s. sign_ecdsa_recoverable_with_noncedata ( msg, & sk, & noncedata) ;
375377
376- assert_eq ! ( s. recover_ecdsa( & msg, & sig) , Ok ( pk) ) ;
378+ assert_eq ! ( s. recover_ecdsa( msg, & sig) , Ok ( pk) ) ;
377379 }
378380
379381 #[ test]
@@ -386,10 +388,10 @@ mod tests {
386388
387389 // Zero is not a valid sig
388390 let sig = RecoverableSignature :: from_compact ( & [ 0 ; 64 ] , RecoveryId :: Zero ) . unwrap ( ) ;
389- assert_eq ! ( s. recover_ecdsa( & msg, & sig) , Err ( Error :: InvalidSignature ) ) ;
391+ assert_eq ! ( s. recover_ecdsa( msg, & sig) , Err ( Error :: InvalidSignature ) ) ;
390392 // ...but 111..111 is
391393 let sig = RecoverableSignature :: from_compact ( & [ 1 ; 64 ] , RecoveryId :: Zero ) . unwrap ( ) ;
392- assert ! ( s. recover_ecdsa( & msg, & sig) . is_ok( ) ) ;
394+ assert ! ( s. recover_ecdsa( msg, & sig) . is_ok( ) ) ;
393395 }
394396
395397 #[ test]
0 commit comments