watchtower/multi: send connection features + chain hash in Init
This commit is contained in:
6 files changed
+149
-67
No files matched your search
@@ -27,6 +27,8 @@ var (
|
||||
)
|
||||
|
||||
addrScript, _ = txscript.PayToAddrScript(addr)
|
||||
|
||||
testnetChainHash = *chaincfg.TestNet3Params.GenesisHash
|
||||
)
|
||||
|
||||
// randPubKey generates a new secp keypair, and returns the public key.
|
||||
@@ -59,6 +61,7 @@ func initServer(t *testing.T, db wtserver.DB,
|
||||
NewAddress: func() (btcutil.Address, error) {
|
||||
return addr, nil
|
||||
},
|
||||
ChainHash: testnetChainHash,
|
||||
})
|
||||
if err != nil {
|
||||
t.Fatalf("unable to create server: %v", err)
|
||||
@@ -91,7 +94,7 @@ func TestServerOnlyAcceptOnePeer(t *testing.T) {
|
||||
|
||||
// Serialize a Init message to be sent by both peers.
|
||||
init := wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(), lnwire.NewRawFeatureVector(),
|
||||
lnwire.NewRawFeatureVector(), testnetChainHash,
|
||||
)
|
||||
|
||||
var b bytes.Buffer
|
||||
@@ -159,7 +162,7 @@ var createSessionTests = []createSessionTestCase{
|
||||
name: "reject duplicate session create",
|
||||
initMsg: wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(),
|
||||
lnwire.NewRawFeatureVector(),
|
||||
testnetChainHash,
|
||||
),
|
||||
createMsg: &wtwire.CreateSession{
|
||||
BlobType: blob.TypeDefault,
|
||||
@@ -181,7 +184,7 @@ var createSessionTests = []createSessionTestCase{
|
||||
name: "reject unsupported blob type",
|
||||
initMsg: wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(),
|
||||
lnwire.NewRawFeatureVector(),
|
||||
testnetChainHash,
|
||||
),
|
||||
createMsg: &wtwire.CreateSession{
|
||||
BlobType: 0,
|
||||
@@ -279,10 +282,10 @@ var stateUpdateTests = []stateUpdateTestCase{
|
||||
// Valid update sequence, send seqnum == lastapplied as last update.
|
||||
{
|
||||
name: "perm fail after sending seqnum equal lastapplied",
|
||||
initMsg: &wtwire.Init{&lnwire.Init{
|
||||
LocalFeatures: lnwire.NewRawFeatureVector(),
|
||||
GlobalFeatures: lnwire.NewRawFeatureVector(),
|
||||
}},
|
||||
initMsg: wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(),
|
||||
testnetChainHash,
|
||||
),
|
||||
createMsg: &wtwire.CreateSession{
|
||||
BlobType: blob.TypeDefault,
|
||||
MaxUpdates: 3,
|
||||
@@ -309,10 +312,10 @@ var stateUpdateTests = []stateUpdateTestCase{
|
||||
// Send update that skips next expected sequence number.
|
||||
{
|
||||
name: "skip sequence number",
|
||||
initMsg: &wtwire.Init{&lnwire.Init{
|
||||
LocalFeatures: lnwire.NewRawFeatureVector(),
|
||||
GlobalFeatures: lnwire.NewRawFeatureVector(),
|
||||
}},
|
||||
initMsg: wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(),
|
||||
testnetChainHash,
|
||||
),
|
||||
createMsg: &wtwire.CreateSession{
|
||||
BlobType: blob.TypeDefault,
|
||||
MaxUpdates: 4,
|
||||
@@ -333,10 +336,10 @@ var stateUpdateTests = []stateUpdateTestCase{
|
||||
// Send update that reverts to older sequence number.
|
||||
{
|
||||
name: "revert to older seqnum",
|
||||
initMsg: &wtwire.Init{&lnwire.Init{
|
||||
LocalFeatures: lnwire.NewRawFeatureVector(),
|
||||
GlobalFeatures: lnwire.NewRawFeatureVector(),
|
||||
}},
|
||||
initMsg: wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(),
|
||||
testnetChainHash,
|
||||
),
|
||||
createMsg: &wtwire.CreateSession{
|
||||
BlobType: blob.TypeDefault,
|
||||
MaxUpdates: 4,
|
||||
@@ -361,10 +364,10 @@ var stateUpdateTests = []stateUpdateTestCase{
|
||||
// Send update echoing a last applied that is lower than previous value.
|
||||
{
|
||||
name: "revert to older lastapplied",
|
||||
initMsg: &wtwire.Init{&lnwire.Init{
|
||||
LocalFeatures: lnwire.NewRawFeatureVector(),
|
||||
GlobalFeatures: lnwire.NewRawFeatureVector(),
|
||||
}},
|
||||
initMsg: wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(),
|
||||
testnetChainHash,
|
||||
),
|
||||
createMsg: &wtwire.CreateSession{
|
||||
BlobType: blob.TypeDefault,
|
||||
MaxUpdates: 4,
|
||||
@@ -389,10 +392,10 @@ var stateUpdateTests = []stateUpdateTestCase{
|
||||
// Client echos last applied as they are received.
|
||||
{
|
||||
name: "resume after disconnect",
|
||||
initMsg: &wtwire.Init{&lnwire.Init{
|
||||
LocalFeatures: lnwire.NewRawFeatureVector(),
|
||||
GlobalFeatures: lnwire.NewRawFeatureVector(),
|
||||
}},
|
||||
initMsg: wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(),
|
||||
testnetChainHash,
|
||||
),
|
||||
createMsg: &wtwire.CreateSession{
|
||||
BlobType: blob.TypeDefault,
|
||||
MaxUpdates: 4,
|
||||
@@ -419,10 +422,10 @@ var stateUpdateTests = []stateUpdateTestCase{
|
||||
// Client doesn't echo last applied until last message.
|
||||
{
|
||||
name: "resume after disconnect lagging lastapplied",
|
||||
initMsg: &wtwire.Init{&lnwire.Init{
|
||||
LocalFeatures: lnwire.NewRawFeatureVector(),
|
||||
GlobalFeatures: lnwire.NewRawFeatureVector(),
|
||||
}},
|
||||
initMsg: wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(),
|
||||
testnetChainHash,
|
||||
),
|
||||
createMsg: &wtwire.CreateSession{
|
||||
BlobType: blob.TypeDefault,
|
||||
MaxUpdates: 4,
|
||||
@@ -448,10 +451,10 @@ var stateUpdateTests = []stateUpdateTestCase{
|
||||
// Send update with sequence number that exceeds MaxUpdates.
|
||||
{
|
||||
name: "seqnum exceed maxupdates",
|
||||
initMsg: &wtwire.Init{&lnwire.Init{
|
||||
LocalFeatures: lnwire.NewRawFeatureVector(),
|
||||
GlobalFeatures: lnwire.NewRawFeatureVector(),
|
||||
}},
|
||||
initMsg: wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(),
|
||||
testnetChainHash,
|
||||
),
|
||||
createMsg: &wtwire.CreateSession{
|
||||
BlobType: blob.TypeDefault,
|
||||
MaxUpdates: 3,
|
||||
@@ -478,10 +481,10 @@ var stateUpdateTests = []stateUpdateTestCase{
|
||||
// Ensure sequence number 0 causes permanent failure.
|
||||
{
|
||||
name: "perm fail after seqnum 0",
|
||||
initMsg: &wtwire.Init{&lnwire.Init{
|
||||
LocalFeatures: lnwire.NewRawFeatureVector(),
|
||||
GlobalFeatures: lnwire.NewRawFeatureVector(),
|
||||
}},
|
||||
initMsg: wtwire.NewInitMessage(
|
||||
lnwire.NewRawFeatureVector(),
|
||||
testnetChainHash,
|
||||
),
|
||||
createMsg: &wtwire.CreateSession{
|
||||
BlobType: blob.TypeDefault,
|
||||
MaxUpdates: 3,
|
||||
|
||||
Reference in new issue
Block a user