Commit Graph

7358 Commits

Author SHA1 Message Date
Wilmer Paulino
dff7fba40a server: properly set stopping atomic var upon shutdown 2019-06-18 19:38:20 -07:00
Conner Fromknecht
d6d87e12fe Merge pull request #3213 from Roasbeef/bump-fee-nil-fix
lnrpc/walletrpc: reject nil outpoints as args
2019-06-17 19:57:21 -07:00
Olaoluwa Osuntokun
df53c32489 Merge pull request #3139 from Roasbeef/zero-fees
rpc: update updatechanpolicy to allow zero fees
2019-06-17 18:16:38 -07:00
Olaoluwa Osuntokun
94a20e30e1 lnrpc/walletrpc: reject nil outpoints as args
In this commit, we modify the parsing of user provided outpoints to
ensure that we catch a nil (empty) output early. Otherwise, passing a
set of incorrect arguments would cause `lnd` to crash.
2019-06-17 16:56:16 -07:00
Olaoluwa Osuntokun
df40a9c1e1 Merge pull request #3177 from halseth/autopilot-targetconf-conf
[autopilot] make confirmation target configurable
2019-06-17 16:05:00 -07:00
Johan T. Halseth
7df7449c47 Merge pull request #3187 from yaslama/UnknownAsDefaultAddressType
Use UnknownAddressType value as default in lnwallet.AddressType
2019-06-17 12:18:55 +02:00
Olaoluwa Osuntokun
c5357d383d lnd: bump version to 0.7 v0.7.0-beta-rc1 2019-06-14 13:54:27 -07:00
Olaoluwa Osuntokun
9e24d3e8a5 build: add additional sub-servers to release.sh 2019-06-14 13:53:54 -07:00
Olaoluwa Osuntokun
e65b8e3805 Merge pull request #3198 from halseth/foreach-non-modify
Avoid modifying bucket during ForEach loop, and Cursor traversal
2019-06-14 22:46:23 +02:00
Conner Fromknecht
4d260f7452 Merge pull request #3203 from Roasbeef/update-btcd
build: update btcd version to latest w/ rbf support
2019-06-14 12:55:38 -07:00
Olaoluwa Osuntokun
a53323205c Merge pull request #3133 from cfromknecht/wt-polish
watchtower: integrate altruist watchtower and watchtower client
2019-06-14 21:34:10 +02:00
Conner Fromknecht
47548e0eee Merge pull request #3141 from wpaulino/instant-wallet-startup
build: update btcwallet dependency to include initial sync improvements
2019-06-14 12:27:05 -07:00
Johan T. Halseth
f98f452528 channeldb: avoid modifying bucket during cursor traversal
This is not safe according to bbolt documentation.
2019-06-14 21:09:03 +02:00
Johan T. Halseth
ed8d635cf1 contractcourt/briefcase: avoid bucket modification in ForEach loop
Since the contents were deleted before the bucket was deleted, we just
delete the bucket immediately.
2019-06-14 21:09:02 +02:00
Johan T. Halseth
b7a37728c0 channeldb/migrations: avoid modifying bucket during ForEach loop
bbolt documenation state that this is not safe and leads to undefined
behavior.
2019-06-14 21:09:02 +02:00
Wilmer Paulino
7b7a87cf04 build: update btcwallet dependency to include initial sync improvements 2019-06-14 01:36:04 -07:00
Johan T. Halseth
f63c5d0170 Merge pull request #3182 from yaslama/addressTypeInitialization
Initialize addressType to UnknownAddressType
2019-06-14 10:32:01 +02:00
Olaoluwa Osuntokun
18ec2bdbf4 Merge pull request #3011 from orbitalturtle/auto-regenerate-cert
Auto regenerate TLS cert
2019-06-14 06:34:41 +02:00
Olaoluwa Osuntokun
866fa2b8f9 Merge pull request #3173 from cfromknecht/aggregate-router-logging
routing/router: log aggregate graph processing stats
2019-06-14 06:27:11 +02:00
Conner Fromknecht
059887bd7b watchtower/wtdb: apply sanity checks to session policy before accepting 2019-06-13 19:54:22 -07:00
Conner Fromknecht
1979f9a7c0 watchtower/multi: use sane sweep fee rate in unit tests 2019-06-13 19:54:22 -07:00
Conner Fromknecht
a543c781fe watchtower/wtpolicy: add basic validity constraints 2019-06-13 19:54:22 -07:00
Conner Fromknecht
37052f1561 watchtower/wtdb: only accept properly sized blobs
Modifies the bbolt and mock tower databases to only accept blobs that
are the expected size of the session's blob type. This prevents resource
exhaustion attacks where a client may provide disproportionately large
encrypted blob, even though all supported blob types are of fixed-size.
2019-06-13 19:54:22 -07:00
Conner Fromknecht
dce24d1d47 watchtower/wtdb+wtserver: pass properly sized blob in unit tests 2019-06-13 19:54:22 -07:00
Conner Fromknecht
29009fdc34 watchtower/standalone: disable reward towers 2019-06-13 19:54:22 -07:00
Conner Fromknecht
6504058c74 watchtower/wtserver: add DisableReward config option 2019-06-13 19:54:21 -07:00
Conner Fromknecht
a246d8216a watchtower/multi: define blob TypeAltruistCommit and TypeRewardCommit 2019-06-13 19:54:21 -07:00
Conner Fromknecht
2d47618055 watchtower/multi: define AltruistSessions feature bit as 0/1 2019-06-13 19:54:21 -07:00
Conner Fromknecht
86e1d111e5 watchtower/wtwire/message: bump wtwire messages outside reserved ranges
BOLT01 reserves the following ranges:
 - Setup & Control (types 0-31)
 - Channel (types 32-127)
 - Commitment (types 128-255)
 - Routing (types 256-511)

