@@ -2,7 +2,6 @@ use std::sync::{Arc, RwLock};
2
2
3
3
use anyhow:: anyhow;
4
4
use async_trait:: async_trait;
5
- use rlp:: Rlp ;
6
5
7
6
use trin_core:: {
8
7
portalnet:: types:: { content_key:: HistoryContentKey , messages:: ByteList } ,
@@ -28,14 +27,12 @@ impl Validator<HistoryContentKey> for ChainHistoryValidator {
28
27
{
29
28
match content_key {
30
29
HistoryContentKey :: BlockHeader ( key) => {
31
- let rlp = Rlp :: new ( content) ;
32
- let header = Header :: decode_rlp ( & rlp) ?;
33
- let number = format ! ( "0x{:02X}" , header. number) ;
30
+ let header: Header = rlp:: decode ( content) ?;
34
31
let expected_hash = & self
35
32
. header_oracle
36
33
. write ( )
37
34
. unwrap ( )
38
- . get_hash_at_height ( number) ?;
35
+ . get_hash_at_height ( header . number ) ?;
39
36
let actual_hash = & hex:: encode ( key. block_hash ) ;
40
37
if actual_hash == expected_hash {
41
38
Ok ( ( ) )
@@ -73,7 +70,6 @@ mod tests {
73
70
use ethereum_types:: U256 ;
74
71
use hex;
75
72
use httpmock:: prelude:: * ;
76
- use rlp:: { self , Rlp } ;
77
73
use serde_json:: json;
78
74
79
75
use trin_core:: portalnet:: types:: content_key:: BlockHeader ;
@@ -125,9 +121,8 @@ mod tests {
125
121
let server = setup_mock_infura_server ( ) ;
126
122
let header_rlp = get_header_rlp ( ) ;
127
123
let header_bytelist = ByteList :: try_from ( header_rlp. clone ( ) ) . unwrap ( ) ;
128
- let rlp = Rlp :: new ( & header_rlp) ;
129
124
130
- let header: Header = Header :: decode_rlp ( & rlp ) . expect ( "error decoding header" ) ;
125
+ let header: Header = rlp :: decode ( & header_rlp ) . expect ( "error decoding header" ) ;
131
126
let infura_url = server. url ( "/get_header" ) ;
132
127
let header_oracle = Arc :: new ( RwLock :: new ( HeaderOracle {
133
128
infura_url,
@@ -151,8 +146,7 @@ mod tests {
151
146
// RLP encoded block header #669051
152
147
let header_rlp = get_header_rlp ( ) ;
153
148
let header_bytelist = ByteList :: try_from ( header_rlp. clone ( ) ) . unwrap ( ) ;
154
- let rlp = Rlp :: new ( & header_rlp) ;
155
- let mut header: Header = Header :: decode_rlp ( & rlp) . expect ( "error decoding header" ) ;
149
+ let mut header: Header = rlp:: decode ( & header_rlp) . expect ( "error decoding header" ) ;
156
150
157
151
// set invalid block height
158
152
header. number = 669052 ;
@@ -180,8 +174,7 @@ mod tests {
180
174
// RLP encoded block header #669051
181
175
let header_rlp = get_header_rlp ( ) ;
182
176
let header_bytelist = ByteList :: try_from ( header_rlp. clone ( ) ) . unwrap ( ) ;
183
- let rlp = Rlp :: new ( & header_rlp) ;
184
- let mut header: Header = Header :: decode_rlp ( & rlp) . expect ( "error decoding header" ) ;
177
+ let mut header: Header = rlp:: decode ( & header_rlp) . expect ( "error decoding header" ) ;
185
178
186
179
// set invalid block gaslimit
187
180
// valid gaslimit = 3141592
0 commit comments