mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 20:42:59 +01:00
1fd442f229
## Issue being fixed or feature implemented This was reported/requested by @HashEngineering: > Older versions of our App won't sync due to if (obj.nVersion == BASIC_BLS_VERSION) . Older versions don't know what version a SML Entry is. As such, they will never read the type field. On the android client this causes an offset problem when reading the mnlistdiff and it will throw an exception that bans the peer that supplied it. Soon enough, no peers will be left to connect to because they will all give the android client bad data. ## What was done? With this PR, SML will serialise the new v19 fields (`nType`, `platformHTTPPort`, `platformNodeID`) if the client's version is at least equal to `70227`. Note: Serialisation for hashing skips the above rule. Also, functional test mininode protocol version is set to `70227`. ## How Has This Been Tested? ## Breaking Changes ## Checklist: - [x] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [x] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation **For repository code-owners and collaborators only** - [x] I have assigned this pull request to a milestone |
||
---|---|---|
.. | ||
__init__.py | ||
address.py | ||
authproxy.py | ||
blocktools.py | ||
coverage.py | ||
descriptors.py | ||
key.py | ||
messages.py | ||
mininode.py | ||
muhash.py | ||
netutil.py | ||
ripemd160.py | ||
script_util.py | ||
script.py | ||
siphash.py | ||
socks5.py | ||
test_framework.py | ||
test_node.py | ||
test_shell.py | ||
util.py | ||
wallet_util.py |