Commit graph

76 commits

Author SHA1 Message Date
Olaoluwa Osuntokun
c002ea3196
Merge pull request #2320 from gosunuts/feature/fix-ci
feat: fix ci / makefile
2025-08-19 18:09:43 -07:00
Kim
f19065176b multi: apply make fmt to all files 2025-08-05 18:39:30 +09:00
Gijs van Dam
5e69e56cb8
btcutil/bloom: align hash function count with filter capacity
In this commit, we ensure hash function parameters are consistent with
filter size to avoid unnecessary operations. A filter with no capacity
doesn't actually require any hash functions, so we can cut that loop
short.
2025-07-14 11:03:36 +02:00
Yong
9adca7479d
Merge pull request #2375 from Aharonee/chore/update_psbt_deps
psbt: upgrade dependencies and fix unit test
2025-07-14 05:17:05 +03:00
Or Aharonee
4727f323ed
Update Go module and dependencies
Upgrade several package versions and fix a test case for transaction serialization.
2025-07-11 23:30:28 +03:00
ffranr
565a7a8822
psbt: limit value size in ReadTaprootBip32Derivation to prevent OOM
Cap the `value` slice to `MaxPsbtValueLength` to prevent potential
out-of-memory conditions during parsing. This ensures that total
allocation remains bounded and consistent with other PSBT fields.
2025-05-23 14:36:06 +01:00
ffranr
16c2b92afd
psbt: overflow checks when computing Taproot BIP32 derivation min size
Protect against overflows when parsing malformed Taproot BIP32
derivation fields. This ensures that deserialization fails safely if the
declared number of leaf hashes would otherwise cause an integer
overflow.
2025-05-22 13:34:28 +01:00
Oliver Gugger
990d9528d7
psbt: check path minimum length 2025-04-04 10:03:53 +02:00
petersssong
5ace0a6879 multi: deprecation gocov 2025-03-19 09:45:48 +08:00
Kim
ca8059b59d bump go mod versions 2025-02-10 16:37:15 +09:00
Oliver Gugger
bda0481701
psbt: add global XPubs to packet
Adds support for the PSBT_GLOBAL_XPUB type as defined in BIP-0174.
2025-01-14 21:19:35 +01:00
Oliver Gugger
bdb0b3d821
psbt: cleanup code 2024-12-26 11:13:57 +01:00
Alexsandro
913f95b2b2
Updated github.com/btcsuite/btcd to address CVE-2024-34478
synchronize dependencies
2024-08-15 11:16:41 -03:00
Oliver Gugger
4bff778564
psbt: decode keytype as compact size
Fixes #2199.

