aboutsummaryrefslogtreecommitdiff
path: root/test/sanitizer_suppressions
AgeCommit message (Collapse)Author
2020-11-12tests: Remove no longer needed UBSan suppression (float-divide-by-zero in ↵practicalswift
validation.cpp)
2020-11-12Remove references to CreateWalletFromFilefanquake
CWallet::CreateWalletFromFile() was removed in 8b5e7297c02f3100a9cb27bfe206e3fc617ec173 but these references remain.
2020-11-11Merge #20344: wallet: fix scanning progress calculation for single block rangeMarcoFalke
5e146022daa4336de94447e5b8e5418296286927 wallet: fix scanning progress calculation for single block range (Sebastian Falbesoner) Pull request description: If the blockchain is rescanned for a single block (i.e. start and stop hashes are equal, and with that also the estimated start/stop verification progress values) the progress calculation could lead to a NaN value caused by a division by zero (0.0/0.0), resulting in an invalid JSON result for the `getwalletinfo` RPC. This PR fixes this behaviour by setting the progress to zero in that special case. Fixes #20297. The behaviour can easily be reproduced by continuously running single block rescans in an endless loop, e.g. via ```bash #!/bin/bash while true do bitcoin-cli rescanblockchain $(bitcoin-cli getblockcount) done ``` and at the same time perform some `getwalletinfo` RPCs. On the master branch, this leads to frequent invalid responses (tested on mainchain): ``` $ bitcoin-cli getwalletinfo error: couldn't parse reply from server $ curl --user `cat ~/.bitcoin/.cookie` --data-binary '{"jsonrpc": "1.0", "id": "curltest", "method": "getwalletinfo", "params": []}' -H 'content-type: text/plain;' http://127.0.0.1:8332/ {"result":{"walletname":"","walletversion":169900,"format":"bdb","balance":0.00000000,"unconfirmed_balance":0.00000000,"immature_balance":0.00000000,"txcount":0,"keypoololdest":1603677276,"keypoolsize":1000,"hdseedid":"3196e33ecb47c7130e6ca60f2f895f9259860dca","keypoolsize_hd_internal":1000,"paytxfee":0.00000000,"private_keys_enabled":true,"avoid_reuse":false,"scanning":{"duration":0,"progress":},"descriptors":false},"error":null,"id":"curltest"} ``` (note that missing value for "progress" in the JSON result). On the PR branch, the behaviour doesn't occur anymore. ACKs for top commit: MarcoFalke: review ACK 5e146022daa4336de94447e5b8e5418296286927 promag: Core review ACK 5e146022daa4336de94447e5b8e5418296286927. Tree-SHA512: f0e6aad5a6cd08b36c5fe820fff0ef26663229b39169a4dbe757f3c795a41cf5c69c9dc90efe7515675ae1059307f8971123781a0514d10704123a6f28b125ab
2020-11-11wallet: fix scanning progress calculation for single block rangeSebastian Falbesoner
If the blockchain is rescanned for a single block (i.e. start and stop hashes are equal, and with that also the estimated verification progress) the progress calculation could lead to a NaN value caused by a division by zero, resulting in an invalid JSON result for the getwalletinfo RPC. Fixed by setting the progress to zero in that special case. Co-authored-by: MarcoFalke <falke.marco@gmail.com>
2020-11-11test: Suppress epoll_ctl data raceMarcoFalke
2020-09-14policy/fees: remove a floating-point division by zeroAntoine Poinsot
Reported-by: practicalswift <practicalswift@users.noreply.github.com> Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-09-07scripted-diff: [net processing] Rename PeerLogicValidation to PeerManagerJohn Newbery
-BEGIN VERIFY SCRIPT- sed -i 's/PeerLogicValidation/PeerManager/g' $(git grep -l PeerLogicValidation ./src ./test) sed -i 's/peer_logic/peerman/g' $(git grep -l peer_logic ./src ./test) -END VERIFY SCRIPT- PeerLogicValidation was originally net_processing's implementation to the validation interface. It has since grown to contain much of net_processing's logic. Therefore rename it to reflect its responsibilities. Suggested in https://github.com/bitcoin/bitcoin/pull/10756#pullrequestreview-53892618.
2020-08-29test: Add tsan supp for leveldb::DBImpl::DeleteObsoleteFilesMarcoFalke
2020-07-16ci: Add tsan suppression for race in DatabaseBatchHennadii Stepanov
2020-07-05ci: Add tsan suppression for race in BerkeleyBatchHennadii Stepanov
2020-06-30ci: Add tsan suppression for race in walletMarcoFalke
2020-06-09test: Add BerkeleyDatabase tsan suppressionMarcoFalke
2020-06-04ci: tsan with walletMarcoFalke
2020-05-31test: Add more tsan suppressionsMarcoFalke
2020-05-30test: Extend tsan suppressions for clang stdlibMarcoFalke
2020-03-30test: Remove unsafe BOOST_TEST_MESSAGEMarcoFalke
2020-02-12Merge #17708: prevector: avoid misaligned member accessesWladimir J. van der Laan
5f26855f109af53a336d5f98ed0ae584e7a31f84 test: Remove ubsan alignment suppressions (Wladimir J. van der Laan) 9d933ef9191417b4b7d29eaa3c3a571f814acc8e prevector: avoid misaligned member accesses (Anthony Towns) Pull request description: Ensure prevector data is appropriately aligned. Earlier discussion in #17530. **Edit laanwj**: In contrast to #17530, it does this without increase in size of any of the coin cache data structures (x86_64, clang) | Struct | (size,align) before | (size,align) after | | ------------- | ------------- | ------- | | Coin | 48, 8 | 48, 8 | | CCoinsCacheEntry | 56, 8 | 56, 8 | | CScript | 32, 1 | 32, 8 | ACKs for top commit: laanwj: ACK 5f26855f109af53a336d5f98ed0ae584e7a31f84 practicalswift: ACK 5f26855f109af53a336d5f98ed0ae584e7a31f84 jonatack: ACK 5f26855f109af53a336d5f98ed0ae584e7a31f84 Tree-SHA512: 98d112d6856f683d5b212410b73f3071d2994f1efb046a2418a35890aa1cf1aa7c96a960fc2e963fa15241e861093c1ea41951cf5b4b5431f88345eb1dd0a98a
2020-01-28test: Add ubsan surpression for crc32cWladimir J. van der Laan
2020-01-02test: Show debug log on unit test failureMarcoFalke
2019-12-10test: Remove ubsan alignment suppressionsWladimir J. van der Laan
This can be done now that prevector is properly aligned.
2019-12-04ci: ubsan report_error_type=1 and add suppressionsMarcoFalke
2019-11-19test: remove lsan suppression for libcryptoWladimir J. van der Laan
2019-10-21tests: Remove no longer needed UBSan suppressions (issues fixed). Add ↵practicalswift
documentation.
2019-06-18test: Suppress false positive leak in secure_allocator<RNGState>MarcoFalke
2019-03-26Poly1305: tolerate the intentional unsigned wraparound in poly1305.cppJonas Schnelli
2019-02-07Avoid triggering undefined behaviour (std::memset(nullptr, 0, 0)) if an ↵practicalswift
invalid string is passed to DecodeSecret(...)
2019-01-05Merge #14357: streams: Fix broken streams_vector_reader test. Remove unused ↵MarcoFalke
seek(size_t). 4f4993fe2a Remove UBSan suppression (practicalswift) 958e1a307e streams: Remove unused seek(size_t) (practicalswift) Pull request description: Fix broken `streams_vector_reader` test. Remove unused `seek(size_t)`. Before this change the test `streams_vector_reader` triggered an unintended unsigned integer wraparound. It tried so seek using a negative value in `reader.seek(-6)`. Changes in this PR: * Fix broken `VectorReader::seek(size_t)` test case * Remove unused `seek(size_t)` Tree-SHA512: 6c6affd680626363eef9e496748f2f86a522325abab9d6b13161f41125cdc29ceb36c2c1509c90b8ff108d606df7629e55e094cc2b6253b05a892b81ce176b71
2018-12-18rpc: Fix data race (UB) in InterruptRPC()practicalswift
2018-12-18Add suppression for InterruptRPC (fRPCRunning) data racepracticalswift
2018-12-17build: Enable functional tests in the ThreadSanitizer (TSan) build jobpracticalswift
2018-11-30Move CheckBlock() call to critical sectionHennadii Stepanov
This prevents data race for CBlock::fChecked.
2018-11-27bench: Destroy wallet txs instead of leaking their memoryMarcoFalke
2018-11-26Add LSan suppression warningspracticalswift
2018-11-26Add ASan Travis buildpracticalswift
2018-11-23Remove UBSan suppressionpracticalswift
2018-11-22test: Move UBSAN suppressions to test/sanitizer_suppressions/ubsanMarcoFalke
2018-11-22travis: Run thread sanitizerMarcoFalke