github.com/decred/dcrlnd@v0.7.6/feature/default_sets.go (about)

     1  package feature
     2  
     3  import "github.com/decred/dcrlnd/lnwire"
     4  
     5  // setDesc describes which feature bits should be advertised in which feature
     6  // sets.
     7  type setDesc map[lnwire.FeatureBit]map[Set]struct{}
     8  
     9  // defaultSetDesc are the default set descriptors for generating feature
    10  // vectors. Each set is annotated with the corresponding identifier from BOLT 9
    11  // indicating where it should be advertised.
    12  var defaultSetDesc = setDesc{
    13  	lnwire.DataLossProtectRequired: {
    14  		SetInit:    {}, // I
    15  		SetNodeAnn: {}, // N
    16  	},
    17  	lnwire.GossipQueriesOptional: {
    18  		SetInit:    {}, // I
    19  		SetNodeAnn: {}, // N
    20  	},
    21  	lnwire.TLVOnionPayloadOptional: {
    22  		SetInit:         {}, // I
    23  		SetNodeAnn:      {}, // N
    24  		SetInvoice:      {}, // 9
    25  		SetInvoiceAmp:   {}, // 9A
    26  		SetLegacyGlobal: {},
    27  	},
    28  	lnwire.StaticRemoteKeyRequired: {
    29  		SetInit:         {}, // I
    30  		SetNodeAnn:      {}, // N
    31  		SetLegacyGlobal: {},
    32  	},
    33  	lnwire.UpfrontShutdownScriptOptional: {
    34  		SetInit:    {}, // I
    35  		SetNodeAnn: {}, // N
    36  	},
    37  	lnwire.PaymentAddrRequired: {
    38  		SetInit:       {}, // I
    39  		SetNodeAnn:    {}, // N
    40  		SetInvoice:    {}, // 9
    41  		SetInvoiceAmp: {}, // 9A
    42  	},
    43  	lnwire.MPPOptional: {
    44  		SetInit:    {}, // I
    45  		SetNodeAnn: {}, // N
    46  		SetInvoice: {}, // 9
    47  	},
    48  	lnwire.AnchorsZeroFeeHtlcTxOptional: {
    49  		SetInit:    {}, // I
    50  		SetNodeAnn: {}, // N
    51  	},
    52  	lnwire.WumboChannelsOptional: {
    53  		SetInit:    {}, // I
    54  		SetNodeAnn: {}, // N
    55  	},
    56  	lnwire.AMPOptional: {
    57  		SetInit:    {}, // I
    58  		SetNodeAnn: {}, // N
    59  	},
    60  	lnwire.AMPRequired: {
    61  		SetInvoiceAmp: {}, // 9A
    62  	},
    63  	lnwire.ExplicitChannelTypeOptional: {
    64  		SetInit:    {}, // I
    65  		SetNodeAnn: {}, // N
    66  	},
    67  	lnwire.ScriptEnforcedLeaseOptional: {
    68  		SetInit:    {}, // I
    69  		SetNodeAnn: {}, // N
    70  	},
    71  }