3
0
mirror of https://github.com/Qortal/altcoinj.git synced 2025-01-31 15:22:16 +00:00
Commit Graph

1504 Commits

Author SHA1 Message Date
Devrandom
ba9415b3ee Force update Bloom filter when false positive rate gets high 2013-12-13 16:00:41 -08:00
Devrandom
751434ba7c Fix bloom filter sizing with watched scripts 2013-12-13 15:59:07 -08:00
Devrandom
606f199e73 Update Miron's email address 2013-12-13 15:59:06 -08:00
Mike Hearn
86b42b7fe5 Remove disconnectOldVersions2 as it tests nothing, probably a bad merge conflict. 2013-12-13 15:55:08 -08:00
Mike Hearn
e4e2e60627 Fix DnsDiscovery javadocs and make a couple of fields final. 2013-12-13 09:29:08 -08:00
Mike Hearn
c278867186 Add a unit test for Script.toString and don't emit trailing whitespace. 2013-12-12 08:11:23 -08:00
Mike Hearn
4bbcfc4377 Don't print script creation timestamp in Script.toString() 2013-12-12 08:09:15 -08:00
Mike Hearn
22a58755db Print peer times using String.format. Resolves issue 495. 2013-12-11 19:13:46 -08:00
Mike Hearn
2f8740f8a8 Remove usage of deprecated method in PeerTest. 2013-12-11 10:39:31 -08:00
Mike Hearn
24d38cdba4 Check for and reject null event listeners. 2013-12-11 10:00:35 -08:00
Matt Corallo
2879f7bb9b Fix memory leak of downloadListener 2013-12-11 10:00:35 -08:00
Ken Sedgwick
a0f32ab0d2 Improved comment. 2013-12-10 17:49:45 -08:00
Ken Sedgwick
e86ce7f268 Updated to latest version of BIP-0039. 2013-12-10 17:49:45 -08:00
Ken Sedgwick
5cd10a537a Added Mnemonic{Length,Word,Checksum}Exception and tests for each case. 2013-12-10 17:49:45 -08:00
Mike Hearn
69f52c1b8a Bug fix to avoid a flake in PeerTest.
There seem to be other cases where unit tests can be flaky with nonetty. More fixes will come later.
2013-12-10 13:51:18 -08:00
Mike Hearn
ce4ac86884 Move discovery package into net package. 2013-12-10 13:13:52 -08:00
Mike Hearn
3318d15194 Rename networkabstraction package to just net 2013-12-10 13:12:22 -08:00
Matt Corallo
c10ebd260c Fix reentrance bug when writing in connectionOpened. 2013-12-10 13:03:15 -08:00
Matt Corallo
ba543a3b10 Only do network writes on the handler thread in nio wrappers 2013-12-10 13:03:15 -08:00
Matt Corallo
abe9513dde Don't allow setting writeTarget twice. 2013-12-10 13:03:15 -08:00
Mike Hearn
4b035535e2 nonetty: Print fewer stack traces on errors. Handle failure of initial connect call. 2013-12-10 13:03:15 -08:00
Mike Hearn
68a614a33b nonetty: Fix a couple of unit test bugs.
Remove references to netty that still appeared in comments/POM
2013-12-10 13:03:15 -08:00
Matt Corallo
534cec9791 Rewrite the network stack.
Remove Netty entirely, using the new Nio wrapper classes instead

* BitcoinSerializer now uses ByteBuffers directly instead of
  InputStreams.
* TCPNetworkConnection and NetworkConnection interface deleted,
  Peer now extends the abstract class PeerSocketHandler which
  handles deserialization and interfaces with the Nio wrapper
  classes.
* As a part of this, all version message handling has been moved
  to Peer, instead of doing it in TCPNetworkConnection.
* Peer.setMinProtocolVersion() now returns a boolean instead of a
  null/non-null future which holds the now-closing channel.
* Peer.sendMessage (now PeerSocketHandler.sendMessage()) now
  returns void.
* PeerGroup has some significant API changes:
  * removed constructors which take pipeline factories,
    makePipelineFactory, createClientBootstrap
  * Replaced with a setSocketTimeoutMillis method that sets a
    timeout between openConnection() and version/verack exchange.
    (Note that because Peer extends AbstractTimeoutHandler, it has
    useful timeout setters public already).
  * connectTo returns a Peer future, not a ChannelFuture
  * removed peerFromChannelFuture and peerFromChannel
* Peer and PeerGroup Tests have semi-significant rewrites:
  * They use actual TCP connections to localhost
  * The "remote" side is a InboundMessageQueuer, which queues
    inbound messages and allows for writing arbitrary messages.
  * It ignores certain special pings which come from pingAndWait,
    which is used to wait for message processing in the Peer.
  * Removed a broken test in PeerGroupTest that should be reenabled
    if we ever prefer a different version than our minimum version
    again.
  * Removed two duplicate tests in PeerTest (testRun_*Exception)
    which are tested for in badMessage as well.
  * Added a test for peer timeout and large message deserialization

