Skip to content

Commit 81baa8d

Browse files
committed
f wrong msg len
1 parent 4f0bac6 commit 81baa8d

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

lightning/src/ln/peer_handler.rs

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4694,24 +4694,25 @@ mod tests {
46944694
let secp_ctx = Secp256k1::new();
46954695
let key = SecretKey::from_slice(&[1; 32]).unwrap();
46964696
let msg = channel_announcement(&key, &key, ChannelFeatures::empty(), 42, &secp_ctx);
4697-
// The message bufer size is the message length plus two 16-byte MACs plus a 2-byte length.
4698-
let encoded_size = msg.encode().len() + 16 * 2 + 2;
4697+
// The message bufer size is the message length plus two 16-byte MACs plus a 2-byte length
4698+
// and 2-byte type.
4699+
let encoded_size = msg.serialized_length() + 16 * 2 + 2 + 2;
46994700
let msg_ev = MessageSendEvent::BroadcastChannelAnnouncement { msg, update_msg: None };
47004701

47014702
fd_a.hang_writes.store(true, Ordering::Relaxed);
47024703

47034704
// Now push an arbitrarily large number of messages and check that only
47044705
// `OUTBOUND_BUFFER_LIMIT_DROP_GOSSIP` messages end up in the queue.
4705-
for _ in 0..OUTBOUND_BUFFER_SIZE_LIMIT_DROP_GOSSIP / encoded_size {
4706+
for i in 0..OUTBOUND_BUFFER_SIZE_LIMIT_DROP_GOSSIP / encoded_size {
47064707
cfgs[0].routing_handler.pending_events.lock().unwrap().push(msg_ev.clone());
47074708
peers[0].process_events();
47084709
}
47094710

47104711
{
47114712
let peer_a_lock = peers[0].peers.read().unwrap();
4712-
let peer_state_lock = peer_a_lock.get(&fd_a).unwrap().lock().unwrap();
4713-
let buf_len: usize =
4714-
peer_state_lock.gossip_broadcast_buffer.iter().map(|m| m.capacity()).sum();
4713+
let peer = peer_a_lock.get(&fd_a).unwrap().lock().unwrap();
4714+
let buf_len = peer.pending_outbound_buffer.iter().map(|m| m.capacity()).sum::<usize>()
4715+
+ peer.gossip_broadcast_buffer.iter().map(|m| m.capacity()).sum::<usize>();
47154716
assert!(buf_len > OUTBOUND_BUFFER_SIZE_LIMIT_DROP_GOSSIP - encoded_size);
47164717
assert!(buf_len < OUTBOUND_BUFFER_SIZE_LIMIT_DROP_GOSSIP);
47174718
}
@@ -4723,9 +4724,9 @@ mod tests {
47234724

47244725
{
47254726
let peer_a_lock = peers[0].peers.read().unwrap();
4726-
let peer_state_lock = peer_a_lock.get(&fd_a).unwrap().lock().unwrap();
4727-
let buf_len: usize =
4728-
peer_state_lock.gossip_broadcast_buffer.iter().map(|m| m.capacity()).sum();
4727+
let peer = peer_a_lock.get(&fd_a).unwrap().lock().unwrap();
4728+
let buf_len = peer.pending_outbound_buffer.iter().map(|m| m.capacity()).sum::<usize>()
4729+
+ peer.gossip_broadcast_buffer.iter().map(|m| m.capacity()).sum::<usize>();
47294730
assert!(buf_len > OUTBOUND_BUFFER_SIZE_LIMIT_DROP_GOSSIP);
47304731
assert!(buf_len < OUTBOUND_BUFFER_SIZE_LIMIT_DROP_GOSSIP + encoded_size);
47314732
}

0 commit comments

Comments
 (0)