diff --git a/wire/protocol.go b/wire/protocol.go index c767a5fa..8cc9838a 100644 --- a/wire/protocol.go +++ b/wire/protocol.go @@ -72,9 +72,20 @@ const ( // and transactions including witness data (BIP0144). SFNodeWitness + // SFNodeXthin is a flag used to indicate a peer supports xthin blocks. + SFNodeXthin + + // SFNodeBit5 is a flag used to indicate a peer supports a service + // defined by bit 5. + SFNodeBit5 + // SFNodeCF is a flag used to indicate a peer supports committed // filters (CFs). SFNodeCF + + // SFNode2X is a flag used to indicate a peer is running the Segwit2X + // software. + SFNode2X ) // Map of service flags back to their constant names for pretty printing. @@ -83,7 +94,10 @@ var sfStrings = map[ServiceFlag]string{ SFNodeGetUTXO: "SFNodeGetUTXO", SFNodeBloom: "SFNodeBloom", SFNodeWitness: "SFNodeWitness", + SFNodeXthin: "SFNodeXthin", + SFNodeBit5: "SFNodeBit5", SFNodeCF: "SFNodeCF", + SFNode2X: "SFNode2X", } // orderedSFStrings is an ordered list of service flags from highest to @@ -93,7 +107,10 @@ var orderedSFStrings = []ServiceFlag{ SFNodeGetUTXO, SFNodeBloom, SFNodeWitness, + SFNodeXthin, + SFNodeBit5, SFNodeCF, + SFNode2X, } // String returns the ServiceFlag in human-readable form. diff --git a/wire/protocol_test.go b/wire/protocol_test.go index 639dcc9f..60bd0533 100644 --- a/wire/protocol_test.go +++ b/wire/protocol_test.go @@ -17,8 +17,11 @@ func TestServiceFlagStringer(t *testing.T) { {SFNodeGetUTXO, "SFNodeGetUTXO"}, {SFNodeBloom, "SFNodeBloom"}, {SFNodeWitness, "SFNodeWitness"}, + {SFNodeXthin, "SFNodeXthin"}, + {SFNodeBit5, "SFNodeBit5"}, {SFNodeCF, "SFNodeCF"}, - {0xffffffff, "SFNodeNetwork|SFNodeGetUTXO|SFNodeBloom|SFNodeWitness|SFNodeCF|0xffffffe0"}, + {SFNode2X, "SFNode2X"}, + {0xffffffff, "SFNodeNetwork|SFNodeGetUTXO|SFNodeBloom|SFNodeWitness|SFNodeXthin|SFNodeBit5|SFNodeCF|SFNode2X|0xffffff00"}, } t.Logf("Running %d tests", len(tests))