The wtwire messages now occupy 600-607.
2019-06-13 19:54:21 -07:00
Conner Fromknecht
7cabe2667f watchtower/wtclient/client: use existing session with same TxPolicy
This commit modifies the client's filtering when selecting from existing
sessions. The new logic compares the configured TxPolicy with the
TxPolicy of the candidate sessions, which has the effect of ignoring
operational parameters such as MaxUpdates. Prior, changing MaxUpdates
would cause the client to request a new session even if it had perfectly
good slots available in a policy with an equal TxPolicy.
2019-06-13 19:54:21 -07:00
Conner Fromknecht
98c2d329e5 watchtower/multi: embed TxPolicy in wtpolicy.Policy
This commit splits out the parameters that shape the justice transaction
into their own struct, which then embedded within the overarching
wtpolicy.Policy which may have additional parameters describing
operation of the session.

This is done as a preliminary step to support comparison of sessions
based on matching TxPolicy configurations. This prevents otherwise
identical Policies from being counted as different if operational
parameters like MaxUpdates differ, even if it has no material difference
to the justice transaction.
2019-06-13 19:54:20 -07:00
Conner Fromknecht
9b365567b6 watchtower/wtclient/client: avoid over requesting sessions
This commit fixes a bug that would cause us to request more sessions
that needed from the session negotiator. With the current stat ticker,
we'd ask the negotiator for a new session every 30s if session
session negotiation did not return before printing the stats. Now we'll
avoid requesting to sessions by jumping back into the select loop.
2019-06-13 19:54:20 -07:00
Conner Fromknecht
72e355f933 lnd_test: add altruist watchtower itest 2019-06-13 19:54:20 -07:00
Conner Fromknecht
8ab56b2a5c rpcserver: add missing channelbalance log 2019-06-13 19:54:20 -07:00
Conner Fromknecht
985ac7f5b7 lnd: integrate companion watchtower 2019-06-13 19:54:20 -07:00
Conner Fromknecht
c1f24feb8b config: expose watchtower conf 2019-06-13 19:54:19 -07:00
Conner Fromknecht
bd5b8700d8 lncfg: add Watchtower config 2019-06-13 19:54:19 -07:00
Conner Fromknecht
c823878154 watchtower/conf: abstract address normalizer to prevent import cycle 2019-06-13 19:54:19 -07:00
Conner Fromknecht
db65d7ead4 watchtower/conf: remove experimental conditional compilation 2019-06-13 19:54:19 -07:00
Conner Fromknecht
7c0a03c7c8 server+utxonursery: generate pkscript closures
This commit moves the newSweepPkScript function
previously in the nursery to be a helper function
within the server. Additionally, the function now
returns a closure that satisfies the configuration
interfaces of several other subsystems.

As a result, the configuration sites contain much
less boilerplate, as it's now encapsulated in
the newSweepPkScriptGen helper.
2019-06-13 19:54:19 -07:00
Conner Fromknecht
efcdefee39 peer: pass watchtower client's to active links 2019-06-13 19:54:19 -07:00
Conner Fromknecht
d2f3d5ef6c server: add watchtower client 2019-06-13 19:54:18 -07:00
Conner Fromknecht
fb8214b808 config: expose+validate private tower addr 2019-06-13 19:54:18 -07:00
Conner Fromknecht
5266f597fd log: add watchtower client logs 2019-06-13 19:54:18 -07:00
Conner Fromknecht
88b5780978 lncfg/wtclient: adds watchtower client CLI configuration 2019-06-13 19:54:18 -07:00
Conner Fromknecht
2bffdf3a1d lncfg/address: expose TCPResolver 2019-06-13 19:54:18 -07:00
Conner Fromknecht
851c070595 htlcswitch/link: fix Min/MaxFeeUpdateTimeout godocs 2019-06-13 19:54:18 -07:00
Conner Fromknecht
c41017610b htlcswitch/link: backup revoked states to watchtower 2019-06-13 19:54:18 -07:00
Conner Fromknecht
7566b26e03 htlcswitch/interface: add TowerClient iface 2019-06-13 19:54:17 -07:00
Conner Fromknecht
ab4a4b77f5 watchtower/wtclient/session_queue: unify logging 2019-06-13 19:54:17 -07:00