Changeset View
Changeset View
Standalone View
Standalone View
src/net_permissions.h
Show All 17 Lines | enum NetPermissionFlags { | ||||
PF_NONE = 0, | PF_NONE = 0, | ||||
// Can query bloomfilter even if -peerbloomfilters is false | // Can query bloomfilter even if -peerbloomfilters is false | ||||
PF_BLOOMFILTER = (1U << 1), | PF_BLOOMFILTER = (1U << 1), | ||||
// Relay and accept transactions from this peer, even if -blocksonly is true | // Relay and accept transactions from this peer, even if -blocksonly is true | ||||
PF_RELAY = (1U << 3), | PF_RELAY = (1U << 3), | ||||
// Always relay transactions from this peer, even if already in mempool or | // Always relay transactions from this peer, even if already in mempool or | ||||
// rejected from policy Keep parameter interaction: forcerelay implies relay | // rejected from policy Keep parameter interaction: forcerelay implies relay | ||||
PF_FORCERELAY = (1U << 2) | PF_RELAY, | PF_FORCERELAY = (1U << 2) | PF_RELAY, | ||||
// Allow getheaders during IBD and block-download after maxuploadtarget | |||||
// limit | |||||
PF_DOWNLOAD = (1U << 6), | |||||
// Can't be banned/disconnected/discouraged for misbehavior | // Can't be banned/disconnected/discouraged for misbehavior | ||||
PF_NOBAN = (1U << 4), | PF_NOBAN = (1U << 4) | PF_DOWNLOAD, | ||||
// Can query the mempool | // Can query the mempool | ||||
PF_MEMPOOL = (1U << 5), | PF_MEMPOOL = (1U << 5), | ||||
// True if the user did not specifically set fine grained permissions | // True if the user did not specifically set fine grained permissions | ||||
PF_ISIMPLICIT = (1U << 31), | PF_ISIMPLICIT = (1U << 31), | ||||
PF_ALL = PF_BLOOMFILTER | PF_FORCERELAY | PF_RELAY | PF_NOBAN | PF_MEMPOOL, | PF_ALL = PF_BLOOMFILTER | PF_FORCERELAY | PF_RELAY | PF_NOBAN | PF_MEMPOOL | | ||||
PF_DOWNLOAD, | |||||
}; | }; | ||||
class NetPermissions { | class NetPermissions { | ||||
public: | public: | ||||
NetPermissionFlags m_flags; | NetPermissionFlags m_flags; | ||||
static std::vector<std::string> ToStrings(NetPermissionFlags flags); | static std::vector<std::string> ToStrings(NetPermissionFlags flags); | ||||
static inline bool HasFlag(const NetPermissionFlags &flags, | static inline bool HasFlag(const NetPermissionFlags &flags, | ||||
NetPermissionFlags f) { | NetPermissionFlags f) { | ||||
Show All 27 Lines |