PastaPastaPasta
30d6584cb6
Merge pull request #4886 from kittywhiskers/fuzz3
...
backport: bitcoin#18867, #19247 , #19222 , #18363 , #18190 , #18393 , partial #18047 , #18314 , #19143 (fuzzing harness backports: part 3)
2022-07-17 16:34:37 -04:00
Kittywhiskers Van Gogh
38781fc114
merge bitcoin#17989: Add one specialized ProcessMessage(...) fuzzing binary per message type for optimal results when using coverage-guided fuzzing
2022-07-15 21:24:21 +05:30
Kittywhiskers Van Gogh
141c6e2920
merge bitcoin#19934: Add fuzzing harness for Keccak and SHA3_256
2022-07-15 21:24:21 +05:30
Kittywhiskers Van Gogh
e17767ccf1
merge bitcoin#19286: Add fuzzing harness for CHash{160,256}, C{HMAC_,}SHA{1,256,512}, CRIPEMD160, CSipHasher, etc.
2022-07-15 21:24:21 +05:30
Kittywhiskers Van Gogh
bf04694e73
merge bitcoin#18393: Don't assume presence of __builtin_mul_overflow in MultiplicationOverflow(...) fuzzing harness
2022-07-15 21:24:21 +05:30
Kittywhiskers Van Gogh
b50f00a2d5
merge bitcoin#18190: Add fuzzing harness for Golomb-Rice coding (GolombRiceEncode/GolombRiceDecode)
2022-07-15 21:24:21 +05:30
Kittywhiskers Van Gogh
93d3c26063
merge bitcoin#18363: Add fuzzing harness for HTTPRequest, libevent's evhttp and related functions
2022-07-15 21:24:21 +05:30
Kittywhiskers Van Gogh
01367c944e
fix(fuzz): statically cast to consistent type to account for type similarity
...
AdditionOverflow is a template function that expects both inputs to explicitly be of the same type
2022-07-15 21:24:20 +05:30
Kittywhiskers Van Gogh
eb2fa81288
partial bitcoin#19143: Add fuzzing harnesses for CAutoFile, CBufferedFile, LoadExternalBlockFile and other FILE* consumers
2022-07-15 21:23:01 +05:30
Kittywhiskers Van Gogh
da690542f4
merge bitcoin#19222: Add fuzzing harness for BanMan
2022-07-15 21:09:53 +05:30
Kittywhiskers Van Gogh
cd9b83c15e
merge bitcoin#19247: Add fuzzing harness for {Read,Write}{LE,BE}{16,32,64}
2022-07-15 21:09:53 +05:30
Kittywhiskers Van Gogh
a7109d8724
partial bitcoin#18314: Add deserialization fuzzing of SnapshotMetadata (utxo_snapshot). Increase fuzzing coverage
2022-07-15 21:09:53 +05:30
Kittywhiskers Van Gogh
0d5a7929ac
partial bitcoin#18047: Add basic fuzzing harness for CNetAddr/CService/CSubNet related functions (netaddress.h)
2022-07-15 21:09:53 +05:30
Kittywhiskers Van Gogh
09825e4678
merge bitcoin#18867: Add fuzzing harness for CCoinsViewCache
2022-07-15 21:09:53 +05:30
Odysseas Gabrielides
a1f54a6079
feat(rpc): getnetworkinfo RPC enrichment response ( #4913 )
...
* Enrich getnetworkinfo
* Adjustements
2022-07-15 10:32:58 -05:00
Odysseas Gabrielides
b4ed731cb1
fix!: GetNumCommitmentsRequired Rotation ( #4915 )
...
* Fix in GetNumCommitmentsRequired
* Correction
2022-07-15 10:29:10 -05:00
UdjinM6
7f60ee7d9c
fix(llmq): mark mns "bad" based on the failed connect attempts count ( #4910 )
...
* fix(llmq): mark mns "bad" based on the failed connect attempts count
Avoid using "last success time" as a proxy
* fix(tests): tweak feature_llmq_simplepose.py
2022-07-15 10:28:24 -05:00
Odysseas Gabrielides
2974fa20bb
feat(rpc): getnetworkinfo RPC enrichment response ( #4913 )
...
* Enrich getnetworkinfo
* Adjustements
2022-07-14 16:13:47 -05:00
Odysseas Gabrielides
beba663a57
fix!: GetNumCommitmentsRequired Rotation ( #4915 )
...
* Fix in GetNumCommitmentsRequired
* Correction
2022-07-14 16:12:33 -05:00
UdjinM6
32051a35c0
fix(llmq): mark mns "bad" based on the failed connect attempts count ( #4910 )
...
* fix(llmq): mark mns "bad" based on the failed connect attempts count
Avoid using "last success time" as a proxy
* fix(tests): tweak feature_llmq_simplepose.py
2022-07-14 21:38:02 +03:00
Kittywhiskers Van Gogh
04b7bcf52a
feat(llmq): add human-readable message alongside error code ( #4916 )
2022-07-14 12:53:42 -05:00
PastaPastaPasta
6c0a63360f
Merge pull request #4882 from kittywhiskers/xliff_update
...
backport: bitcoin#21694 (Use XLIFF file to provide more context to Transifex)
2022-07-13 08:27:34 -04:00
Konstantin Akimov
0a951622f1
Bitcoin backport #16227 refactoring CWallet ( #4903 )
...
* Add HaveKey and HaveCScript to SigningProvider
* Remove CKeyStore and squash into CBasicKeyStore
* Move HaveKey static function from keystore to rpcwallet where it is used
* scripted-diff: rename CBasicKeyStore to FillableSigningProvider
-BEGIN VERIFY SCRIPT-
git grep -l "CBasicKeyStore" | xargs sed -i -e 's/CBasicKeyStore/FillableSigningProvider/g'
-END VERIFY SCRIPT-
* Move KeyOriginInfo to its own header file
* Move various SigningProviders to signingprovider.{cpp,h}
Moves all of the various SigningProviders out of sign.{cpp,h} and
keystore.{cpp,h}. As such, keystore.{cpp,h} is also removed.
Includes and the Makefile are updated to reflect this. Includes were largely
changed using:
git grep -l "keystore.h" | xargs sed -i -e 's;keystore.h;script/signingprovider.h;g'
* Remove CCryptoKeyStore and move all of it's functionality into CWallet
Instead of having a separate CCryptoKeyStore that handles the encryption
stuff, just roll it all into CWallet.
* Fixed cases of mess CWallet functions with CCryptoKeyStore and conflicts
* Move WatchOnly stuff from SigningProvider to CWallet
* Fixes for lint cirtular dependencies to calm linter
Co-authored-by: Andrew Chow <achow101-github@achow101.com>
2022-07-12 22:46:31 -05:00
PastaPastaPasta
eefdae1a53
Merge pull request #4829 from kittywhiskers/fuzz2
...
backport: bitcoin#18417, #18521 , #18529 , #18176 , #18423 , #17926 , #18353 , #18407 , #18455 , #18565 , #18867 (fuzzing harness backports: part 2)
2022-07-12 12:32:28 -04:00
UdjinM6
a483122f5f
fix(net): Extend blocks-relay-only to also ignore some Dash-specific messages/invs ( #4888 )
...
* fix(net): Extend blocks-relay-only to also ignore some Dash-specific messages/invs
* Clarify few things
2022-07-07 18:11:38 +03:00
UdjinM6
71b977a283
Merge pull request #4909 from UdjinM6/bp_rc8
...
backport: v18 rc8
2022-07-07 18:11:10 +03:00
UdjinM6
78f992fc8c
chore: bump to rc8
2022-07-07 11:04:22 +03:00
UdjinM6
25071e647b
fix(dkg): let probes on mainnet ignore existing inbound connections ( #4908 )
2022-07-07 11:04:22 +03:00
UdjinM6
394bf42fef
fix(dkg): let masternodes miss few connection attempts before considering them "bad" ( #4907 )
...
* fix(dkg): let masternodes miss few connection attempts before considering them "bad"
Should help with dashd updates/restarts for nodes that were successfully probed recently.
* fix
2022-07-07 10:52:17 +03:00
UdjinM6
61c6f60ac5
fix(net): Let MNs accept conections as soon as blockchain is synced ( #4905 )
...
Do not wait for governance data, it's not needed for DKGs
2022-07-07 10:52:07 +03:00
UdjinM6
268b8e97d3
feat(llmq): avoid probing mns too often instead of using a tiny window to probe them ( #4904 )
...
We only call AddQuorumProbeConnections when a new quorum is intialized. It's possible to miss the 10 minute probe window if Contribute phase takes too long (when 2 blocks were mined in 10+ minutes). 50 minutes should be enough and probing once in 10 minutes should be safe.
2022-07-07 10:51:54 +03:00
UdjinM6
a999023cbd
fix(llmq): Fix quorum commitments requirement conditions ( #4899 )
...
Wasn't really requiring other commitments for rotation quorums once a single commitment was mined
2022-07-07 10:51:29 +03:00
UdjinM6
e98929a3e9
fix(dkg): let probes on mainnet ignore existing inbound connections ( #4908 )
2022-07-07 10:49:55 +03:00
UdjinM6
58cfeaf321
fix(dkg): let masternodes miss few connection attempts before considering them "bad" ( #4907 )
...
* fix(dkg): let masternodes miss few connection attempts before considering them "bad"
Should help with dashd updates/restarts for nodes that were successfully probed recently.
* fix
2022-07-07 10:49:34 +03:00
UdjinM6
320edd5575
fix(net): Let MNs accept conections as soon as blockchain is synced ( #4905 )
...
Do not wait for governance data, it's not needed for DKGs
2022-07-07 00:25:02 +03:00
UdjinM6
40486ada82
feat(llmq): avoid probing mns too often instead of using a tiny window to probe them ( #4904 )
...
We only call AddQuorumProbeConnections when a new quorum is intialized. It's possible to miss the 10 minute probe window if Contribute phase takes too long (when 2 blocks were mined in 10+ minutes). 50 minutes should be enough and probing once in 10 minutes should be safe.
2022-07-07 00:24:34 +03:00
Kittywhiskers Van Gogh
5715842187
merge bitcoin#21349: Fix fuzz-cuckoocache cross-compiling for Windows with DEBUG=1
2022-07-07 01:01:32 +05:30
Kittywhiskers Van Gogh
d016ccd065
merge bitcoin#18565: Add fuzzing harnesses for classes/functions in checkqueue.h and cuckoocache.h. Add fuzzing coverage.
2022-07-06 22:14:04 +05:30
Kittywhiskers Van Gogh
ee7e37ae01
merge bitcoin#18455: Add fuzzing harness for functions/classes in flatfile.h, merkleblock.h, random.h, serialize.h and span.h
2022-07-06 22:13:37 +05:30
Kittywhiskers Van Gogh
1b424f6b3b
merge bitcoin#18407: Add proof-of-work fuzzing harness
2022-07-06 22:13:37 +05:30
Kittywhiskers Van Gogh
7a954b8bd7
merge bitcoin#18423: Add fuzzing harness for classes/functions in blockfilter.h. Add integer {de,}serialization fuzzing
2022-07-06 22:13:37 +05:30
Kittywhiskers Van Gogh
f319ddbe85
merge bitcoin#18176: Add fuzzing harness for CScript and CScriptNum operations
2022-07-06 22:13:37 +05:30
Kittywhiskers Van Gogh
26ea6762d3
merge bitcoin#18529: Add fuzzer version of randomized prevector test
2022-07-06 22:13:37 +05:30
Kittywhiskers Van Gogh
1552a1e9dc
merge bitcoin#18521: Add process_messages harness
2022-07-06 22:13:37 +05:30
Kittywhiskers Van Gogh
6ee033b2da
merge bitcoin#18417: Add fuzzing harnesses for functions in addrdb.h, net_permissions.h and timedata.h
2022-07-06 22:13:36 +05:30
Kittywhiskers Van Gogh
ab8822c184
merge bitcoin#18353: Add fuzzing harnesses for classes CBlockHeader, CFeeRate and various functions
2022-07-06 21:48:11 +05:30
Kittywhiskers Van Gogh
d807cc7a8a
merge bitcoin#17926: Add key_io fuzzing harness. Fuzz additional functions in existing fuzzing harnesses
2022-07-06 21:48:10 +05:30
UdjinM6
22262137a2
Merge pull request #4900 from UdjinM6/followup_4880
...
fix(qt): fix crashes introduced by 15937 and 19099 backports
2022-07-05 17:36:56 +03:00
PastaPastaPasta
87b6d1c958
Merge pull request #4830 from kittywhiskers/auxiliary_ports
...
backport: bitcoin#15141, #15437 , #16240 , #18923 , #19219 , #19277 , #20016 , #20671 (auxiliary backports)
2022-07-03 12:13:11 -05:00
UdjinM6
8755067a32
feat(qt): Make wallet repair options only available when there is a single loaded wallet only
...
Also fixes a crash for `-nowallet` introduced via 15937 backport (in 4880)
2022-07-03 11:01:19 +03:00