Commit graph

67 commits

Author SHA1 Message Date
Byron Hambly
0e89b30f95 Merge 8add59d77d into merged_master (Bitcoin PR bitcoin/bitcoin#24367) 2023-07-02 07:33:56 +00:00
Byron Hambly
62697be8d9 Merge 3d223712d3 into merged_master (Bitcoin PR bitcoin/bitcoin#16795) 2023-06-28 16:32:17 +00:00
Byron Hambly
f59db643ed Merge 34118bfadd into merged_master (Bitcoin PR bitcoin/bitcoin#23784) 2023-06-15 09:05:07 +00:00
Byron Hambly
31a33bbc87 Merge 28d5074343 into merged_master (Bitcoin PR bitcoin/bitcoin#23253) 2023-05-11 10:21:19 +00:00
Byron Hambly
a1fbc62ba6 Merge fbbbc594ad into merged_master (Bitcoin PR bitcoin/bitcoin#23227) 2023-05-10 13:56:33 +00:00
James Dorfman
3cace2f326 Merge 78d39f8438 into merged_master (Bitcoin PR bitcoin/bitcoin#22861) 2023-04-20 20:38:04 +00:00
Byron Hambly
639d71f0d1 Merge f5a406f003 into merged_master (Bitcoin PR bitcoin/bitcoin#22633) 2023-04-10 12:59:14 +00:00
Jon Atack
48742693ac
Replace "can not" with "cannot" in docs, user messages, and tests 2022-02-21 19:07:29 +01:00
Gregory Sanders
6498ba151b transaction decoding infer output descriptors 2022-01-26 09:56:51 +08:00
Sebastian Falbesoner
8bd34dc774 test: check that bitcoin-tx detects missing input amount for segwit transactions 2021-12-29 21:25:09 +01:00
MarcoFalke
fa6f29de51
bitcoin-tx: Reject non-integral and out of range multisig numbers 2021-10-12 12:45:55 +02:00
MarcoFalke
fafab8ea5e
bitcoin-tx: Reject non-integral and out of range sequence ids 2021-10-12 12:45:50 +02:00
MarcoFalke
fa53d3d826
test: Check that bitcoin-tx accepts whitespace around sequence id and multisig numbers 2021-10-12 12:44:41 +02:00
MarcoFalke
fa43e7c2d9
bitcoin-tx: Avoid treating overflow as OP_0 2021-10-11 09:17:28 +02:00
MarcoFalke
fa0937de35
test: Rename bitcoin-util-test.py to util/test_runner.py
To normalize the name of all three test runners (fuzz, functional, util).
2021-09-02 10:43:19 +02:00
Zero-1729
021daedfa1
refactor: replace remaining binascii method calls 2021-08-16 19:30:56 +01:00
Andrew Poelstra
bb8e5d1ce4 Merge a196c89317 into merged_master (Bitcoin PR bitcoin/bitcoin#22270)
Some PRs ago (in #19937) the bitcoin-util binary was added, which we
didn't notice and didn't rename to elements-util. This commit adds
some tests for it, which made me notice it ... so rename it here.
2021-07-28 18:18:31 +00:00
Andrew Poelstra
d39d57c704 Merge 1c7be9ab90 into merged_master (Bitcoin PR #20286)
I hate this PR.
2021-06-28 21:30:17 +00:00
MarcoFalke
fa304929e2
test: Add bitcoin-util tests 2021-06-18 20:08:45 +02:00
Andrew Poelstra
658b2312da Merge f656165e9c into merged_master (Bitcoin PR #18772)
I'm gonna be honest, I largely just rewrote this one. It adds a "fee" field
to the RPC transaction output, which I replaced with a feemap which is
directly extracted from the transaction rather than computed implicitly
from inputs - outputs.

Removed a functional test that fee computations become impossible without
chain data, since in Elements there is no chain data lookup involved.
2021-06-16 01:07:10 +00:00
Andrew Poelstra
575da3c422 Merge 46f0b2f976 into merged_master (Bitcoin PR #19851) 2021-05-06 22:22:51 +00:00
Michael Dietz
085b3a7299
rpc: deprecate addresses and reqSigs from rpc outputs
1) add a new sane "address" field (for outputs that have an
   identifiable address, which doesn't include bare multisig)
2) with -deprecatedrpc: leave "reqSigs" and "addresses" intact
   (with all weird/wrong behavior they have now)
3) without -deprecatedrpc: drop "reqSigs" and "addresses" entirely,
   always.
2021-03-23 10:51:43 -04:00
Andrew Poelstra
0f623aede0 Merge 210b533a11 into merged_master (Bitcoin PR #18447) 2020-11-26 01:08:03 +00:00
Andrew Poelstra
6a5b5f13ec Merge b53af72b82 into merged_master (Bitcoin PR #18416) 2020-11-26 01:08:03 +00:00
Andrew Poelstra
3d7ed201af Merge 335b34c30c into merged_master (Bitcoin PR #16725) 2020-11-09 21:20:23 +00:00
João Barbosa
c92387232f refactor: Extract ParseOpCode from ParseScript
A second lookup in mapOpNames is also removed.
2020-10-06 12:34:05 +01:00
MarcoFalke
210b533a11
Merge #18447: test: Add coverage for script parse error in ParseScript
dcda81c471 test: add coverage for script parse error in ParseScript (pierrenn)

Pull request description:

  Follow up on this suggestion :  https://github.com/bitcoin/bitcoin/pull/18416#issuecomment-603966799

  This adds a test case to raise the `script parse error` in `ParseScript`.

ACKs for top commit:
  instagibbs:
    utACK https://github.com/bitcoin/bitcoin/pull/18447/commits/dcda81c47101196e53e379d965a2692515ef8363

Tree-SHA512: ae0ef2c00f34cee818c83582f190d5f4043159e922862f2b442b7b895b8ff3ca421533699247c12c367be77813b5205830a771cd47a18e8932807ccace2d6a1c
2020-03-27 09:58:12 -04:00
pierrenn
9ab14e4d21 Limit decimal range of numbers ParseScript accepts 2020-03-27 15:51:05 +09:00
pierrenn
dcda81c471
test: add coverage for script parse error in ParseScript 2020-03-27 12:10:31 +09:00
nicolas.dorier
6d803494b5
Don't show addresses or P2PK in decoderawtransaction 2019-08-30 11:29:21 +09:00
Steven Roose
f4889a5253
UPSTREAM MERGE BROKEN: Merge upstream commit '519b0bc5dc' into master 2019-05-17 16:17:09 +01:00
Steven Roose
7f894ae00b
UPSTREAM MERGE BROKEN: Merge commit 'f617e05c38' into master 2019-05-01 19:18:18 +01:00
Steven Roose
e1cd00cc6c Change branding from bitcoin to elements 2019-03-22 10:12:04 +00:00
Gregory Sanders
8ea52eec38 Default to elementsregtest 2019-03-21 10:43:20 -04:00
Steven Roose
6493ad902a
Adapt bitcoin-tx to CA 2019-03-20 12:05:47 +00:00
Gregory Sanders
c5a93c008f UPSTREAM MERGE BROKEN: Merge commit '8aa9badf5e' into e17 2019-01-23 16:48:22 -05:00
Steven Roose
ae54d4ad74 Add pegin input serialization 2019-01-02 16:12:50 +01:00
practicalswift
4de11a3682 Remove Python 2 import workarounds 2018-12-13 16:46:31 +01:00
Carl Dong
6be7d14d24 Properly generate salt in rpcauth.py, update tests
Previously, when iterating over bytes of the generated salt to construct
a hex string, only one character would be outputted when the byte is
less than 0x10. Meaning that for a 16 byte salt, the hex string might be
less than 32 characters and collisions would occur.
2018-11-17 01:26:49 -08:00
Ben Woosley
9c5af58d51
Consolidate redundant implementations of ParseHashStr
This change:
* adds a length check to ParseHashStr, appropriate given its use to populate
  a 256-bit number from a hex str.
* allows the caller to handle the failure, which allows for the more
  appropriate JSONRPCError on failure in prioritisetransaction rpc
2018-09-25 09:14:52 -07:00
Isidoro Ghezzi
49e56625aa
fix deprecation in bitcoin-util-test.py
To avoid:

$ make check
{…omissis…}
Running test/util/bitcoin-util-test.py...
/usr/local/bin/python3.7 ../test/util/bitcoin-util-test.py
../test/util/bitcoin-util-test.py:31: DeprecationWarning: This method will be removed in future versions.  Use 'parser.read_file()' instead.
config.readfp(open(os.path.join(os.path.dirname(__file__), "../config.ini"), encoding="utf8"))

$ python3 --version
Python 3.7.0
2018-08-13 14:08:45 +02:00
Andrew Chow
18dfea0dd0 Always create 70 byte signatures with low R values
When extra entropy is not specified by the caller, CKey::Sign will
now always create a signature that has a low R value and is at most
70 bytes. The resulting signature on the stack will be 71 bytes when
the sighash byte is included.

Using low R signatures means that the resulting DER encoded signature
will never need to have additional padding to account for high R
values.
2018-08-09 18:39:56 -07:00
Daniel Kraft
57889e688d bitcoin-tx: Stricter check for valid integers
Just calling atoi to convert strings to integers does not check for
valid integers very thoroughly; in particular, it just ignores
everything starting from the first non-numeral character.  Even a string
like "foo" is fine and silently returns 0.

This meant that bitcoin-tx would not fail if such a string was passed in
various places where an integer is expected (like the locktime or an
input/output index); this means that it would, for instance, silently
accept a typo and interpret it in an unexpected way.

In this change, we use ParseInt64 for parsing strings to integers,
which actually verifies that the full string is valid as number.
New tests in the bitcoin-util-test cover the new error paths.
2018-07-07 14:25:09 +02:00
practicalswift
634bd97001 Explicitly specify encoding when opening text files in Python code 2018-06-12 21:34:52 +02:00
Wladimir J. van der Laan
2a89b0c812 rpcauth: Make it possible to provide a custom password
This adds the functionality to specify a custom password to
`rpcauth.py`, as well as makes the code (IMO) easier to understand.
2018-05-02 05:29:22 +02:00
Qasim Javed
6674a75bfb [tests] Make rpcauth.py testable and add unit tests
refs #12995
2018-04-24 11:41:20 -07:00
Matt Corallo
2874709a9f Expose a transaction's weight via RPC 2018-04-13 15:18:26 -04:00
practicalswift
d27327c79a Fix typos 2018-03-21 10:54:17 +01:00
MarcoFalke
faefd2923a
qa: Prepare functional tests for Windows
* Pass `sys.executable` when calling a python script via the subprocess
  module
* Don't remove the log file while it is still open and written to
* Properly use os.pathsep and os.path.sep when modifying the PATH
  environment variable
* util-tests: Use os.path.join for Windows compatibility
2018-01-24 15:52:07 -05:00
dongsamb
a3ac7672ed Fix string concatenation to os.path.join and add exception case 2017-12-09 15:14:41 +09:00