Skip to content

optional disable nspv#382

Merged
ca333 merged 13 commits intodevfrom
disable_nspv
Jan 11, 2021
Merged

optional disable nspv#382
ca333 merged 13 commits intodevfrom
disable_nspv

Conversation

@ca333
Copy link
Copy Markdown

@ca333 ca333 commented Aug 1, 2020

No description provided.

Copy link
Copy Markdown

@DeckerSU DeckerSU left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but we can also add DEFAULT_NSPV_PROCESSING constant in main.h.

Comment thread src/init.cpp Outdated
Comment thread src/main.cpp Outdated
Comment thread src/net.cpp Outdated
Comment thread src/protocol.cpp Outdated
void CAddress::Init()
{
nServices = NODE_NETWORK | NODE_NSPV;
nServices = GetBoolArg("-nspv_msg", false) ? NODE_NETWORK | NODE_NSPV : NODE_NETWORK;
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
nServices = GetBoolArg("-nspv_msg", false) ? NODE_NETWORK | NODE_NSPV : NODE_NETWORK;
nServices = GetBoolArg("-nspv_msg", DEFAULT_NSPV_PROCESSING) ? NODE_NETWORK | NODE_NSPV : NODE_NETWORK;

@dimxy
Copy link
Copy Markdown
Collaborator

dimxy commented Aug 2, 2020

Could we also use a global bool flag (like fNSPVSupported) instead of calling GetBoolArg("-nspv_msg", false)?
just to make code more efficient and be consistent with other cases where similar flags are used (fAddressIndex, fUspentIndex etc)

@DeckerSU
Copy link
Copy Markdown

DeckerSU commented Aug 2, 2020

Could we also use a global bool flag (like fNSPVSupported) instead of calling GetBoolArg("-nspv_msg", false)?
just to make code more efficient and be consistent with other cases where similar flags are used (fAddressIndex, fUspentIndex etc)

fNSPVSupported from one side is good idea, but actually we can check support of nSPV on local node with if (nLocalServices & NODE_NSPV) condition. If nLocalServices have NODE_NSPV flag - it's supported nspv. Same way as we already did it for NODE_BLOOM services flag, like:

else if (!(nLocalServices & NODE_BLOOM) &&
              (strCommand == "filterload" ||
               strCommand == "filteradd"))
{
...    
}

ca333 and others added 2 commits August 5, 2020 22:49
thanks @DeckerSU

Co-authored-by: DeckerSU <support@decker.su>
Co-authored-by: DeckerSU <support@decker.su>
@ca333 ca333 requested a review from DeckerSU August 14, 2020 07:36
Copy link
Copy Markdown

@DeckerSU DeckerSU left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to add DEFAULT_NSPV_PROCESSING in main.h as mentioned here - #382 (review) :

/** Default NSPV support enabled */
static const bool DEFAULT_NSPV_PROCESSING = false;

Otherwise build will fail.

Also all places with GetBoolArg("-nspv_msg", false) should be changed on GetBoolArg("-nspv_msg", DEFAULT_NSPV_PROCESSING), for now it's not yet done.

ca333 and others added 3 commits August 15, 2020 21:28
Co-authored-by: DeckerSU <support@decker.su>
DeckerSU added a commit to DeckerSU/KomodoOcean that referenced this pull request Aug 25, 2020
nSPV processing is disabled by default for Komodo-Qt, to enable it
you can alsways use `-nspv_msg` command line arg.

GLEECBTC/komodo-daemon#382
@ca333 ca333 requested a review from DeckerSU September 15, 2020 08:39
TheComputerGenie added a commit to PirateNetwork/PirateOcean that referenced this pull request Oct 30, 2020
nSPV processing is disabled by default for Komodo-Qt, to enable it
you can alsways use `-nspv_msg` command line arg.

GLEECBTC/komodo-daemon#382
DeckerSU/KomodoOcean@1d1e568
TheComputerGenie added a commit to PirateNetwork/PirateOcean that referenced this pull request Oct 30, 2020
* New user params

* no splash fix

* no splash fix

* Update Ocean_all_cd.yml

until openssl and python2 breaking changes fixes are finalized
actions/runner-images#1811 (comment)

* + CountBits in crypto/common.h 

Return the smallest number n such that (x >> n) == 0 (or 64 if the highest bit in x is set
DeckerSU/KomodoOcean@d836179

* Add asmap utility which queries a mapping

The scripts for creating a compact IP->ASN mapping are here:
https://github.com/sipa/asmap

bitcoin/bitcoin@8feb4e4
DeckerSU/KomodoOcean@50daf84

* p2p: supplying and using asmap to improve IP bucketing in addrman

first approach to porting bitcoin/bitcoin#16702 into old v0.13 codebase.
DeckerSU/KomodoOcean@bfaf287

* Return mapped AS in RPC call getpeerinfo and in GUI 

DeckerSU/KomodoOcean@81d10f5

* Addrman Google Tests

Note: these are standart tests, which is not include asmap features.

DeckerSU/KomodoOcean@2173036

* add legacy and asmap addrman tests 

DeckerSU/KomodoOcean@7567965

* when clearing addrman clear mapInfo and mapAddr 

bitcoin/bitcoin@b86a420
DeckerSU/KomodoOcean@9b2c1f3

* add addrman serialization test 

DeckerSU/KomodoOcean@18ebbd5

* addrman: Add missing lock in Clear() (CAddrMan) 

bitcoin/bitcoin#11585
DeckerSU/KomodoOcean@b81d07b

* gui: debug window -> tab peers elems re-arrange 

added scroll area for detailed peer info, added splitter
between detailed info and peer table
DeckerSU/KomodoOcean@be106ed

* depends: tar: Always extract as yourself 

For normal users, --no-same-owner is default, but not so for root, where
it is assumed that root can change ownership willy-nilly. This is not
the case for privilege-limited container environments where we gaslight
the process into thinking it's root.

GLEECBTC/komodo-daemon#368
bitcoin/bitcoin@89bee1b
DeckerSU/KomodoOcean@85d2fa6

* refactor: remove unused header var in GetBlockProof 

DeckerSU/KomodoOcean@a1be01c

* bump versions

CLIENT_VERSION 4.0.2
KOMODO_VERSION 0.6.1

* add display service bits for NSPV, ADDRINDEX and SPENTINDEX 

DeckerSU/KomodoOcean@f0ef3e2

* optional disable nspv 

nSPV processing is disabled by default for Komodo-Qt, to enable it
you can alsways use `-nspv_msg` command line arg.

GLEECBTC/komodo-daemon#382
DeckerSU/KomodoOcean@1d1e568

* update getblocktemplate conditions 

DeckerSU/KomodoOcean@506bc22

* update IsNotInSync() conditions 

IsNotInSync() using now only in waitForPeers() which is called
in VerusStaker(...) and BitcoinMiner_noeq(...), mean which used
only in verushash-algo based mining and staking chains.
DeckerSU/KomodoOcean@cb5dec1

* fetch bdb using https instead of http 

DeckerSU/KomodoOcean@d09c03a

* remove auto-created file (cryptoconditions/compile) 

to resolve issues with compiling dirty releases from unchanged repo.
DeckerSU/KomodoOcean@3e4aa66
@ca333 ca333 merged commit f8d9b89 into dev Jan 11, 2021
Alrighttt pushed a commit to Alrighttt/komodo that referenced this pull request Oct 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants