Commit Graph

2116 Commits

Author SHA1 Message Date
Andreas Schildbach
843db1dda3 Wallet: Remove superfluous assignments. 2016-03-24 20:37:09 +01:00
Andreas Schildbach
98bee183b6 WalletTest: Remove paranoid test preconditions. 2016-03-24 20:00:02 +01:00
Andreas Schildbach
a3db2229c1 WalletTest: Split feeSolverAndCoinSelectionTest() into three. 2016-03-24 19:08:31 +01:00
Andreas Schildbach
f3c7b1847c WalletTest: Use OTHER_ADDRESS constant whenever a test sends coins away. 2016-03-24 18:59:10 +01:00
Willem Noort
9b2ad15cd3 Fix Integer overflow in BitcoinSerializer.BitcoinPacketHeader 2016-03-24 13:52:19 +01:00
Andreas Schildbach
0ebdd5bbea TransactionInput: Print sequence number in toString(). 2016-03-23 14:28:10 +01:00
Andreas Schildbach
5aa4b66c7e WalletProtobufSerializer: Fix protobuf serialization of large sequence numbers. 2016-03-23 14:17:59 +01:00
kushti
645f2d2572 H2FullPrunedBlockStore: Constructor with H2 database credentials. 2016-03-23 13:28:32 +01:00
Andreas Schildbach
a97f4923b4 Get rid of SendRequest.DEFAULT_FEE_PER_KB "constant".
If you have been reading that field, you probably want to use Transaction.REFERENCE_DEFAULT_MIN_TX_FEE.
If you have been writing to that field to change the SendRequest.feePerKb default, use a Context.feePerKb
instead. There is also a new Context.ensureMinRequiredFee.
2016-03-21 21:55:28 +01:00
Andreas Schildbach
2ab367b4e4 SendRequest: New .childPaysForParent() method that constructs a CPFP transaction. 2016-03-21 21:42:38 +01:00
Andreas Schildbach
85f7c39aa5 Refresh bundled checkpoints and switch to textual format for easier audit. 2016-03-21 21:40:14 +01:00
Justas Dobiliauskas
1878f5b9fc Updated WalletAppKit to allow autosave configuration override 2016-03-21 19:44:57 +01:00
Andreas Schildbach
fae82e0f2b Message: Switch package-level-protected methods to protected. 2016-03-21 15:14:44 +01:00
mruddy
910544ae57 Transaction: Fix incorrect condition for log message in setLockTime. 2016-03-12 23:10:04 +01:00
Andreas Schildbach
0bc6c04d5f TransactionOutput: Fix fee calculation in getMinNonDustValue().
Adds a test, too.
2016-03-12 22:24:02 +01:00
Andreas Schildbach
90d8c151be TransactionOutput: New isDust() method, and use it. 2016-03-12 22:23:17 +01:00
Andreas Schildbach
78ae8a0bd7 Wallet: Fix off-by-one when calculating the fee. 2016-03-12 22:06:02 +01:00
Andreas Schildbach
a3c5506a57 Use ScriptBuilder.createOpReturnScript() in tests. 2016-03-12 20:12:58 +01:00
Andreas Schildbach
c3b19bd5cd Wallet: Get rid of the concept of a "base fee". Fee is always expressed as a rate in Coin per 1000 bytes.
SendRequest.fee was removed; use SendRequest.feePerKb for requesting a specific fee rate. If the field
was read for knowing the calculated fee, use SendRequest.tx.getFee() instead.

Also makes a couple of unit tests independent of fee and renames the wallet-tool option --fee to
--fee-per-kb.
2016-03-12 17:37:31 +01:00
Andreas Schildbach
b024f6e571 KeyChainGroup: Small optimization in toString(). 2016-03-11 19:33:09 +01:00
Andreas Schildbach
f70086ae64 Block: toString() cosmetics. 2016-03-11 18:58:23 +01:00
Andreas Schildbach
a22e2f5474 WalletFiles: When saving the wallet, add the 'last block seen' time to the log message. 2016-03-11 18:58:23 +01:00
Andreas Schildbach
eb5605b445 Consistently uppercase constant PARAMS in unit tests, second batch. 2016-03-11 14:28:39 +01:00
Andreas Schildbach
ef0043c41f DeterministicKeyChain: Print birth date of watching key in toString(). 2016-03-11 10:09:01 +01:00
Andreas Schildbach
9aed8ea0a5 For watching wallets, store the key creation time always in the watching key rather than the
DeterministicKeyChain. Creation times in the DeterministicKeyChain can't be persisted to protobuf,
as that structure has no full-blown protobuf equivalent.

