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
Ross Nicoll
ecbd021167
Refactor listener interfaces.
...
Refactor listener interfaces into their own package.
Split listener interfaces into smaller interfaces.
Make abstract implementations actually abstract.
Rearrange methods for adding listeners to put executor first.
2015-08-08 15:37:46 +02:00
Andreas Schildbach
bd080ac5e4
BuildCheckpoints: Print time of checkpoint blocks.
2015-08-08 15:20:32 +02:00
Andreas Schildbach
7f2645fe16
BuildCheckpoints: Add option for peer to connect to.
2015-08-08 15:20:15 +02:00
Kalpesh Parmar
7a02d2e598
Database (stores MySQL/Postgres/H2) column names/objects lower case consistency fix.
2015-08-08 11:59:07 +02:00
Andreas Schildbach
98b54d78c1
If wallet is watching, mention this in the dump.
2015-08-08 11:23:41 +02:00
Andreas Schildbach
7f8a5ed182
Print human readable time when initializing a new block store with a checkpoint.
2015-08-08 10:51:01 +02:00
Andreas Schildbach
e978ff4997
Add help text to BuildCheckpoints.
2015-08-07 17:20:22 +02:00
Andreas Schildbach
0e7819d1bf
Add build-checkpoints shell wrappers.
2015-08-07 17:01:11 +02:00
Andreas Schildbach
16465d9310
Fix licenses for tools and examples.
2015-08-07 16:45:18 +02:00
Devrandom
044c98e096
Support testnet and regtest in BuildCheckpoints tool.
2015-08-07 13:18:53 +02:00
Mike Hearn
5f3d3a7f84
Wallet: optimization for cases where (e.g. due to spam attacks) there are tons of relevant transactions in a block.
2015-08-05 12:42:49 +02:00
Mike Hearn
09f13f7956
Tighten the exception SPVBlockStore throws when the chain file is locked.
2015-07-30 17:31:25 +02:00
Devrandom
041b51f8e6
allow unmarried chains to have P2SH addresses
2015-07-29 12:38:22 +02:00
Andreas Schildbach
fa7af642ee
BitcoinSerializerTest: Make more readable.
2015-07-28 22:15:47 +02:00
Andreas Schildbach
7744a00629
Remove lazy parsing of messages.
...
In particular:
* Message.parse(): is now always called once, in the Message constructor
* Message.parsed: removed
* Message.parseLite(): folded into Message.parse()
* Message.maybeParse(): removed
* Message.ensureParsed(): removed
* Message.isParsed(): removed
* Block.parseHeader(): folded into Block.parse()
* Block.parseTransactions(): folded into Block.parse()
* Block.maybeParseHeader(): removed
* Block.maybeParseTransactions(): removed
* Block.ensureParsedHeader(): removed
* Block.ensureParsedTransactions(): removed
* Block.isParsedHeader(): removed
* Block.isParsedTransasctions(): removed
* MessageSerializer.isParseLazyMode(): removed
* BitcoinSerializer.parseLazy: removed
* BitcoinSerializer.getSerializer(): parseLazy parameter removed
* LazyParseException: removed
* LazyParseByteCacheTest: renamed to ParseByteCacheTest
2015-07-28 22:14:59 +02:00
Mike Hearn
d753d28ba5
Wallet: take key chain lock not only wallet lock in getWatchedOutputs().
...
Flagged by the IntelliJ Inspector static analysis engine.
2015-07-28 20:59:03 +02:00
Andreas Schildbach
b7c24c6196
Wallet: Fix not removing unspent transaction outputs when clearing transactions.
...
Adds very basic unit test for resetting wallets.
2015-07-28 20:50:20 +02:00
Andreas Schildbach
bee75f8d36
TestNet3Params: Fix missing assignments for majorityEnforceBlockUpgrade, majorityRejectBlockOutdated and majorityWindow.
2015-07-28 19:07:01 +02:00
Ross Nicoll
6f03669fbd
Enforce block version supermajority for BIP 66 onwards.
2015-07-28 12:55:54 +02:00
Mike Hearn
5a9bd2d797
Better README formatting
2015-07-28 12:43:30 +02:00
Mike Hearn
4543be4102
Add IRC button to README
...
Idea from @bumi
2015-07-28 12:42:30 +02:00
Ross Nicoll
12602650ce
Modify data object serialization/deserialization to provide extension hooks
...
Make headerParsed, transactionParsed, headerBytesValid and transactionBytesValid protected so subclasses in the same package can access them.
Add constructor for use when a block is contained within another object (i.e. AuxPoW header)
Make headerParsed, transactionParsed, headerBytesValid and transactionBytesValid protected so subclasses in the same package can access them.
Add constructor for use when a block is contained within another object (i.e. AuxPoW header)
Add parseTransactions() method which takes in a payload offset, so block parsers can indicate that transactions do not start at byte 80.
Extract common interface from BitcoinSerializer to support alternative serializers, as well as dummy serializer for message classes which do not have their network parameters.
Thread BitcoinSerializer through messages in place of existing parseLazy and parseRetain properties.
Insert dummy serializer into message subclasses when deserialized by Java.
Replace calls to construct Block/Transaction classes from payloads, with calls to MessageSerializer, so alternative formats can be supported elegantly.
Make headerParsed, transactionParsed, headerBytesValid and transactionBytesValid protected so subclasses in the same package can access them.
Add constructor for use when a block is contained within another object (i.e. AuxPoW header)
Add parseTransactions() method which takes in a payload offset, so block
parsers can indicate that transactions do not start at byte 80.
2015-07-28 12:20:32 +02:00
Ross Nicoll
16a5e1d64b
Javadoc format corrections
2015-07-28 12:09:32 +02:00
Chris
0f0c7baec9
Update javascript Tor example to reflect simplified handling of .onion addresses
2015-07-24 23:03:21 +02:00
Chris
8a2e742598
Connect bitcoinj to hidden services
...
This commit adds a few small modifications to PeerAddress to make it easier for
bitcoinj to connect to Tor hidden services when using the Orchid TorClient.
2015-07-24 23:03:15 +02:00
Jameson Lopp
d0416b7f0f
Prevent null pointer exception if DNS seeds parameter is null.
2015-07-24 22:58:30 +02:00
Mike Hearn
30d2da2947
Remove BlockChainListener.isTransactionRelevant.
...
The optimisation this was meant to support ceased to be relevant a long time ago.
2015-07-23 17:28:03 +02:00
Devrandom
43b89f4678
strict mode for Context
2015-07-23 17:04:57 +02:00
Andreas Schildbach
c169325db7
Remove unused Message.checksum.
2015-07-23 16:38:40 +02:00
Andreas Schildbach
783dfc58d1
Remove Java serialization from...
...
* NetworkParameters,
* the entire Message hierarchy,
* Block,
* StoredBlock,
* StoredUndoableBlock,
* TransactionConfidence,
* UTXO,
* DeterministicHierarchy,
* MemoryFullPrunedBlockStore,
* KeyCrypterScrypt and
* Wallet
It was largely untested, in many cases not working any more and we don't see a reason for supporting it.
2015-07-23 16:27:25 +02:00
Andreas Schildbach
5c2eaf2654
Make Travis not run any tests that involve accessing the network.
2015-07-23 14:26:04 +02:00
Mike Hearn
551d01a625
BlockingClient: make it easier to manually start a read/write loop.
2015-07-22 22:27:19 +02:00
Andreas Schildbach
12f3d2dbca
Remove Java serialization from the ECKey hierarchy. It was broken for some time anyway (LazyECPoint).
2015-07-22 14:21:34 +02:00
Andreas Schildbach
230421484c
ExchangeRate: Implement equals/hashCode and add a test for Java serialization.
2015-07-22 11:58:06 +02:00
Devrandom
4411eb8702
Don't derive private keys just to check if they exist
2015-07-21 09:38:17 +02:00
Kalpesh Parmar
a293b09ef5
MySQL data type fixed. Changed binary to varbinary.
2015-07-20 12:30:35 +01:00
Andreas Schildbach
0441b38599
Provide a consistent fromBase58/toBase58 API for the VersionChecksummedBytes hierarchy.
...
Deprecates the old constructors and migrates bitcoinj itself to use the new API. Also makes DumpedPrivateKey use WrongNetworkException when appropriate. Adds missing testcases and corrects/adds a bit of JavaDoc.
2015-07-18 13:53:59 +02:00
Andreas Schildbach
4112ed8005
Fix last remaining occurences of 'BitCoin' and 'BitCoinJ'.
2015-07-17 00:55:18 +02:00