100 Commits
Author SHA1 Message Date
Bruno Garcia e770392084 test: addrman: test self-announcement time penalty handling
Verify that addresses announcing themselves (addr == source) are exempt
from time penalties, while addresses announced by others receive the
expected penalty.
2026-01-27 09:50:10 -03:00
Bruno Garcia 6f7b4323cb test: remove UNKNOWN_ERROR from script_tests 2026-01-22 12:13:05 -03:00
Bruno Garcia bd31a92d67 script: use SCRIPT_ERR_SCRIPTNUM for CScriptNum errors 2026-01-22 12:13:01 -03:00
Bruno Garcia 0ca4dcd786 script: add SCRIPT_ERR_SCRIPTNUM error
It will be used for errors related to CScriptNum (e.g. overflow or encoding errors).
Currently, we simply return unknown error for these errors.
2026-01-22 11:51:47 -03:00
brunoerg 8fb5e5f41d test: check wallet rescan properly in feature_pruning 2026-01-09 09:27:19 -03:00
brunoerg 9b57c8d2bd test: fix feature_pruning when built without wallet 2026-01-02 18:50:35 -03:00
brunoerg caf4843a59 fuzz: doc: remove any mention to address_deserialize_v2 2025-12-17 11:57:11 -03:00
brunoerg ff06e2468a init: point out -stopatheight may be imprecise 2025-12-04 09:34:29 +04:00
brunoerg 3a10d700bc test: P2SH sig ops are only counted with SCRIPT_VERIFY_P2SH flag 2025-10-14 15:39:45 -03:00
brunoerg 8e47ed6906 test: addrman: check isTerrible when time is more than 10min in the future 2025-10-03 10:24:29 -03:00
brunoerg 5ded99a7f0 fuzz: MockMempoolMinFee in wallet_fees 2025-09-01 11:44:43 -03:00
brunoerg c9a7a198d9 test: move MockMempoolMinFee to util/txmempool 2025-09-01 11:44:41 -03:00
brunoerg adf67eb21b fuzz: create FeeEstimatorTestingSetup to set fee_estimator 2025-09-01 09:21:41 -03:00
brunoerg ff10a37e99 fuzz: mock CBlockPolicyEstimator in wallet_fuzz 2025-09-01 09:21:39 -03:00
brunoerg f591c3beca fees: make estimateSmartFee/HighestTargetTracked virtual for mocking 2025-08-29 11:31:28 -03:00
brunoerg 19273d0705 fuzz: set mempool options in wallet_fees 2025-08-18 09:19:22 -03:00
brunoerg c2ed576d2c fuzz: cover BanMan::IsDiscouraged 2025-07-30 09:24:11 -03:00
brunoerg b94c6356a2 test: check proper OP_2ROT behavior 2025-07-23 13:52:17 -03:00
brunoerg 065e42976a test: IsFinalTx returns true when there is no locktime 2025-07-22 10:03:07 -03:00
brunoerg 8810642b57 test: add option to skip large re-org test in feature_block 2025-07-17 16:19:29 -03:00
brunoerg d6aaffcb11 test: check P2SH sigop count for coinbase tx 2025-07-01 12:08:20 -03:00
brunoerg cd1ae1b4df fuzz: wallet: remove FundTx from FuzzedWallet 2025-06-18 11:11:25 -03:00
brunoergandeugene a39b7071cf doc: fuzz: fix AFL++ link
Co-authored-by: eugene <elzeigel@gmail.com>
2025-06-09 18:51:17 -03:00
brunoerg 7cfbb8575e test: wallet: cover wallet passphrase with a null char 2025-06-04 09:50:03 -03:00
brunoerg 58e55b17e6 test: descriptor: cover invalid multi/multi_a cases 2025-05-15 08:18:16 -03:00
brunoerg 61ea5f348d fuzz: doc: add info about afl-system-config for macOS 2025-04-29 10:28:03 -03:00
brunoerg 0ff66b1c4a fuzz: coinselection: cover SetBumpFeeDiscount 2025-03-21 10:13:36 -03:00
brunoerg 28dc118001 fuzz: wallet: fix crypter target 2025-03-21 10:09:47 -03:00
brunoerg 21e9d39a37 docs: add release notes for 31603 2025-02-24 09:58:11 -03:00
brunoerg a8b548d75d test: getdescriptorinfo/importdescriptors with whitespace in pubkeys 2025-02-24 09:57:22 -03:00
brunoerg c7afca3d62 test: descriptor: check whitespace into keys 2025-02-24 09:57:22 -03:00
brunoerg cb722a3cea descriptor: check whitespace in ParsePubkeyInner
Due to Base58, keys with whitespace at the beginning or
at the end are successfully parsed. This commit adds a
check into `ParsePubkeyInner` to verify whether if the
first or last char of the key is a space.
2025-02-24 09:55:40 -03:00
brunoerg ba82240553 fuzz: split coinselection harness 2025-02-21 13:26:48 -03:00
brunoerg 405dd0e647 test: remove scanning check on wallet_importdescriptors 2025-02-17 18:44:01 -03:00
brunoerg bb0879ddab test: check scanning field from getwalletinfo
During a rescan, check that `getwalletinfo` returns
properly information (the scanning field) about it.
2025-02-04 10:48:20 -03:00
brunoerg 50856695ef test: fix descriptors in ismine_tests
Some descriptors contain whitespace in public keys
within fragments. This fixes it.
2025-01-21 14:58:38 -03:00
brunoerg 4da7bfdcc9 test: add coverage for unknown address type for createwalletdescriptor 2025-01-10 11:41:50 -03:00
brunoerg b29d68f942 test: descriptor: fix test for MaxSatisfactionWeight
To get the maximum size of a satisfaction for a descriptor
without considering the max sig, the parameter `use_max_sig`
should be false.
2024-12-27 17:55:58 -03:00
brunoerg 366ae00b77 descriptor: Assume ParseScript is not being called with a P2WPKH context 2024-12-24 11:01:47 -03:00
brunoerg e366408590 descriptor: remove unreachable verification for pkh 2024-12-23 08:41:35 -03:00
brunoerg 7239ddb7ce test: make sure node has all transactions 2024-12-05 16:12:38 -03:00
brunoerg ee1b9bef00 test: replace is not to != when comparing block hash 2024-12-02 18:38:30 -03:00
brunoerg 1807df3d9f test: addrman: tried 3 times and never a success so isTerrible=true 2024-11-19 17:37:24 -03:00
brunoergandVasil Dimov 9c5775c331 addrman: cap the max_pct to not exceed the maximum number of addresses
Co-authored-by: Vasil Dimov <vd@FreeBSD.org>
2024-11-11 12:47:53 -03:00
brunoerg 5a26cf7773 fuzz: fix implicit-integer-sign-change in wallet_create_transaction 2024-11-01 10:58:44 -03:00
brunoergandJon Atack a16917fb59 rpc, net: improve mapped_as doc for getrawaddrman/getpeerinfo
Before, we did not explicity say that both fields
`{source_}mapped_as` (that are optional in getrawaddrman)
will be only available if the asmap config flag is set.