This means a couple of DeterministicKeyChain, KeyChainGroup and Wallet factory method variants
that take creation dates have been removed. On the other hand, a convenient
Wallet.fromWatchingKeyB58(params, xpub, creationDate) has been added.

Also adds a test for protobuf-roundtripping watching wallets.

Supposed to fix issue #1209.
2016-03-11 10:08:42 +01:00
Andreas Schildbach
6fcbca10e0 BitcoinURITest: Migrate references to deprecated BitcoinURI.BITCOIN_SCHEME field. 2016-03-10 21:40:59 +01:00
Andreas Schildbach
7ad2da9ab1 Wallet: Hide Wallet(Context, KeyChainGroup) constructor. 2016-03-08 16:33:17 +01:00
Andreas Schildbach
b3583d5d7d Change fee calculation in Wallet.adjustOutputDownwardsForFee():
- Cent rule is removed
- Fee based on feePerKb is calculated on byte precision

This change affects the special cases of emptying and rekeying wallets. Fee calculation of standard transactions is unaffected for now.
2016-03-08 16:02:11 +01:00
Andreas Schildbach
c7462a4541 Sha256Hash: Replace hardcoded 32 values by a LENGTH constant. 2016-03-07 13:07:14 +01:00
Andreas Schildbach
4b75c336bb Sha256Hash: Fix compareTo() not being consistent with equals(). 2016-03-07 12:56:35 +01:00
mruddy
1eaf05cacf Fix core module build failures caused by Maven surefire plugin running JUnit classes.
This removes pull-tester (BitcoindComparisonTool) from the build. If anyone is missing it, we should add it back in the tools sub-project.
2016-03-05 15:06:20 +01:00
Andreas Schildbach
b9102fbf8e Wallet: Fix bug in cleanup() that sometimes would put foreign outputs in myUnspents when disconnecting. This wrongly increases the balance. 2016-03-05 01:13:58 +01:00
Andreas Schildbach
3b99338fb4 Transaction: Put transaction confidence into separate line in toString(). 2016-03-04 14:42:57 +01:00
Andreas Schildbach
83d39b187b Wallet: Print earliest key creation time in toString(). 2016-03-03 16:58:15 +01:00
Andreas Schildbach
660f0b1b24 Wallet: Fix getKeyRotationTime() to return null if unconfigured. 2016-03-03 16:58:09 +01:00
Andreas Schildbach
be1b3f592d Wallet: Log estimated balance after transaction was committed to the wallet and after successful wallet cleanup. 2016-03-02 16:13:04 +01:00
Andreas Schildbach
946bfbee16 PeerGroup: Log when broadcastTransaction() guesses the transaction source. 2016-03-02 11:56:18 +01:00
Andreas Schildbach
6dcff5ff55 Wallet: Rename doesAcceptRiskyTransactions() to isAcceptRiskyTransactions().
And update JavaDocs around risky transactions.
2016-03-02 11:32:29 +01:00
Andreas Schildbach
67e1434b51 Peer: Receiving main protocol messages before version handshake completed is a protocol violation. 2016-03-02 01:04:52 +01:00
Andreas Schildbach
709e6f7562 Peer: Both halves of the version handshake need to be complete before the protocol can continue. 2016-03-02 01:04:52 +01:00
andrewtoth
b2d7b95450 WalletAppKit: Fix old API link in comment. 2016-03-02 01:01:01 +01:00
Andreas Schildbach
e0507fa777 Wallet: In updateForSpends(), when marking an output as spent, log spent-by transaction hash. 2016-03-01 13:26:27 +01:00
Andreas Schildbach
aa5684fcdf Print byte size of transactions in wallet dump. 2016-03-01 09:52:58 +01:00
Andreas Schildbach
d3f45a64cb Replace most of String.format() by StringBuilder. 2016-03-01 00:31:01 +01:00
Andreas Schildbach
315863d4e8 Consistently uppercase constant PARAMS in unit tests. 2016-02-29 22:53:45 +01:00
Andreas Schildbach
c4ea9c95e5 Use Message.unsafeBitcoinSerialize() whenever it's very clear we won't modify the array. 2016-02-29 22:16:01 +01:00
Andreas Schildbach
7240fb754a InsufficientMoneyException: In the exception message, format missing value as BTC value. 2016-02-29 20:44:00 +01:00
Will Shackleton
2f8c715fdd Fixed NullPointerException in creating new StoredPaymentChannelClientStates 2016-02-29 16:39:53 +01:00
Andreas Schildbach
8818f6ff0c Transaction: Fix wrong line ending in toString(). 2016-02-29 15:58:59 +01:00
Andreas Schildbach
cd830bb128 Print transaction fee per kilobyte besides total fee in wallet dump. 2016-02-27 16:01:49 +01:00