lnwire: add new SerializedSize method to all wire messages

This'll be useful for the bandwidth based rate limiting we'll implement
in the next commit.
This commit is contained in:
Olaoluwa Osuntokun
2025-03-18 18:55:16 -05:00
parent e8875e06fe
commit 56a100123b
40 changed files with 453 additions and 4 deletions

View File

@@ -33,6 +33,10 @@ func NewPing(numBytes uint16) *Ping {
// A compile time check to ensure Ping implements the lnwire.Message interface.
var _ Message = (*Ping)(nil)
// A compile time check to ensure Ping implements the lnwire.SizeableMessage
// interface.
var _ SizeableMessage = (*Ping)(nil)
// Decode deserializes a serialized Ping message stored in the passed io.Reader
// observing the specified protocol version.
//
@@ -69,3 +73,10 @@ func (p *Ping) Encode(w *bytes.Buffer, pver uint32) error {
func (p *Ping) MsgType() MessageType {
return MsgPing
}
// SerializedSize returns the serialized size of the message in bytes.
//
// This is part of the lnwire.SizeableMessage interface.
func (p *Ping) SerializedSize() (uint32, error) {
return MessageSerializedSize(p)
}