Co-authored-by: Jon Atack <jon@atack.com>
2024-10-21 10:14:56 -03:00
brunoerg d823ba6e20 doc: fuzz: remove Honggfuzz NetDriver instructions 2024-10-15 07:46:54 -03:00
brunoerg c495731a31 fuzz: wallet: add target for CreateTransaction 2024-09-27 13:53:53 -03:00
brunoerg 3db68e29ec wallet: move ImportDescriptors/FuzzedWallet to util 2024-09-27 13:53:52 -03:00
brunoerg 552cae243a fuzz: cover ASMapHealthCheck in connman target 2024-09-23 11:54:51 -03:00
brunoerg 33b0f3ae96 fuzz: use ConsumeNetGroupManager in connman target 2024-09-23 11:54:51 -03:00
brunoerg 18c8a0945b fuzz: move ConsumeNetGroupManager to util 2024-09-23 11:54:51 -03:00
brunoerg fe624631ae fuzz: fuzz connman with a non-empty addrman 2024-09-23 11:54:51 -03:00
brunoerg 0a12cff2a8 fuzz: move AddrManDeterministic to util 2024-09-23 11:54:46 -03:00
brunoerg e4e3b44e9c net: call Select with reachable networks in ThreadOpenConnections
Calling `Select` with reachable networks can avoid unecessary
calls and avoid exceed the max number of tries.
2024-09-10 12:58:57 -03:00
brunoerg 829becd990 addrman: change Select to support multiple networks 2024-09-10 12:58:54 -03:00
brunoergandVasil Dimov f698636ec8 net: add All() in ReachableNets
Co-authored-by: Vasil Dimov <vd@FreeBSD.org>
2024-09-10 11:20:40 -03:00
brunoerg f482d0e366 fuzz: reduce number of iterations in crypto_aeadchacha20poly1305 target
By reducing the number of iterations we improve the performance of
this target and may increase coverage.
2024-09-05 17:56:54 -03:00
brunoerg bdad0243be rpc, net: getrawaddrman "mapped_as" follow-ups 2024-08-28 18:21:07 -03:00
brunoerg 8dec4e1294 fuzz: fix timeout in crypto_fschacha20poly1305 2024-08-27 11:25:47 -03:00
brunoerg 6714276d72 miniscript: Use ToIntegral instead of ParseInt64 2024-08-05 08:23:24 -03:00
brunoerg bfd3c29e4f fuzz: fix timeout in crypter target
Move `SetKeyFromPassphrase` to out of LIMITED_WHILE,
remove `SetKey` calls since it is already called
internally by other functions and reduce the number
of iterations.
2024-08-02 09:48:10 -03:00
brunoerg 401cc4ec70 fuzz: improve scriptpubkeyman target
The goal of this improvement is to reduce
TopUp calls which can lead to timeouts.
2024-08-01 11:08:03 -03:00
brunoerg dcb4ec9449 fuzz: reduce keypool size in scriptpubkeyman target 2024-07-20 12:52:19 -03:00
brunoerg 4383dc90ba fuzz: fix key size in crypter target
Set a max length for some previous
`ConsumeRandomLengthByteVector` usage.
2024-07-04 11:33:11 -03:00
brunoerg e38eadb2c2 test: change comments to self.log.info for test_addnode_getaddednodeinfo 2024-06-26 06:22:05 -03:00
brunoerg c838e3b610 test: add coverage for node field of getaddednodeinfo RPC 2024-06-26 06:16:17 -03:00
brunoerg e2779ce98b test: cover more errors for signrawtransactionwithkey RPC
* Invalid private key
* TX decode failed
2024-06-12 17:07:16 -03:00
brunoergandVasil Dimov 7d3662fbe3 i2p: fix log when an interruption happens during Accept
Before, interruption was printed as an error. Also,
it did not log the reason when an interruption happened,
e.g. "Error accepting:".

