Commit graph

3024 commits

Author SHA1 Message Date
Andreas Schildbach
d511effbce Support BIP155 addrv2 messages. 2021-04-30 12:52:33 +02:00
Andreas Schildbach
9e9b6b4c74 Block, Transaction: Use VarInt.getSizeInBytes() on a VarInt we already have, rather than the static VarInt.sizeOf(). 2021-04-28 14:39:40 +02:00
Andreas Schildbach
bdc0310f1f Message hierarchy: Use int (rather than long) for several array and string lengths. 2021-04-28 14:39:24 +02:00
Andreas Schildbach
67399b6c13 Message: Make readVarInt() return a VarInt rather than long. 2021-04-24 17:08:59 +02:00
Andreas Schildbach
ae4f6d43ce VarInt: Introduce intValue() and longValue() accessors and use them, deprecating access to the field. 2021-04-24 17:00:12 +02:00
Andreas Schildbach
742394c434 VersionMessage: Remove support for protocol versions older than 106.
The minimum is 70000 anyway, and I'm pretty sure the code path wasn't properly tested.
2021-04-23 19:17:15 +02:00
Andreas Schildbach
81afcd1a9b Message hierarchy: Remove constructors that take a separate protocolVersion argument.
It's contained in the MessageSerializer since a while.
2021-04-22 17:33:17 +02:00
Andreas Schildbach
f67f47a71c AddressMessage: According to https://en.bitcoin.it/wiki/Protocol_documentation#addr, it can contain only 1000 entries. 2021-04-22 15:54:26 +02:00
Andreas Schildbach
8b74c2681c BitcoinSerializer: Remove a redundant log message when handling an unknown message. 2021-04-17 17:53:12 +02:00
Andreas Schildbach
54c94c9178 UnknownMessage: Cosmetics in toString() in case of empty payload. 2021-04-17 17:24:44 +02:00
Andreas Schildbach
063820f4ed Message: Fix exception due to unknown message having an unknown length. That's ok. 2021-04-17 17:17:47 +02:00
Andreas Schildbach
f1ff9a05ca Script: Cut short script execution in correctlySpends() for the standard P2PK case. 2021-03-16 17:23:05 +01:00
Andreas Schildbach
df7035c0bf Script: Cut short script execution in correctlySpends() for the standard P2PKH case. 2021-03-16 17:23:05 +01:00
Andreas Schildbach
68097e11f6 AlertMessage: Remove alert messages.
The alert message facility has been removed from the Bitcoin protocol due to its centralized nature.
2021-03-16 17:20:15 +01:00
Andreas Schildbach
27eaa02ae4 ScriptTest: Print failing test from tx_invalid.json. 2021-03-07 12:53:53 +01:00
Andreas Schildbach
ffb02ae760 Script: Deprecate non-segwit variant of correctlySpends(). 2021-03-07 09:43:55 +01:00
Andreas Schildbach
63cefbfcd9 Script: Remove deprecated correctlySpends() variant. 2021-03-07 08:58:14 +01:00
Andreas Schildbach
e023573c19 Message: Remove never-used self check. 2021-03-06 14:32:15 +01:00
Andreas Schildbach
4fcfedd704 BitcoinSerializer: Simplify if ladder in makeMessage(). 2021-03-05 19:17:01 +01:00
Andreas Schildbach
9336f1db1b Wallet: Fix adjustOutputDownwardsForFee() to require a fee rate (per kb) rather than an absolute fee if ensureMinRequiredFee is true. 2021-02-17 19:06:44 +01:00
Oscar Guindzberg
d32dbf8fb0 PeerGroup: Update bloom filter also if coins were sent.
Fixes https://github.com/bitcoinj/bitcoinj/issues/2070#issuecomment-744846418
2021-02-17 18:58:37 +01:00
Oscar Guindzberg
78551cbad2 Wallet: When calculating the bloom filter, also include ouputs that are spent.
Fixes https://github.com/bitcoinj/bitcoinj/issues/2070#issuecomment-745662561
2021-02-17 18:49:42 +01:00
Andreas Schildbach
8906e7cc27 Transaction: Add toHexString() for converting a transaction to raw hex format. 2021-02-16 11:26:09 +01:00
Andreas Schildbach
9174ae7495 build.gradle: Update JUnit to 4.13.1. 2021-02-11 13:01:30 +01:00
Andreas Schildbach
1bcea2a59c build.gradle: Update BouncyCastle to 1.68. 2021-01-09 23:41:26 +01:00
Andreas Schildbach
ab66729d79 PeerGroupTest: Migrate a bug number from Google Code to GitHub. 2020-12-06 23:00:02 +01:00
Andreas Schildbach
14673e6907 build.gradle: Update OkHttp to 3.12.12. 2020-10-17 00:29:01 +02:00
Andreas Schildbach
41ebd0aabe build.gradle: Update protobuf-java to 3.13.0. 2020-10-17 00:21:14 +02:00
Andreas Schildbach
e6c68d9758 build.gradle: Update Guava to 30.0-android. 2020-10-17 00:12:51 +02:00
Andreas Schildbach
dbdd60052e build.gradle: Update BouncyCastle to 1.66. 2020-10-17 00:09:40 +02:00
Oscar Guindzberg
f92124d750 TransactionWitness: Add redeemP2WSH() to create the stack pushes necessary to redeem a P2WSH output. 2020-10-11 20:07:48 +02:00
Oscar Guindzberg
4663cd9dea BasicKeyChain, DeterministicKeyChain: Keep listeners when decrypting/encrypting. 2020-10-11 19:54:04 +02:00
Oscar Guindzberg
a02b2749d9 WalletAppKit: Create fallback keychain when using restoreFromKey(). 2020-10-10 16:09:54 +02:00
Oscar Guindzberg
7d2d8d7792 TransactionBroadcast: Also consider confidence change events in the single peer case.
If connected to only one peer, it will be disconnected and reconnected after the broadcast, so we in fact will hear the inv from that peer.
2020-10-07 12:21:12 +02:00
Andreas Schildbach
f5f1adb156 PeerGroup: Add number of discoverers to discoverPeers() log message. 2020-10-06 09:36:47 +02:00
Oğuzhan Çevik
006b969392 AbstractBlockChain: Make a loop more readable. 2020-10-03 12:05:26 +02:00
Sean Gilligan
36d7b11d4b TestWithPeerGroup: Increase test timeout to 15 seconds. 2020-09-23 00:18:36 +02:00
Andreas Schildbach
bc70c0c29d TestWithWallet: Reset mocking to prevent an invalid mock time. 2020-09-20 15:00:57 +02:00
Sean Gilligan
c4fb770d98 Wallet: Make SendResult fields final. 2020-09-20 09:39:06 +02:00
Andreas Schildbach
a912600010 Apply "Identical catch branches in try statement" refactoring. 2020-09-07 21:29:24 +02:00
Andreas Schildbach
6b6ead07eb Apply "for loop replaceable with enhanced for loop" refactoring. 2020-09-07 21:15:51 +02:00
Andreas Schildbach
3290c8c541 Apply "try finally replaceable with try with resources" refactoring. 2020-09-07 21:12:58 +02:00
Andreas Schildbach
4847a9df27 Apply "Explicit generic type can be replaced with <>" refactoring. 2020-09-07 21:10:44 +02:00
Sean Gilligan
8deb113a5e Networks: Replace usage of Guava ImmutableSet with Collections.unmodifiableSet(). 2020-09-07 18:39:35 +02:00
Sean Gilligan
f6c8b0dbe3 Coin: satoshi/long <-> btc/BigDecimal
* Add static utility methods: btcToSatoshi(), satoshiToBtc()
* Add static factory method: ofBtc()
* Add instance method: toBtc()
* Add hamcrest-library to testImplementation for BigDecimal comparison
2020-09-01 15:21:01 +02:00
Andreas Schildbach
6d15df682a CoinTest: Fix typo in test name. 2020-09-01 15:17:48 +02:00
Sean Gilligan
6ee4faddb4 ScriptBuilder: Improve JavaDoc for the various P2SH helpers. 2020-08-31 16:20:40 +02:00
Andreas Schildbach
551b5a18f7 SPVBlockStoreTest: Increase threshold for performanceTest() to 2s.
See #2039.
2020-08-31 14:52:48 +02:00
Sean Gilligan
0324b95b3f ScriptBuilder: Minor cleanup.
* Remove unused import
* Make `chunks` final
2020-08-31 14:49:33 +02:00
Sean Gilligan
c258e47897 SPVBlockStoreTest: Disable testing SPVBlockStore deletion on Windows.
See issue #2032.
2020-08-25 19:11:47 +02:00