@@ -1554,22 +1554,21 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1554
1554
let next_step = peer. channel_encryptor . get_noise_step ( ) ;
1555
1555
match next_step {
1556
1556
NextNoiseStep :: ActOne => {
1557
- let act_two = try_potential_handleerror ! (
1558
- peer,
1559
- peer. channel_encryptor. process_act_one_with_keys( & peer. pending_read_buffer[ ..] ,
1557
+ let res = peer. channel_encryptor . process_act_one_with_keys (
1558
+ & peer. pending_read_buffer [ ..] ,
1560
1559
& self . node_signer ,
1561
1560
self . get_ephemeral_key ( ) ,
1562
1561
& self . secp_ctx
1563
- ) ) . to_vec ( ) ;
1562
+ ) ;
1563
+ let act_two = try_potential_handleerror ! ( peer, res) . to_vec ( ) ;
1564
1564
peer. pending_outbound_buffer . push_back ( act_two) ;
1565
1565
peer. pending_read_buffer = [ 0 ; 66 ] . to_vec ( ) ; // act three is 66 bytes long
1566
1566
} ,
1567
1567
NextNoiseStep :: ActTwo => {
1568
- let ( act_three, their_node_id) = try_potential_handleerror ! (
1569
- peer,
1570
- peer. channel_encryptor. process_act_two( & peer. pending_read_buffer[ ..] ,
1568
+ let res = peer. channel_encryptor . process_act_two ( & peer. pending_read_buffer [ ..] ,
1571
1569
& self . node_signer
1572
- ) ) ;
1570
+ ) ;
1571
+ let ( act_three, their_node_id) = try_potential_handleerror ! ( peer, res) ;
1573
1572
peer. pending_outbound_buffer . push_back ( act_three. to_vec ( ) ) ;
1574
1573
peer. pending_read_buffer = [ 0 ; 18 ] . to_vec ( ) ; // Message length header is 18 bytes
1575
1574
peer. pending_read_is_header = true ;
@@ -1582,10 +1581,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1582
1581
self . enqueue_message ( peer, & resp) ;
1583
1582
} ,
1584
1583
NextNoiseStep :: ActThree => {
1585
- let their_node_id = try_potential_handleerror ! (
1586
- peer,
1587
- peer. channel_encryptor. process_act_three( & peer. pending_read_buffer[ ..] )
1588
- ) ;
1584
+ let res = peer. channel_encryptor . process_act_three ( & peer. pending_read_buffer [ ..] ) ;
1585
+ let their_node_id = try_potential_handleerror ! ( peer, res) ;
1589
1586
peer. pending_read_buffer = [ 0 ; 18 ] . to_vec ( ) ; // Message length header is 18 bytes
1590
1587
peer. pending_read_is_header = true ;
1591
1588
peer. set_their_node_id ( their_node_id) ;
@@ -1597,10 +1594,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1597
1594
} ,
1598
1595
NextNoiseStep :: NoiseComplete => {
1599
1596
if peer. pending_read_is_header {
1600
- let msg_len = try_potential_handleerror ! (
1601
- peer,
1602
- peer. channel_encryptor. decrypt_length_header( & peer. pending_read_buffer[ ..] )
1603
- ) ;
1597
+ let res = peer. channel_encryptor . decrypt_length_header ( & peer. pending_read_buffer [ ..] ) ;
1598
+ let msg_len = try_potential_handleerror ! ( peer, res) ;
1604
1599
if peer. pending_read_buffer . capacity ( ) > 8192 { peer. pending_read_buffer = Vec :: new ( ) ; }
1605
1600
peer. pending_read_buffer . resize ( msg_len as usize + 16 , 0 ) ;
1606
1601
if msg_len < 2 { // Need at least the message type tag
@@ -1609,10 +1604,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1609
1604
peer. pending_read_is_header = false ;
1610
1605
} else {
1611
1606
debug_assert ! ( peer. pending_read_buffer. len( ) >= 2 + 16 ) ;
1612
- try_potential_handleerror ! (
1613
- peer,
1614
- peer. channel_encryptor. decrypt_message( & mut peer. pending_read_buffer[ ..] )
1615
- ) ;
1607
+ let res = peer. channel_encryptor . decrypt_message ( & mut peer. pending_read_buffer [ ..] ) ;
1608
+ try_potential_handleerror ! ( peer, res) ;
1616
1609
1617
1610
let message_result = wire:: read (
1618
1611
& mut & peer. pending_read_buffer [ ..peer. pending_read_buffer . len ( ) - 16 ] ,
0 commit comments