Andreas Schildbach
52b9623262
Wallet: Fix printing the same transaction twice when two pending transactions double spend each other are seen.
2015-10-14 15:56:25 +02:00
Andreas Schildbach
bb9c93c9b1
TestFeeLevel: Print the number of peers already connected.
2015-10-13 12:29:06 +02:00
Andreas Schildbach
91a49e66dd
TestFeeLevel: 50 connections can take too long to build these days, so halve that value. Should still be enough for transaction propagation.
2015-10-13 12:06:53 +02:00
Mike Hearn
761834bc18
Allow some monkey-patching of Peer methods/Peer creation.
...
Fix a bug in the min version required feature.
2015-10-08 19:15:07 +02:00
Mike Hearn
0079c272ff
PeerGroup: fix a bug that'd leave maxConnections == 0 if setRequiredServices was used without configuring any other discovery (a typical use case).
2015-10-08 16:10:48 +02:00
Mike Hearn
fabbb0a9ac
Tweak HS integration again to avoid performance regression.
2015-10-08 15:56:44 +02:00
Mike Hearn
e104bfbb7e
PeerAddress/HttpDiscovery: accept unresolved InetSocketAddresses to avoid super-slow reverse DNS lookups for HTTPSeed discovered peers.
2015-10-08 14:51:47 +02:00
Mike Hearn
3d322d5c98
Block/FakeTxBuilder: restore API compat
2015-10-08 14:51:11 +02:00
Mike Hearn
979d20996e
PeerAddress: simplify dead code
2015-10-08 13:51:14 +02:00
Mike Hearn
f9c6ded2b8
GetUTXOSMessage: int -> long for flags constant (makes Kotlin interop smoother)
2015-10-08 13:45:34 +02:00
Glenn Marien
ce22d1a493
Fixed imported keys not being passed onto UTXOProvider
2015-10-05 18:00:49 +02:00
Mike Hearn
9ba1be762a
Wallet: flip argument ordering in deprecated Wallet.addEventListener to restore compatibility with 0.13
2015-10-05 17:12:55 +02:00
Mike Hearn
0342feee86
PeerGroup: restore and deprecate some removed addEventListener methods
2015-10-05 17:03:20 +02:00
Mike Hearn
f5db4b92be
Reverse the order of ListenerRegistration c'tor to restore compatibility with bcj 0.13
2015-10-05 17:01:02 +02:00
Mike Hearn
9bfce1bae0
Remove no longer used variable.
2015-09-30 17:21:39 +02:00
dexX7
be41d84fb9
Add more script edge condition tests
...
Original submission:
```
commit 1c54757f8678c9131ec55c128b8f1d5b6c73c2f9
Author: Dave Collins <davec@conformal.com>
Date: Wed May 6 10:16:18 2015 -0500
Add more script edge condition tests.
This commit adds some tests to the script_valid.json and tx_invalid.json
data which exercise more edge conditions that are not currently being
tested.
```
Via:
https://github.com/bitcoin/bitcoin/pull/6112
2015-09-30 00:34:08 +02:00
dexX7
a3d378bae6
Ensure "OP_0" and "false" have the same represenstation on stack
...
During the script execution via `executeScript()` certain operations
add boolean values to the stack.
Boolean values, which are added to the stack as result, are represented
as follows in Bitcoin Core:
- `true`: as vector with one element: `[1]`
- `false`: as empty vector with zero elements: `[]`
See:
- 48efbdbe98/src/script/interpreter.cpp (L244)
- 48efbdbe98/src/script/interpreter.cpp (L246)
However, in BitcoinJ the representation of `false` differs in some
cases, where it is represented as Byte array with one element, which
is zero: `[0]`
See:
- `OP_EQUAL`: 5dcf643975/core/src/main/java/org/bitcoinj/script/Script.java (L1025)
- `OP_CHECKSIG`: 5dcf643975/core/src/main/java/org/bitcoinj/script/Script.java (L1304)
- `OP_CHECKMULTISIG`: 5dcf643975/core/src/main/java/org/bitcoinj/script/Script.java (L1381)
At minimum this has an impact on the behavior of `OP_EQUAL` and
`OP_EQUALVERIFY`, when comparing something with `OP_FALSE`/`OP_0`.
This commit attemps to fix the issue, to mirror the verification
behavior of Bitcoin Core, by adding empty Byte arrays to the stack,
instead of Byte arrays with `0`.
2015-09-30 00:30:29 +02:00
Andreas Schildbach
9b860f14de
Don't add Maven descriptor to build artifacts.
...
It's pretty useless and it stands in the way of reproducible builds.
2015-09-27 14:31:21 +02:00
Mike Hearn
7014810cf6
Peer: Break out the onTransactionBroadcast event into a separate interface.
2015-09-18 21:10:53 +01:00
Mike Hearn
c2a67aaa59
Fix thread safety issue when creating multiple wallets in parallel.
2015-09-16 14:11:19 +01:00
Andreas Schildbach
f20cb1132d
WalletProtobufSerializer: Rethrow IllegalArgumentException when loading wallets.
2015-09-05 19:23:18 +02:00
Matt Bogosian
66a851bd30
Fix #1078 . Add ability to load Wallet without loading its transactions. Use new methods with wallet-tool reset (where transactions are deleted anyway) and with wallet-tool sync (if the --force option is provided).
2015-09-04 18:07:26 +02:00
cyberzac
7c8c2a4b02
Allowing settlement of unused channel
2015-09-04 16:13:49 +02:00
Mike Hearn
fc9ae41883
Restore some deprecated backwards compatibility glue for the event listener changes.
2015-09-02 20:40:22 +02:00
Mike Hearn
5e15c04305
AbstractBlockChain: remove useless final declarations from event listener registration methods added in recent commits
2015-09-02 20:10:38 +02:00
Mike Hearn
9470601ea5
Wallet: make balance futures work for all balance types
2015-09-02 20:10:38 +02:00
Mike Hearn
a73677e9fb
DeterministicKey: throw a KeyCrypterException instead of an IllegalStateException if the derivation check fails (as this can happen when the password is wrong)
2015-09-02 20:10:38 +02:00
Mike Hearn
48b4df73a1
Coin: more aliases
2015-09-02 20:10:37 +02:00
Oscar Guindzberg
629e5d864d
Rename getChangeAddress() to currentChangeAddress()
2015-09-01 17:39:46 -03:00
Mike Hearn
207ef37894
Coin: add plus/minus aliases for add/subtract. This activates Kotlin operator overloading support.
2015-08-31 15:46:01 +02:00
Mike Hearn
864f2529e8
Wallet: make getUnspents() public.
2015-08-31 15:12:02 +02:00
Mike Hearn
6b4123cd9f
Comparison tool: take out the warning sleep
2015-08-27 15:21:50 +02:00
Ross Nicoll
d3d11df6d7
Add BIP 34 enforcement
...
This patch primarily enforces block height being present in the coinbase
transaction input, altough it introduces a number of other fixes and
changes to support this.
* VersionTally now returns the number of blocks at or above a version, rather than just at, to enable forward-compatible support (i.e. v3 blocks include all v2 block tests)
* Block version is now explicitely provided in most tests which generate blocks, in order to ensure correct tests are applied
* Block height is now used when generating coinbase transactions
* Added support for the chain parameters to determine which tests apply to a block, so altcoins can override the defaults if needed.
* Added initial checks ahead of full BIP 66 validation checks
2015-08-27 15:12:39 +02:00
Oscar Guindzberg
c5727d12fa
Fix AbstractBlockChain comments
2015-08-27 15:08:25 +02:00
Andreas Schildbach
eec6eebc68
MonetaryFormat: add message to non-obvious precondition.
2015-08-27 11:15:12 +02:00
peacekeeper
5dcf643975
A transaction output may have multiple OP_RETURNs.
2015-08-26 12:03:41 +02:00
Oscar Guindzberg
cf980bc68c
DeterministicKeyChain.toString(): remove unnecessary check to show the xpub.
2015-08-26 11:58:34 +02:00
ollekullberg
ebc888d282
Name change: ProtobufParser → ProtobufConnection, StreamParser → StreamConnection
2015-08-26 11:07:22 +02:00
Andreas Schildbach
74af6a2c8a
Set user agent for HTTP discovery.
2015-08-25 17:50:30 +02:00
Andreas Schildbach
5bd0623a28
Convenience method PeerGroup.setRequiredServices() for connecting only to peers that can serve specific services
2015-08-25 12:44:36 +02:00
Andreas Schildbach
72763f2711
Add MultiplexingDiscovery.forServices() that builds a suitable set of peer discoveries for
...
(optional) a set of desired services.
2015-08-25 12:44:36 +02:00
Andreas Schildbach
1be65483b4
Adds a services bitmask to PeerDiscovery.getPeers(), so we can query HTTP seeds for specific services.
...
As this is a breaking change to the API, it removes IrcDiscovery (there is no point in keeping it).
Also updates OkHttp to 2.4.0.
2015-08-25 12:44:35 +02:00
Andreas Schildbach
d4c7ce5c77
wallet-template: Fix warning about missing @Nullable annotation.
2015-08-24 18:54:00 +02:00
Andreas Schildbach
a12ec7f49d
Fix Tor support does not use all available HTTP seeds.
2015-08-24 18:54:00 +02:00
Mike Hearn
2c8ffc84ec
Peer: Lower log priority of message about not being configured with a block chain.
...
Using Peer[Group] to download blocks with no block chain is reasonable and printing a message every time a block is received is annoying.
2015-08-24 16:58:11 +02:00
Andreas Schildbach
021b0d76fe
Add httpseed.bitcoin.schildbach.de to HTTP seeds.
2015-08-22 15:20:12 +02:00
Oscar Guindzberg
a8edae0475
MarriedKeyChain: Remove redundant check.
2015-08-20 09:42:45 +02:00
Oscar Guindzberg
6c3b545b0c
DeterministicKeyChain: Rename "externalKey" and "internalKey" attribute
...
names to "externalParentKey" and "internalParentKey".
2015-08-20 09:39:24 +02:00
Oscar Guindzberg
fe7b703237
Wallet: Rename attribute "keychain" to "keyChainGroup".
2015-08-20 09:37:30 +02:00
Andreas Schildbach
200f2368c6
AddressFormatException: Make unchecked. Base58 strings are rarely typed manually these days.
2015-08-08 16:33:29 +02:00