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

lightningnetwork / lnd / 13157733617

05 Feb 2025 12:49PM UTC coverage: 57.712% (-1.1%) from 58.82%
13157733617

Pull #9447

github

yyforyongyu
sweep: rename methods for clarity

We now rename "third party" to "unknown" as the inputs can be spent via
an older sweeping tx, a third party (anchor), or a remote party (pin).
In fee bumper we don't have the info to distinguish the above cases, and
leave them to be further handled by the sweeper as it has more context.
Pull Request #9447: sweep: start tracking input spending status in the fee bumper

83 of 87 new or added lines in 2 files covered. (95.4%)

19472 existing lines in 252 files now uncovered.

103634 of 179570 relevant lines covered (57.71%)

24840.31 hits per line

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

63.33
/lnwire/update_fail_malformed_htlc.go
1
package lnwire
2

3
import (
4
        "bytes"
5
        "crypto/sha256"
6
        "io"
7
)
8

9
// UpdateFailMalformedHTLC is sent by either the payment forwarder or by
10
// payment receiver to the payment sender in order to notify it that the onion
11
// blob can't be parsed. For that reason we send this message instead of
12
// obfuscate the onion failure.
13
type UpdateFailMalformedHTLC struct {
14
        // ChanID is the particular active channel that this
15
        // UpdateFailMalformedHTLC is bound to.
16
        ChanID ChannelID
17

18
        // ID references which HTLC on the remote node's commitment transaction
19
        // has timed out.
20
        ID uint64
21

22
        // ShaOnionBlob hash of the onion blob on which can't be parsed by the
23
        // node in the payment path.
24
        ShaOnionBlob [sha256.Size]byte
25

26
        // FailureCode the exact reason why onion blob haven't been parsed.
27
        FailureCode FailCode
28

29
        // ExtraData is the set of data that was appended to this message to
30
        // fill out the full maximum transport message size. These fields can
31
        // be used to specify optional data such as custom TLV fields.
32
        ExtraData ExtraOpaqueData
33
}
34

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

39
// Decode deserializes a serialized UpdateFailMalformedHTLC message stored in the passed
40
// io.Reader observing the specified protocol version.
41
//
42
// This is part of the lnwire.Message interface.
43
func (c *UpdateFailMalformedHTLC) Decode(r io.Reader, pver uint32) error {
135✔
44
        return ReadElements(r,
135✔
45
                &c.ChanID,
135✔
46
                &c.ID,
135✔
47
                c.ShaOnionBlob[:],
135✔
48
                &c.FailureCode,
135✔
49
                &c.ExtraData,
135✔
50
        )
135✔
51
}
135✔
52

53
// Encode serializes the target UpdateFailMalformedHTLC into the passed
54
// io.Writer observing the protocol version specified.
55
//
56
// This is part of the lnwire.Message interface.
57
func (c *UpdateFailMalformedHTLC) Encode(w *bytes.Buffer,
58
        pver uint32) error {
118✔
59

118✔
60
        if err := WriteChannelID(w, c.ChanID); err != nil {
118✔
61
                return err
×
62
        }
×
63

64
        if err := WriteUint64(w, c.ID); err != nil {
118✔
65
                return err
×
66
        }
×
67

68
        if err := WriteBytes(w, c.ShaOnionBlob[:]); err != nil {
118✔
69
                return err
×
70
        }
×
71

72
        if err := WriteFailCode(w, c.FailureCode); err != nil {
118✔
73
                return err
×
74
        }
×
75

76
        return WriteBytes(w, c.ExtraData)
118✔
77
}
78

79
// MsgType returns the integer uniquely identifying this message type on the
80
// wire.
81
//
82
// This is part of the lnwire.Message interface.
83
func (c *UpdateFailMalformedHTLC) MsgType() MessageType {
121✔
84
        return MsgUpdateFailMalformedHTLC
121✔
85
}
121✔
86

87
// TargetChanID returns the channel id of the link for which this message is
88
// intended.
89
//
90
// NOTE: Part of peer.LinkUpdater interface.
UNCOV
91
func (c *UpdateFailMalformedHTLC) TargetChanID() ChannelID {
×
UNCOV
92
        return c.ChanID
×
UNCOV
93
}
×
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