Co-authored-by: Vasil Dimov <vd@FreeBSD.org>
2024-06-12 16:40:42 -03:00
brunoergandVasil Dimov 3d3a83fab2 i2p: log errors properly according to their severity
Co-authored-by: Vasil Dimov <vd@FreeBSD.org>
2024-06-12 16:19:50 -03:00
brunoerg ab98e6fd03 test: add coverage for errors for combinerawtransaction RPC
* Tx decode failed
* Missing transactions
* Input not found or already spent
2024-06-10 15:19:24 -03:00
brunoerg 1e54d61c46 test: add coverage for mapped_as from getrawaddrman
Test addresses are being mapped according to the ASMap
file provided properly. Compare the result of the `getrawaddrman`
RPC with the result from the ASMap Health Check.
2024-05-22 07:58:08 -03:00
brunoerg 8c2714907d net: rpc: return peer's mapped AS in getrawaddrman
This information can be used to check bucketing
logic.
2024-05-22 07:57:04 -03:00
brunoerg e3249f2111 fuzz: add more coverage for ScriptPubKeyMan 2024-05-16 13:58:07 -03:00
brunoerg 2179e2c320 doc: i2p: improve -i2pacceptincoming mention 2024-04-04 18:32:39 -03:00
brunoerg b4c9ace6ff test: check disconnection when sending sendaddrv2 after verack 2024-03-28 07:25:06 -03:00
brunoerg e30e8625bb test: remove duplicated ban test
Test the ban list is preserved through restart has been
done by both `rpc_setban` and `p2p_disconnect_ban`.
Since `p2p_disconnect_ban` does it in a more elegant
way, we can keep only it and remove the duplicated one.
2024-03-26 10:57:40 -03:00
brunoerg a8bfc3dea1 test: add coverage for bech32m in wallet_keypool_topup 2024-03-20 11:09:36 -03:00
brunoerg 25eab52389 fuzz: add target for local addresses 2024-02-29 14:13:58 -03:00
brunoerg 0a533613fb docs: add release notes for #27114 2024-02-28 10:05:56 -03:00
brunoerg e6b8f19de9 test: add coverage for whitelisting manual connections 2024-02-28 10:05:56 -03:00
brunoerg c985eb854c test: add option to speed up tx relay/mempool sync
when `self.noban_tx_relay=True`, the following flag
`-whitelist=noban,in,out@127.0.0.1`is added to `extra_args`
to speed up tx relay/mempool sync.
2024-02-28 10:05:56 -03:00
brunoerg 2863d7dddb net: store -whitelist{force}relay values in CConnman 2024-02-28 10:04:18 -03:00
brunoerg 5b358cdd1a i2p: log connection was refused due to arbitrary port 2024-02-08 18:33:16 -03:00
brunoerg 864e2e9097 fuzz: increase length of string used for NetWhitelist{bind}Permissions::TryParse 2024-02-08 15:09:03 -03:00
brunoerg b14298c5bc fuzz: remove unused args and context from FuzzedWallet 2024-02-05 17:06:10 -03:00
brunoerg e84dc36733 fuzz: fix connman initialization 2024-01-09 15:15:36 -03:00
brunoerg e5b9ee0221 fuzz: set nMaxOutboundLimit in connman target 2024-01-05 12:38:35 -03:00
brunoerg cd810075ed fuzz: coinselection, improve min_viable_change/change_output_size
Change it to use same approach from
`CreateTransactionInternal`.
2023-12-15 06:28:42 -03:00
brunoerg e03d6f7ed5 fuzz: set m_fallback_fee/m_fee_mode in wallet_fees target 2023-12-13 18:20:10 -03:00
brunoerg e1281f1bbd wallet: fix key parsing check for miniscript expressions in ParseScript 2023-12-08 06:54:00 -03:00
brunoerg 47e5c9994c fuzz: add target for DescriptorScriptPubKeyMan 2023-11-20 15:57:56 -03:00
brunoerg 641dddf018 fuzz: create ConsumeCoins 2023-11-20 15:57:56 -03:00
brunoerg 2e1833ca13 fuzz: move MockedDescriptorConverter to fuzz/util 2023-11-20 15:57:50 -03:00
brunoerg fca0a8938e ci: remove "--exclude banman" for fuzzing in mac 2023-11-09 10:11:59 -03:00
brunoerg f9b286353f fuzz: call lookup functions before calling Ban
Also, compare banmaps only if there are no invalid
entries.
2023-11-09 10:11:51 -03:00
brunoerg 02a4f1a385 addrman: log AS only when using asmap 2023-10-30 18:46:06 -03:00
brunoergandAntonie Poinsot ff8e2fc2e2 fuzz: add coverage for bitcoinconsensus_verify_script_with_spent_outputs
Co-authored-by: Antonie Poinsot <darosior@protonmail.com>
2023-10-13 08:55:12 -03:00
brunoerg c5f2a757d7 docs: add release notes for #28539 2023-10-13 08:55:12 -03:00
brunoerg e064487ca2 addrman, refactor: improve stochastic test in AddSingle
This commit changes this algo to be O(1) instead of O(n) by using `<<`.
2023-09-27 14:33:09 -03:00