Previous to this fix the keytype was only interpreted as a single byte,
even though BIP-0174 states it is to be parsed as a CompactSize/VarInt.
2024-06-25 16:03:05 +02:00
marcoezekiel
2492b01f69 btcutil/bech32: Added DecodeNoLimitWithVersion
This exposes publicly the ability to decode arbitrary-length bech32
strings and return the bech32 version that was used in the encoding. It
provides the underlying functionality for both DecodeNoLimit and
DecodeGeneric.
2024-05-13 12:02:40 -06:00
MarkDaveny
6b197d38d7
chore: fix some function names (#2180)
Signed-off-by: MarkDaveny <peicuiping@aliyun.com>
2024-04-29 11:45:39 -04:00
snoppy
9851d96c06
chore: fix typos 2024-03-29 10:21:29 +08:00
xiaoxiangxianzi
95330bc1bb
chore: fix some comments (#2146)
Signed-off-by: xiaoxiangxianzi <zhaoyizheng@outlook.com>
2024-03-27 09:45:48 -04:00
mattn
3cb9f602e8
fix typos (#2100) 2024-03-25 09:44:25 -04:00
theedtron
b66f5b8379
multi: fix ioutil deprecated function
update i/o functions to use os / io package functions instead
2024-03-08 17:41:41 -08:00
yyforyongyu
fbe65bfc01
gomod: run go mod tidy for all modules
Also add the `make tidy-module` copied from `lnd`.
2024-01-15 17:22:42 +08:00
vuittont60
7df46516b7
btcutil: fix typo 2024-01-09 17:12:23 +08:00
Olaoluwa Osuntokun
e102a81268
btcutil: add benchmarks for Hash + WitnessHash 2023-12-28 18:07:03 -08:00
Olaoluwa Osuntokun
56de9ca878
btcutil: align new serialization caching logic w/ codebase style 2023-12-28 17:47:11 -08:00
Calvin Kim
83605e476c btcutil: reuse serialized tx during TxHash
btcutil.Block caches the serialized raw bytes of the block during ibd.
This serialized block bytes includes the serialized tx. The current tx
hash generation will re-serialized the de-serialized tx to create the
raw bytes and it'll only then hash that.

This commit changes the code so that the re-serialization never happens,
saving tons of cpu and memory overhead.
2023-12-21 13:43:11 +09:00
Olaoluwa Osuntokun
4126760706
btcutil/psbt: update to btcutil btcutil/v1.1.4 2023-12-19 15:01:52 -08:00
Olaoluwa Osuntokun
28a816f050
btcutil/psbt: update to chaincfg/chainhash/v1.1.0 + btcutil/v1.1.3
We also remove the replace directives in place.
2023-12-15 14:55:10 -08:00
Olaoluwa Osuntokun
7745cbb679
btcutl/gcs: update filter logic to use new DoubleHashRaw 2023-12-15 14:42:35 -08:00
Olaoluwa Osuntokun
e22513c237
btcutil: update to chaincfg/chainhash/v1.1.0 2023-12-15 14:42:29 -08:00
ClaytonNorthey92
d988b86027 Added test for client.GetChainTxStatsAsync() in rpcclient. This sets up a test websocket server to run the tests. Also, ensure these are run within a timeout, since they rely on concurrency 2023-11-02 16:16:11 -04:00
yyforyongyu
d4f519f5dc
gomod: clean go mod files
Resulted from running `go mod tify`.
2023-09-04 12:04:16 +08:00
Olaoluwa Osuntokun
0aaa7c5e7b
Merge pull request #1979 from kcalvinalvin/merkle-calc-fast
blockchain, integration, mining, main: Rolling merkle root calculation
2023-08-10 15:05:40 -07:00
Calvin Kim
3ba9feeeee blockchain, btcutil/bloom: BuildMerkleTreeStore returns chainhash.Hash
BuildMerkleTreeStore used to return a pointer, but it is changed to
return a chainhash.Hash directly.  This allows the compiler to make
optimizations in some cases and avoids a memory allocation.
2023-08-03 15:23:17 +09:00
0xEclair
7f0fb2ad3b psbt: finalizer add proper sighash flag
psbt: fix missing sighash flag when finalizing
psbt: test finalizer add proper sighash flag
2023-07-17 18:35:13 +08:00
Carsten Otto
725b36bf09 btcutil: format BTC amounts with trailing zeroes
so that sat amounts can be read without counting zeroes

before:
 350sat = 0.0000035 BTC
3500sat = 0.000035 BTC

after:
 350sat = 0.00000350 BTC
3500sat = 0.00003500 BTC

fixes #1995
2023-07-04 18:19:07 +02:00
cui fliter
e160bb6922 multi: remove repetitive the
Signed-off-by: cui fliter <imcusg@gmail.com>
2023-06-26 15:40:51 +08:00
Calvin Kim
ba5407615d multi: Run gofmt on the entire repository
The doc formatting changes introduced in the recent go version is
increasing the diff for all of the new commits.  Formatting it all in
this commit will help the readability of future PRs by reducing the
diff.
2023-06-21 22:31:09 +09:00
ziggie
b554add716
psbt: add verification method for psbt input data
the new InputsReadyToSign method makes sure that inputs have either
the nonWitnessUtxo or the witnessUtxo data set.
2023-03-21 09:09:42 +01:00
Oliver Gugger
bb0a2f3790
psbt: add unit test for unknowns 2023-01-27 15:30:46 +01:00
Oliver Gugger
6c81c664bb
psbt: use pointer slice for global unknowns
To unify the way the unknown fields are handled, we change the global
ones to a slice of pointers as well. This makes it easier to add
generic handler code for unknown fields, if they are uniform across the
levels (global, input, output).
2023-01-27 15:30:45 +01:00
Oliver Gugger
5ebbb1bb91
psbt: encode global unknowns 2023-01-27 15:30:44 +01:00
Oliver Gugger
19c7c3d853
psbt: allow Unknowns in outputs 2023-01-27 15:30:43 +01:00
Oliver Gugger
2dbc98bdf3
psbt: fix formatting and typos 2023-01-27 15:30:42 +01:00
Oliver Gugger
734ab735b9
psbt: export Bip32 encode/decode functions 2023-01-27 15:30:41 +01:00
Oliver Gugger
866b3dc0a3
base58: fix decoding issue 2022-11-18 20:55:50 +01:00
Robyn
586729ca07
btcutil/psbt: add method Packet.GetTxFee
This commit adds a GetTxFee method to the psbt.Packet structure. The method returns the PSBT's fee.
2022-11-04 14:49:51 +00:00
Darioush Jalali
3ec3acc6fb
go mod tidy in btcutil/ 2022-07-11 16:30:53 -07:00
Darioush Jalali
f46068f38e
bump version to v0.23.0 2022-06-30 15:59:56 -07:00
Darioush Jalali
d9c09e0315
Bump btcd version in btcutil package 2022-06-28 17:21:46 -07:00
Oliver Gugger
886a8f41db
psbt: make Taproot PSBT finalizable 2022-05-02 16:25:17 +02:00