@@ -12,8 +12,7 @@ fn panic(_info: &core::panic::PanicInfo) -> ! {
12
12
}
13
13
14
14
15
- use alloc:: vec:: Vec ;
16
- use alloc:: vec;
15
+ use alloc:: { vec, vec:: Vec } ;
17
16
use stylus_sdk:: {
18
17
prelude:: { entrypoint, public, storage} ,
19
18
storage:: { StorageMap , StorageUint , StorageAddress , StorageBool } ,
@@ -49,7 +48,6 @@ pub struct VerifiedVMM {
49
48
pub hash : FixedBytes < 32 > ,
50
49
}
51
50
52
- #[ derive( Debug ) ]
53
51
pub enum WormholeError {
54
52
InvalidGuardianSetIndex ,
55
53
GuardianSetExpired ,
@@ -67,9 +65,15 @@ pub enum WormholeError {
67
65
VerifyVAAError ,
68
66
}
69
67
68
+ impl core:: fmt:: Debug for WormholeError {
69
+ fn fmt ( & self , f : & mut core:: fmt:: Formatter < ' _ > ) -> core:: fmt:: Result {
70
+ f. write_str ( "" )
71
+ }
72
+ }
73
+
70
74
impl From < WormholeError > for Vec < u8 > {
71
75
fn from ( error : WormholeError ) -> Vec < u8 > {
72
- let byte : u8 = match error {
76
+ vec ! [ match error {
73
77
WormholeError :: InvalidGuardianSetIndex => 1 ,
74
78
WormholeError :: GuardianSetExpired => 2 ,
75
79
WormholeError :: NoQuorum => 3 ,
@@ -84,8 +88,7 @@ impl From<WormholeError> for Vec<u8> {
84
88
WormholeError :: InvalidGuardianIndex => 12 ,
85
89
WormholeError :: InvalidAddressLength => 13 ,
86
90
WormholeError :: VerifyVAAError => 14 ,
87
- } ;
88
- vec ! [ byte]
91
+ } ]
89
92
}
90
93
}
91
94
@@ -386,10 +389,7 @@ impl WormholeContract {
386
389
return Err ( WormholeError :: InvalidSignature ) ;
387
390
}
388
391
389
- let sig_bytes: [ u8 ; 64 ] = signature[ ..64 ] . try_into ( )
390
- . map_err ( |_| WormholeError :: InvalidSignature ) ?;
391
392
let recovery_id_byte = signature[ 64 ] ;
392
-
393
393
let recovery_id = if recovery_id_byte >= 27 {
394
394
RecoveryId :: try_from ( recovery_id_byte - 27 )
395
395
. map_err ( |_| WormholeError :: InvalidSignature ) ?
@@ -398,13 +398,10 @@ impl WormholeContract {
398
398
. map_err ( |_| WormholeError :: InvalidSignature ) ?
399
399
} ;
400
400
401
- let sig = Signature :: try_from ( & sig_bytes [ ..] )
401
+ let sig = Signature :: try_from ( & signature [ ..64 ] )
402
402
. map_err ( |_| WormholeError :: InvalidSignature ) ?;
403
-
404
- let hash_array: [ u8 ; 32 ] = hash. as_slice ( ) . try_into ( )
405
- . map_err ( |_| WormholeError :: InvalidInput ) ?;
406
403
407
- let verifying_key = VerifyingKey :: recover_from_prehash ( & hash_array , & sig, recovery_id)
404
+ let verifying_key = VerifyingKey :: recover_from_prehash ( hash . as_slice ( ) . try_into ( ) . map_err ( |_| WormholeError :: InvalidInput ) ? , & sig, recovery_id)
408
405
. map_err ( |_| WormholeError :: InvalidSignature ) ?;
409
406
410
407
let public_key_bytes = verifying_key. to_encoded_point ( false ) ;
0 commit comments