• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

lightningnetwork / lnd / 15561477203

10 Jun 2025 01:54PM UTC coverage: 58.351% (-10.1%) from 68.487%
15561477203

Pull #9356

github

web-flow
Merge 6440b25db into c6d6d4c0b
Pull Request #9356: lnrpc: add incoming/outgoing channel ids filter to forwarding history request

33 of 36 new or added lines in 2 files covered. (91.67%)

28366 existing lines in 455 files now uncovered.

97715 of 167461 relevant lines covered (58.35%)

1.81 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/lnwire/update_fee.go
1
package lnwire
2

3
import (
4
        "bytes"
5
        "io"
6
)
7

8
// UpdateFee is the message the channel initiator sends to the other peer if
9
// the channel commitment fee needs to be updated.
10
type UpdateFee struct {
11
        // ChanID is the channel that this UpdateFee is meant for.
12
        ChanID ChannelID
13

14
        // FeePerKw is the fee-per-kw on commit transactions that the sender of
15
        // this message wants to use for this channel.
16
        //
17
        // TODO(halseth): make SatPerKWeight when fee estimation is moved to
18
        // own package. Currently this will cause an import cycle.
19
        FeePerKw uint32
20

21
        // ExtraData is the set of data that was appended to this message to
22
        // fill out the full maximum transport message size. These fields can
23
        // be used to specify optional data such as custom TLV fields.
24
        ExtraData ExtraOpaqueData
25
}
26

27
// NewUpdateFee creates a new UpdateFee message.
UNCOV
28
func NewUpdateFee(chanID ChannelID, feePerKw uint32) *UpdateFee {
×
UNCOV
29
        return &UpdateFee{
×
UNCOV
30
                ChanID:   chanID,
×
UNCOV
31
                FeePerKw: feePerKw,
×
UNCOV
32
        }
×
UNCOV
33
}
×
34

35
// A compile time check to ensure UpdateFee implements the lnwire.Message
36
// interface.
37
var _ Message = (*UpdateFee)(nil)
38

39
// A compile time check to ensure UpdateFee implements the
40
// lnwire.SizeableMessage interface.
41
var _ SizeableMessage = (*UpdateFee)(nil)
42

43
// Decode deserializes a serialized UpdateFee message stored in the passed
44
// io.Reader observing the specified protocol version.
45
//
46
// This is part of the lnwire.Message interface.
UNCOV
47
func (c *UpdateFee) Decode(r io.Reader, pver uint32) error {
×
UNCOV
48
        return ReadElements(r,
×
UNCOV
49
                &c.ChanID,
×
UNCOV
50
                &c.FeePerKw,
×
UNCOV
51
                &c.ExtraData,
×
UNCOV
52
        )
×
UNCOV
53
}
×
54

55
// Encode serializes the target UpdateFee into the passed io.Writer
56
// observing the protocol version specified.
57
//
58
// This is part of the lnwire.Message interface.
UNCOV
59
func (c *UpdateFee) Encode(w *bytes.Buffer, pver uint32) error {
×
UNCOV
60
        if err := WriteChannelID(w, c.ChanID); err != nil {
×
61
                return err
×
62
        }
×
63

UNCOV
64
        if err := WriteUint32(w, c.FeePerKw); err != nil {
×
65
                return err
×
66
        }
×
67

UNCOV
68
        return WriteBytes(w, c.ExtraData)
×
69
}
70

71
// MsgType returns the integer uniquely identifying this message type on the
72
// wire.
73
//
74
// This is part of the lnwire.Message interface.
UNCOV
75
func (c *UpdateFee) MsgType() MessageType {
×
UNCOV
76
        return MsgUpdateFee
×
UNCOV
77
}
×
78

79
// SerializedSize returns the serialized size of the message in bytes.
80
//
81
// This is part of the lnwire.SizeableMessage interface.
82
func (c *UpdateFee) SerializedSize() (uint32, error) {
×
83
        return MessageSerializedSize(c)
×
84
}
×
85

86
// TargetChanID returns the channel id of the link for which this message is
87
// intended.
88
//
89
// NOTE: Part of peer.LinkUpdater interface.
90
func (c *UpdateFee) TargetChanID() ChannelID {
×
91
        return c.ChanID
×
92
}
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc