Neil Booth
f11e46e479
Remove unused import
2015-08-31 18:14:07 +09:00
Neil Booth
be7cb011a3
Simply verifier now network is in-process
2015-08-31 18:12:02 +09:00
Neil Booth
2d05e7d891
Merge the network and network_proxy
2015-08-31 12:00:38 +09:00
Neil Booth
351272f0b6
Small optimization for large wallets
...
Previously the verifier job would scan all transactions in
unverified_tx each time it ran.
Nothing was ever removed from this map; it would essentially
be the full set of transactions.
As the job runs about 10 times a second, for a wallet with 500 txs
this would be 5,000 useless loops a second.
This patch makes unverified_tx be simply the set of confirmed
transactions that haven't yet been verified. txs are added once
confirmed, and removed once verified. Hence it will almost always be
empty.
2015-08-28 12:39:19 +09:00
Neil Booth
9455815ad0
Merge requested_merkle and merkle_roots.
2015-08-26 17:12:40 +09:00
Neil Booth
b64c42b1eb
Make the verifier a thread job instead of a thread
...
The verifier, like the synchronizer, now runs as part of the
network proxy thread.
2015-08-26 17:07:36 +09:00
Neil Booth
a056f9804b
Notify when a chunk of headers is validated
...
And a couple of cosmetic changes.
This should fix #1379 .
2015-08-25 14:27:53 +09:00
Roman Zeyde
cb4d3a78b4
verifier: fix typo
2015-06-13 16:58:08 +03:00
Neil Booth
37c3cce329
Remove wallet.get_transactions()
...
Because references are returned, it's not threadsafe as ThomasV
pointed out.
2015-05-08 09:31:45 +09:00
Neil Booth
a47881d72b
Move the verified and unverified txs to the wallet.
2015-05-07 23:54:39 +09:00
Neil Booth
79de458101
Preparation for moving the set of verified and unverified txs to the wallet.
...
The verifier will retain responsibility for verification, but will no longer
hold the transaction sets itself.
Change requires_fee to take a wallet.
Add new function add_unverified_tx()
Move get_confirmations() to the wallet from the verifier.
2015-05-07 09:21:08 +09:00
ThomasV
b2a13dbd9c
remove unused imports
2015-03-14 09:37:56 +01:00
ThomasV
5b8588ee90
rename spv class, use own print_error
2015-03-14 09:20:27 +01:00
ThomasV
a4cb70649d
fix synchronizer hanging when not connected.
2015-03-14 08:43:43 +01:00
ThomasV
72688a5cfa
clean implementation of daemon threads
2015-03-13 23:04:29 +01:00
ThomasV
e389745491
remove appdata_dir and data_dir
2015-02-18 18:48:32 +01:00
ThomasV
247f4944a6
do not store merkle root before verification succeeded. keep it in requested_merkle for the session
2014-08-15 23:30:55 +02:00
ThomasV
4f56cda0c3
do not stop thread if a tx is not verified
2014-08-15 08:35:00 +02:00
ThomasV
47b71eebfb
shorter timeout: verifier too
2014-07-29 12:26:16 +02:00
ThomasV
fb0574c5a0
fix callbacks
2014-07-28 07:53:02 +02:00
ThomasV
37127e563b
fix #750
2014-07-05 03:57:05 +02:00
ThomasV
b4bed1ccaa
remove blockchain object from verifier
2014-03-10 20:53:05 +01:00
ThomasV
2321cb9bb3
print less debug messages
2013-11-11 16:23:17 +01:00
ThomasV
1f13b2f4f3
network.send method
2013-11-11 16:18:40 +01:00
thomasv
b75f8d795a
new command: getrawtransaction
2013-09-15 11:19:48 +02:00
ThomasV
907dca6eb9
simplify interface: use callbacks
2013-09-12 08:41:27 +02:00
thomasv
74735bd64e
minor fixes
2013-09-10 16:13:30 +02:00
thomasv
047e4b3478
move callbacks to the network class
2013-09-09 13:33:25 +02:00
thomasv
2a6e8927dd
select the longest blockchain from several servers
2013-09-02 17:49:12 +02:00
ThomasV
e9b103b283
fix regressions in tx verifier
2013-09-02 08:50:39 +02:00
ThomasV
d47892b690
separate blockchain verifier from transaction verifier
2013-09-01 18:16:15 +02:00
ecdsa
c95c80163d
distinction between unconfirmed and unverified transactions
2013-04-27 17:48:27 +02:00
ecdsa
5cc05b0685
fix: verified tx contains pos
2013-04-01 12:12:16 +02:00
ecdsa
cac030e2ee
fix transaction order in history
2013-03-23 18:10:09 +01:00
thomasv
3b80ef7c60
rely only on the verifier to get the height of transactions
2013-03-14 12:22:06 +01:00
thomasv
bdb515dabd
print error received by verifier, and continue
2013-03-14 10:49:00 +01:00
thomasv
94e5263486
updating url for headers file
2013-02-18 15:56:02 +01:00
ThomasV
4dcac08ccf
trigger synchronize when block height is received
2013-01-30 07:38:13 +01:00
Eagle[TM]
12cc65abbd
add sockettimeout to header download by HTTP
2012-12-19 09:41:23 +01:00
thomasv
72b4ac97d0
use portable flag on android instead of explicit path for headers file. use urllib.retrieve()
2012-12-17 17:51:52 +01:00
thomasv
e2a2596479
fix: case where wdir path is empty (portable wallet)
2012-12-17 15:24:06 +01:00
thomasv
ba39f8bec0
do not bundle blockchain headers with packages
2012-12-17 11:18:49 +01:00
thomasv
16a81271e4
store timestamps in verifier
2012-12-05 19:12:28 +01:00
thomasv
108dfb6140
revert to daemon threads because some clients do not seem to close their sockets cleanly
2012-12-05 10:24:30 +01:00
ThomasV
9afbf21197
no daemon
2012-11-24 20:35:09 +01:00
ThomasV
0ad7f72d3d
nodaemon
2012-11-24 20:35:09 +01:00
thomasv
8ec2b16e21
use None as timestamp for pending transactions
2012-11-16 10:18:35 +01:00
thomasv
8fc042ee22
more fixes for the 0.6 servers
2012-11-15 10:34:56 +01:00
ThomasV
cc2ef02c2b
gui fixes
2012-11-15 09:14:24 +01:00
ThomasV
8ec6a60daf
compatibility with 0.6 protocol
2012-11-14 15:33:44 +01:00