Commit Graph

22 Commits

Author SHA1 Message Date
Olaoluwa Osuntokun
6eaf4908fb
uspv: update to new upstream btcd api to fix compile errors 2016-05-22 22:04:25 -07:00
Olaoluwa Osuntokun
fcff17c336
multi: change all imports to roasbeef's forks
This commit will allow the general public to build lnd without jumping
through hoops setting up their local git branches nicely with all of
our forks.
2016-05-15 17:22:37 +03:00
mkl
e07086a523 Integrate basic configuration functionality 2016-03-22 13:28:56 -07:00
Tadge Dryja
f9a740d392 more stress testing stuff 2016-02-24 17:27:29 -08:00
Tadge Dryja
df04a73e1a simplify boltdb ingest 2016-02-24 02:37:52 -08:00
Tadge Dryja
dd1f2c00fe add fanout. fix boltdb weirdness.
again with keys / values within the bolttx acting weird.
it wasn't deleting utxos that had been spent by the ingested tx.
it'd do the first 30 then stop.  Deferred deletion and copied the
serialized utxo.  Not sure which of those fixed it.  Maybe both.
2016-02-22 16:32:58 -08:00
Tadge Dryja
bc4cf5ba80 add per tx fee estimation
seems to work fine.  Can add monitoring of avg fees later
2016-02-22 14:35:01 -08:00
Tadge Dryja
2b808724fb spend from wpkh works 2016-02-22 01:41:40 -08:00
Tadge Dryja
d8e62f6898 back to one adr[] slice
all adrs can be converted on the fly and displayed both ways.
in the actual UI this shouldn't happen though.

Also utxos are sorted and signed properly.  utxo selection
is still pretty low tech.
2016-02-19 01:24:23 -08:00
Tadge Dryja
fbd17846d4 split adrs up into two slices?
here is code to keep track of two sets of addresses -- the
regular ones and the witness ones.  But maybe those should be
merged becuase it's easy for other wallets to switch between them
and send to the same 20 byte pubkey hash but wintessified.
So maybe I'll change this stuff...
2016-02-19 00:32:22 -08:00
Tadge Dryja
a175e098fa remove waitgroups from ingest block
It doesn't work; can ingest out of order within a block,
so if a block has gain then loss, you might read it as loss
then gains, missing the loss.
Also, tryna implement p2wpkh
2016-02-17 23:16:17 -08:00
Tadge Dryja
0d3639435f can sync with segnet in hard mode
lots of changes but they seem to work
2016-02-15 22:13:17 -08:00
Tadge Dryja
a955a428a7 fix nil witness crash; sync's now on segnet 2016-02-14 12:50:20 -08:00
Tadge Dryja
ee4dd8aaa0 trying to get witness coinbases to validate
(they don't)
2016-02-13 14:03:11 -08:00
Tadge Dryja
7fdcf9bfbc start trying to connect to segnet
doesn't work or anything yet
2016-02-10 13:22:15 -08:00
Tadge Dryja
e2dd892a4f add waitgroups to ingestBlock
seems to go a little faster but not much.
making ingest tx take a slice of txs would be faster probably.
but it seems network i/o is the limiting factor so maybe it's OK
2016-02-07 19:52:45 -08:00
Tadge Dryja
4535b965cd implement hard mode
seems to work OK.  Could be sped up by local filters instead of
ingesting every tx from the block but I can do that later if
performance (mostly disk i/o) is an issue

once multiple connections are implemented, hard mode should forward
txs to blend in.
2016-02-06 22:48:54 -08:00
Tadge Dryja
8518be13f7 add hard mode test methods
really simple to check block merkle root
next can modify "ingestMerkleBlock" to ingest either type of block.
2016-02-06 19:15:35 -08:00
Tadge Dryja
63b5926e01 add getalltxs, dup checks
Start of double spend detection for mempool and reorgs
2016-02-05 01:59:40 -08:00
Tadge Dryja
25d90f5345 reorganize lots of files, add rebroadcast
move methods to new files to keep things a bit organized.
add rebroadcast of unconfirmed txs after sync
mutex on OKtxid map
deal with doublespends next
2016-02-05 01:16:45 -08:00
Tadge Dryja
9eccb0638a I think this fixes all sync problems
add a bool to the HashAndHeight struct;
can indicate "final".  When the block market final comes in,
we don't enter wait state, but instead ask for headers.
when you don't get any headers, you wont need any blocks, and that
will assert the wait state.
2016-02-03 20:26:12 -08:00
Tadge Dryja
624e776987 add shell spv testing mode
To try uspv, do ./lnd -spv
The remote node is hardcoded in shell.go.  If you aren't
running a full node on localhost, specify where to connect to.
Nearby nodes will be much faster but random testnet nodes on the
internet should also work.
2016-02-02 23:37:29 -08:00