Commit Graph

103 Commits

Author SHA1 Message Date
Mike Hearn
ba65e7ccf3 Delete dead code from PeerGroup that was obsoleted by the move to Netty. 2012-07-21 22:34:31 +02:00
Mike Hearn
c6d900e91c Correct stale comment in bitcoin.proto 2012-07-21 22:34:31 +02:00
Miron Cuperman
00ce3d7523 Fix incorrect synchronization on map values. 2012-07-18 12:16:29 -07:00
Miron Cuperman
0a9f529f72 Clean up Peer callback API.
Resolves issue 220.
2012-07-18 11:44:55 -07:00
Miron Cuperman
4d58ea5111 Missing synchronization for iterations.
(over synchronizedMap/synchronizedSet)
2012-07-18 10:48:07 -07:00
Mike Hearn
831f2d582f Support the invalid QRcodes generated by blockchain.info (Ben Reeves software). They put bitcoin:// at the front instead of bitcoin:, apparently because otherwise some social networks won't recognize them. 2012-07-14 13:23:00 +02:00
Matt Corallo
ad2c339d85 Fix two false-positives in test cases. 2012-07-13 17:53:30 +02:00
Mike Hearn
9d46c48db9 Fix Sha256Hash hashcode function.
Delete wallet deserialization unit test, as we now consciously are breaking serialization compatibility. Resolves issue 213.
2012-07-09 22:28:29 +02:00
Mike Hearn
ec096993e6 Test and fix transactions in multiple chains going the other way (appears in side chain first, then best) 2012-07-09 22:02:55 +02:00
Mike Hearn
038438b394 Fix a bug that could cause inconsistent wallets.
When a side chain block contains the same transactions as the best chain, we incorrectly inserted into the inactive map, triggering assertion failures. Resolves issue 202.
2012-07-09 21:38:52 +02:00
Mike Hearn
ac3fc068d0 Correct a comment, a few logging statements. 2012-07-05 16:01:31 +02:00
Mike Hearn
4bf8252041 Print a trailing newline in coinbase transaction toString method. 2012-07-05 16:01:14 +02:00
Mike Hearn
4d1e6259a7 coinbase phase 3 - coinbase death and resurrection now working (updated with Mike's comments) 2012-07-04 19:19:19 +01:00
Mike Hearn
6a2139f681 BitCoin -> Bitcoin. Add a Peer c'tor that lets you specify useragent instead of a full VersionMessage. 2012-07-04 17:58:35 +02:00
Mike Hearn
f018e2956e Fix a class casting bug that isn't picked up by the unit tests as they don't use a real socket. Due to the move to embedded handlers during code review. 2012-07-04 17:58:35 +02:00
Mike Hearn
567fccbf8a Fix indentation in core/pom, clear a couple of findbugs warnings that were introduced with the last commit. 2012-07-04 17:58:35 +02:00
Miron Cuperman
fa10523007 Netty network stack.
This should resolve some scalability and robustness issues.
2012-07-04 17:08:35 +02:00
Mike Hearn
2d8f25a2da Bump locator size to 100 to match coinbase maturity. Add a few more comments to address Mirons review comments for chain download fixes. 2012-06-14 13:42:06 +02:00
Mike Hearn
c5d0573107 Another attempt to fix Windows. Resolves issue 200. 2012-06-10 15:00:36 +02:00
Mike Hearn
8648e02f52 Throw away messages until version negotiation is complete rather than throwing an exception. There's a bug in Satoshis code (bug 1436) that can cause alerts to be relayed before nego finishes. 2012-06-09 23:58:42 +02:00
Mike Hearn
f55219a603 Extra log line 2012-06-09 23:57:51 +02:00
Mike Hearn
7d1c982c9a Make AlertMessage toString contain the actual alert message. 2012-06-09 23:57:41 +02:00
Jim Burton
96e27cfe27 Renamed TransactionConfidence.OVERRIDDEN_BY_DOUBLE_SPEND to DEAD 2012-06-08 17:58:41 +02:00
Mike Hearn
643088145e Clear out some FindBugs warnings. 2012-06-08 17:53:50 +02:00
Mike Hearn
4e4abf8a54 Delete the wallet file before renaming its replacement on Windows. Resolves issue 200. 2012-06-08 17:10:35 +02:00
Mike Hearn
6fec1263ff Add a RAW_DUMP command to wallet tool. 2012-06-08 16:30:23 +02:00
Mike Hearn
335863c75d Add some helpers for creating pubkey-only outputs.
Allow spending of pubkey outputs. There are unit tests but not manually tested yet.
Implement toString() logic for printing pubkey inputs/outputs.
Don't consider coinbase transactions relevant until Jims work is in.
Support sending to pubkeys in wallet-tool
2012-06-07 10:57:34 +02:00
Mike Hearn
e863d01545 Fix receiving of pending transactions, it was broken after the memory pool changes in the case when a tx was received first on a non download peer. 2012-06-05 14:26:18 +02:00
Mike Hearn
da8dba8b23 Re-write block chain download handling to avoid parallel chain downloads occurring. Avoids big slowdowns when a block is solved during the chain download. Resolves issue 180. 2012-06-05 12:26:41 +02:00
Mike Hearn
0a689f9add Add some debug logging to Peer. Updates issue 199. 2012-06-03 15:34:54 +02:00
Mike Hearn
6ade5c38cc Update wallet tx confidence data for blocks that do not contain any relevant transactions. Resolves issue 197.
TESTED=synced a wallet with a mainnet key and watched depth/work rise as new blocks were solved
2012-06-03 15:31:21 +02:00
Mike Hearn
cd5431b310 Print more information in Transaction/Wallet toString outputs to reflect last seen block hash and confidence/depth data. 2012-06-03 14:20:42 +02:00
Mike Hearn
5deecef64c Update a TestUtils helper to allow solved blocks to have transactions in them. Rewrite lastSeenBlockHash test to use it and eliminate a todo. 2012-06-03 14:20:02 +02:00
Mike Hearn
417dcefa67 Close the FileInputStream created in Wallet.loadFromFile(). Resolves issue 198. 2012-06-03 11:35:22 +02:00
Jim Burton
80f141cbf5 TransactionConfidence changes (coinbase phase 2) + Mike's feedback 2012-06-01 16:14:18 +02:00
Fireduck
61fba05d3d Makes Wallet easy to extend.
Adds WalletProtobufHelper, which is an easy class to extend
to add extensions to the wallet serialization.

Modified WalletProtobufSerializer to use that helper.
2012-06-01 15:35:16 +02:00
Mike Hearn
db67db5943 Take the directory of the wallets absolute path name, to avoid creating temporary wallets in the system default directory. This does not play well with NFS. 2012-06-01 15:22:11 +02:00
Mike Hearn
73e640e3b3 Take out a bogus assert that did not do what I thought it did. 2012-05-30 16:17:45 +02:00
Mike Hearn
d9c2aabf66 Note about running time in BlockStore.getChainHead(). Resolves issue 191. 2012-05-30 00:15:06 +02:00
Mike Hearn
1f96f850e0 Automatically set up fast catchup time on a PeerGroup when wallets are added. Resolves issue 183. 2012-05-30 00:08:18 +02:00
Mike Hearn
adb46c7dcb Make isAvailableForSpending and markAsUnspent public. Add JavaDocs for them. Resolves issue 193. 2012-05-29 23:58:31 +02:00
Mike Hearn
7705bd59a4 Version 0.6-SNAPSHOT 2012-05-21 16:46:44 +02:00
Mike Hearn
e375270d6b Remove deduplication code. It is dead for a long time now already. 2012-05-21 16:10:28 +02:00
Mike Hearn
e42063806c Write+rename wallet files. 2012-05-21 15:31:21 +02:00
Mike Hearn
0739a6f674 Port to the latest BouncyCastle API and switch to the SpongyCastle lightweight API. It has the following benefits:
- Keeps us up to date with the crypto library
 - Resolves the need for an Android artifact by using a renamed lib
 - Switches to the lightweight API so minimizes our dependencies, which is also required for the native branch to be merged

 Resolves issue 171
2012-05-18 17:03:55 +02:00
Jim Burton
6c31abd698 coinbase-tx phase1 complete (add blockheight to wallet and protobuf) 2012-05-17 14:18:31 +01:00
Mike Hearn
23a960e0f4 Fix a bug revealed by the better wallet consistency checks - after reprocessing an unincluded transaction at the end of a re-org, check if connected transactions now need to be moved to the spent pool. 2012-05-15 23:45:59 +02:00
Mike Hearn
2081c2234b Ignore blocks that are sent to us which we never requested. Updates issue 180. 2012-05-15 22:39:20 +02:00
Mike Hearn
1b1457449a Add a BitcoinURI.convertToURI variant that takes a String instead of an Address. Remove test for null param -> IllegalArgumentException as that's not consistent with the rest of the library. Resolves issue 152. 2012-05-14 20:57:14 -07:00
Mike Hearn
3d5a7ea7ec Don't use peers that claim to have a block chain and then report a height of zero. These are probably buggy reimplementations of the protocol. 2012-05-14 20:52:06 -07:00