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

lightningnetwork / lnd / 12115442155

02 Dec 2024 08:28AM UTC coverage: 48.662% (-10.3%) from 58.948%
12115442155

Pull #9175

github

ellemouton
netann: update ChanAnn2 validation to work for P2WSH channels

This commit expands the ChannelAnnouncement2 validation for the case
where it is announcing a P2WSH channel.
Pull Request #9175: lnwire+netann: update structure of g175 messages to be pure TLV

6 of 314 new or added lines in 9 files covered. (1.91%)

27532 existing lines in 434 files now uncovered.

97890 of 201164 relevant lines covered (48.66%)

0.52 hits per line

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

0.0
/watchtower/wtdb/migration5/codec.go
1
package migration5
2

3
import (
4
        "encoding/binary"
5
        "fmt"
6
)
7

8
// TowerID is a unique 64-bit identifier allocated to each unique watchtower.
9
// This allows the client to conserve on-disk space by not needing to always
10
// reference towers by their pubkey.
11
type TowerID uint64
12

13
// TowerIDFromBytes constructs a TowerID from the provided byte slice. The
14
// argument must have at least 8 bytes, and should contain the TowerID in
15
// big-endian byte order.
UNCOV
16
func TowerIDFromBytes(towerIDBytes []byte) (TowerID, error) {
×
UNCOV
17
        if len(towerIDBytes) != 8 {
×
UNCOV
18
                return 0, fmt.Errorf("not enough bytes in tower ID. "+
×
UNCOV
19
                        "Expected 8, got: %d", len(towerIDBytes))
×
UNCOV
20
        }
×
21

UNCOV
22
        return TowerID(byteOrder.Uint64(towerIDBytes)), nil
×
23
}
24

25
// Bytes encodes a TowerID into an 8-byte slice in big-endian byte order.
UNCOV
26
func (id TowerID) Bytes() []byte {
×
UNCOV
27
        var buf [8]byte
×
UNCOV
28
        binary.BigEndian.PutUint64(buf[:], uint64(id))
×
UNCOV
29
        return buf[:]
×
UNCOV
30
}
×
31

32
// SessionIDSize is 33-bytes; it is a serialized, compressed public key.
33
const SessionIDSize = 33
34

35
// SessionID is created from the remote public key of a client, and serves as a
36
// unique identifier and authentication for sending state updates.
37
type SessionID [SessionIDSize]byte
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