[#ServiceFlags] = ServiceFlags :mrdocs: nServices flags == Synopsis Declared in `<protocol.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- enum ServiceFlags : uint64_t; ---- == Members [cols="1,4"] |=== | Name| Description | `NODE_NONE` | No services advertised. | `NODE_NETWORK` | Node can serve the complete block chain. | `NODE_BLOOM` | Node can handle bloom‐filtered connections. | `NODE_WITNESS` | Node can serve blocks and transactions including witness data. | `NODE_COMPACT_FILTERS` | Node services basic block filter requests (BIP157/BIP158). | `NODE_NETWORK_LIMITED` | Node serves only the most recent 288 blocks (BIP159). | `NODE_P2P_V2` | Node supports the BIP324 v2 transport. |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:SeedsAssumedServiceFlags.adoc[`SeedsAssumedServiceFlags`] | Service flags we assume for addresses obtained from the DNS seeds and the fixed seeds, which don't come with service flags attached. BIP324 support can be safely assumed because the vast majority of listening nodes signals NODE_P2P_V2, and if the assumption is wrong for a given peer we simply reconnect using v1 transport. | xref:SeedsServiceFlags.adoc[`SeedsServiceFlags`] | State independent service flags. If the return value is changed, contrib/seeds/makeseeds.py should be updated appropriately to filter for nodes with desired service flags (compatible with our new flags). |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#