Author:    Matt Corallo <git@bluematt.me>
2013-12-10 13:03:14 -08:00
Mike Hearn
81f8b230e3 Script.toAddress now can cast to P2SH addresses. 2013-12-10 11:45:29 -08:00
Mike Hearn
ea6f2a0fc3 Payment channels: invoke destroyConn on server side even when client requested it.
This allows servers to do something useful when the channel closes normally, like forward the money onwards.
2013-12-10 11:39:30 -08:00
Mike Hearn
54b1054d03 Add a couple of utility methods for working with P2SH scripts. 2013-12-10 11:38:45 -08:00
Mike Hearn
cebebcef69 Fix unit test failure caused by bad merge. Resolves issue 489. 2013-12-01 13:04:25 +01:00
Mike Hearn
963978c468 Add watched scripts to the wallet toString output.
Support watching scripts/addresses in WalletTool
2013-11-30 16:39:58 +01:00
Devrandom
da2e3e6c98 Support watching of scripts/addresses in wallet 2013-11-30 16:39:58 +01:00
Mike Hearn
2271e7198e Better error handling in Address. 2013-11-30 15:33:24 +01:00
Mike Hearn
ff54085129 Add Mike to the AUTHORS file. 2013-11-30 15:15:37 +01:00
Mike Hearn
98081f0568 Support sending to P2SH addresses. Thanks to Mike Belshe.
Resolves issue 461.
2013-11-30 15:14:52 +01:00
Mike Hearn
0044c8d269 Add Mike Rosseel to the AUTHORS list 2013-11-27 18:05:14 +01:00
Mike Rosseel
7083c8b669 Increase test coverage. 2013-11-27 17:55:43 +01:00
Mike Hearn
70cd2ffb96 Wallet: throw exceptions when completing a transaction fails.
If there's insufficient balance (typical error) then InsufficientMoneyException is thrown (checked).
If the SendRequest is bad in some way, like asking to create a spend that would violate the protocol rules, IllegalArgumentException is thrown (unchecked).

Also make VerificationException (and thus ProtocolException+ScriptException) unchecked.

Resolves issue 425.
2013-11-27 15:25:52 +01:00
Mike Hearn
f519590973 Add wallet-template file I forgot to check in 2013-11-26 23:17:52 +01:00
Ken Sedgwick
02ce88e6a3 Added buffer to MnemonicCode, it was modifying it's key argument (stretching in place). 2013-11-25 11:24:46 +01:00
Mike Hearn
ff678d116f ECKey: some more nullity checks/annotations. 2013-11-25 00:08:06 +01:00
Mike Hearn
a5d14ba45b HDW: Add some docs and a safety check to HDKeyDerivation. 2013-11-25 00:04:11 +01:00
Mike Hearn
8769773717 Add a default c'tor to MnemonicCode and simplify the unit tests. 2013-11-25 00:04:11 +01:00
Mike Hearn
95fc6d7245 WalletTool: recognize private key format properly.
Resolves issue 390.
2013-11-24 19:10:56 +01:00
Mike Hearn
3569dfe2d4 Payment channels: fix a simple thread-affinity bug revealed by a flaky unit test. It does not affect real apps.
Disable signature checking in ChannelTest to make it run faster, especially in the debugger, and bump timeouts so client/server don't timeout when debugging.
2013-11-21 13:29:01 +01:00
Mike Hearn
a9469758fd ECKey: allow unit tests to disable signature creation/verification. 2013-11-21 13:29:01 +01:00
Mike Hearn
857b34fcee Wallet: don't call killTx if it has no work to do, cleans up a misleading log line. 2013-11-21 13:29:01 +01:00
Mike Hearn
434f7d003a Wallet: always broadcast all pending txns, not only those that are unmarked. 2013-11-20 23:19:12 +01:00
Mike Hearn
3161c6c7ba TransactionBroadcast: add a unit test that verifies the rebroadcast functionality works. 2013-11-20 14:53:34 +01:00
Mike Hearn
62078f55c0 TransactionBroadcast: when there are an odd number of peers, bias towards more receivers rather than more announcers. 2013-11-20 14:53:17 +01:00
Mike Hearn
2bca8e858b Add Ken to the AUTHORS file. 2013-11-19 17:38:27 +01:00
Mike Hearn
44944a62d0 Payment channels: clear a static analysis thread safety warning. 2013-11-18 18:54:43 +01:00
Ken Sedgwick
8dcead3508 Added MnemonicCode, implements BIP-0039. 2013-11-18 11:28:55 +01:00