@@ -295,7 +295,7 @@ pub(super) struct Channel<ChanSigner: ChannelKeys> {
295
295
holding_cell_update_fee : Option < u64 > ,
296
296
next_local_htlc_id : u64 ,
297
297
next_remote_htlc_id : u64 ,
298
- channel_update_count : u32 ,
298
+ update_time_counter : u32 ,
299
299
feerate_per_kw : u64 ,
300
300
301
301
#[ cfg( debug_assertions) ]
@@ -490,7 +490,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
490
490
holding_cell_update_fee : None ,
491
491
next_local_htlc_id : 0 ,
492
492
next_remote_htlc_id : 0 ,
493
- channel_update_count : 1 ,
493
+ update_time_counter : 1 ,
494
494
495
495
resend_order : RAACommitmentOrder :: CommitmentFirst ,
496
496
@@ -714,7 +714,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
714
714
holding_cell_update_fee : None ,
715
715
next_local_htlc_id : 0 ,
716
716
next_remote_htlc_id : 0 ,
717
- channel_update_count : 1 ,
717
+ update_time_counter : 1 ,
718
718
719
719
resend_order : RAACommitmentOrder :: CommitmentFirst ,
720
720
@@ -1586,7 +1586,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
1586
1586
self . channel_state |= ChannelState :: TheirFundingLocked as u32 ;
1587
1587
} else if non_shutdown_state == ( ChannelState :: FundingSent as u32 | ChannelState :: OurFundingLocked as u32 ) {
1588
1588
self . channel_state = ChannelState :: ChannelFunded as u32 | ( self . channel_state & MULTI_STATE_FLAGS ) ;
1589
- self . channel_update_count += 1 ;
1589
+ self . update_time_counter += 1 ;
1590
1590
} else if ( self . channel_state & ( ChannelState :: ChannelFunded as u32 ) != 0 &&
1591
1591
// Note that funding_signed/funding_created will have decremented both by 1!
1592
1592
self . cur_local_commitment_transaction_number == INITIAL_COMMITMENT_NUMBER - 1 &&
@@ -2480,7 +2480,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
2480
2480
}
2481
2481
Channel :: < ChanSigner > :: check_remote_fee ( fee_estimator, msg. feerate_per_kw ) ?;
2482
2482
self . pending_update_fee = Some ( msg. feerate_per_kw as u64 ) ;
2483
- self . channel_update_count += 1 ;
2483
+ self . update_time_counter += 1 ;
2484
2484
Ok ( ( ) )
2485
2485
}
2486
2486
@@ -2763,7 +2763,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
2763
2763
// From here on out, we may not fail!
2764
2764
2765
2765
self . channel_state |= ChannelState :: RemoteShutdownSent as u32 ;
2766
- self . channel_update_count += 1 ;
2766
+ self . update_time_counter += 1 ;
2767
2767
2768
2768
// We can't send our shutdown until we've committed all of our pending HTLCs, but the
2769
2769
// remote side is unlikely to accept any new HTLCs, so we go ahead and "free" any holding
@@ -2793,7 +2793,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
2793
2793
} ;
2794
2794
2795
2795
self . channel_state |= ChannelState :: LocalShutdownSent as u32 ;
2796
- self . channel_update_count += 1 ;
2796
+ self . update_time_counter += 1 ;
2797
2797
2798
2798
Ok ( ( our_shutdown, self . maybe_propose_first_closing_signed ( fee_estimator) , dropped_outbound_htlcs) )
2799
2799
}
@@ -2860,7 +2860,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
2860
2860
if last_fee == msg. fee_satoshis {
2861
2861
self . build_signed_closing_transaction ( & mut closing_tx, & msg. signature , & our_sig) ;
2862
2862
self . channel_state = ChannelState :: ShutdownComplete as u32 ;
2863
- self . channel_update_count += 1 ;
2863
+ self . update_time_counter += 1 ;
2864
2864
return Ok ( ( None , Some ( closing_tx) ) ) ;
2865
2865
}
2866
2866
}
@@ -2910,7 +2910,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
2910
2910
self . build_signed_closing_transaction ( & mut closing_tx, & msg. signature , & our_sig) ;
2911
2911
2912
2912
self . channel_state = ChannelState :: ShutdownComplete as u32 ;
2913
- self . channel_update_count += 1 ;
2913
+ self . update_time_counter += 1 ;
2914
2914
2915
2915
Ok ( ( Some ( msgs:: ClosingSigned {
2916
2916
channel_id : self . channel_id ,
@@ -3022,8 +3022,8 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
3022
3022
}
3023
3023
3024
3024
/// Allowed in any state (including after shutdown)
3025
- pub fn get_channel_update_count ( & self ) -> u32 {
3026
- self . channel_update_count
3025
+ pub fn get_update_time_counter ( & self ) -> u32 {
3026
+ self . update_time_counter
3027
3027
}
3028
3028
3029
3029
pub fn get_latest_monitor_update_id ( & self ) -> u64 {
@@ -3149,7 +3149,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
3149
3149
panic ! ( "Client called ChannelManager::funding_transaction_generated with bogus transaction!" ) ;
3150
3150
}
3151
3151
self . channel_state = ChannelState :: ShutdownComplete as u32 ;
3152
- self . channel_update_count += 1 ;
3152
+ self . update_time_counter += 1 ;
3153
3153
return Err ( msgs:: ErrorMessage {
3154
3154
channel_id : self . channel_id ( ) ,
3155
3155
data : "funding tx had wrong script/value" . to_owned ( )
@@ -3175,6 +3175,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
3175
3175
}
3176
3176
if header. bitcoin_hash ( ) != self . last_block_connected {
3177
3177
self . last_block_connected = header. bitcoin_hash ( ) ;
3178
+ self . update_time_counter = cmp:: max ( self . update_time_counter , header. time ) ;
3178
3179
if let Some ( channel_monitor) = self . channel_monitor . as_mut ( ) {
3179
3180
channel_monitor. last_block_hash = self . last_block_connected ;
3180
3181
}
@@ -3185,7 +3186,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
3185
3186
true
3186
3187
} else if non_shutdown_state == ( ChannelState :: FundingSent as u32 | ChannelState :: TheirFundingLocked as u32 ) {
3187
3188
self . channel_state = ChannelState :: ChannelFunded as u32 | ( self . channel_state & MULTI_STATE_FLAGS ) ;
3188
- self . channel_update_count += 1 ;
3189
+ self . update_time_counter += 1 ;
3189
3190
true
3190
3191
} else if non_shutdown_state == ( ChannelState :: FundingSent as u32 | ChannelState :: OurFundingLocked as u32 ) {
3191
3192
// We got a reorg but not enough to trigger a force close, just update
@@ -3728,7 +3729,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
3728
3729
} else {
3729
3730
self . channel_state |= ChannelState :: LocalShutdownSent as u32 ;
3730
3731
}
3731
- self . channel_update_count += 1 ;
3732
+ self . update_time_counter += 1 ;
3732
3733
3733
3734
// Go ahead and drop holding cell updates as we'd rather fail payments than wait to send
3734
3735
// our shutdown until we've committed all of the pending changes.
@@ -3777,7 +3778,7 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
3777
3778
}
3778
3779
3779
3780
self . channel_state = ChannelState :: ShutdownComplete as u32 ;
3780
- self . channel_update_count += 1 ;
3781
+ self . update_time_counter += 1 ;
3781
3782
if self . channel_monitor . is_some ( ) {
3782
3783
( self . channel_monitor . as_mut ( ) . unwrap ( ) . get_latest_local_commitment_txn ( ) , dropped_outbound_htlcs)
3783
3784
} else {
@@ -3964,7 +3965,7 @@ impl<ChanSigner: ChannelKeys + Writeable> Writeable for Channel<ChanSigner> {
3964
3965
3965
3966
self . next_local_htlc_id . write ( writer) ?;
3966
3967
( self . next_remote_htlc_id - dropped_inbound_htlcs) . write ( writer) ?;
3967
- self . channel_update_count . write ( writer) ?;
3968
+ self . update_time_counter . write ( writer) ?;
3968
3969
self . feerate_per_kw . write ( writer) ?;
3969
3970
3970
3971
match self . last_sent_closing_fee {
@@ -4124,7 +4125,7 @@ impl<ChanSigner: ChannelKeys + Readable> ReadableArgs<Arc<Logger>> for Channel<C
4124
4125
4125
4126
let next_local_htlc_id = Readable :: read ( reader) ?;
4126
4127
let next_remote_htlc_id = Readable :: read ( reader) ?;
4127
- let channel_update_count = Readable :: read ( reader) ?;
4128
+ let update_time_counter = Readable :: read ( reader) ?;
4128
4129
let feerate_per_kw = Readable :: read ( reader) ?;
4129
4130
4130
4131
let last_sent_closing_fee = match <u8 as Readable >:: read ( reader) ? {
@@ -4203,7 +4204,7 @@ impl<ChanSigner: ChannelKeys + Readable> ReadableArgs<Arc<Logger>> for Channel<C
4203
4204
holding_cell_update_fee,
4204
4205
next_local_htlc_id,
4205
4206
next_remote_htlc_id,
4206
- channel_update_count ,
4207
+ update_time_counter ,
4207
4208
feerate_per_kw,
4208
4209
4209
4210
#[ cfg( debug_assertions) ]
0 commit comments