Commit Graph

16 Commits (1cdb233a0045b1f59a2e37fac8571f88cd5064e5)

Author SHA1 Message Date
Valentine Wallace 8311d70cbf lndclient/basic_client: add functional optional args to NewBasicClient. 5 years ago
Joost Jager f559120565
lndclient: add router sub server
This commit exposes router sub server functionality to loop. This is a
preparation for using reliable payments in loop out.
5 years ago
Joost Jager dc2baf582f
lndclient: use SubscribeSingleInvoiceRequest message 5 years ago
Valentine Wallace ee5f1852d6
lndclient: increase lightning gRPC block size to 50MB 5 years ago
Olaoluwa Osuntokun 56ab811f62
lndclient: modify basic_client.go to use the mac dir rather than path 5 years ago
Olaoluwa Osuntokun 52dbc03dda
lndclient: add NewBasicClient function 5 years ago
Olaoluwa Osuntokun 6d00809575
cmd/loopd+lndclient: based on the network, update the macaron path if unset 5 years ago
Olaoluwa Osuntokun 5f6ad1161b
lndclient: switch to using per-call macaroons instead of a conn level macaroon
In this commit, we modify all sub-servers as well as the main lnd gRPC
service to use a macaroon per call rather than a connection level
macaroon. The old approach would result in us using the same macaroon
for the entire connection, while this new approach allows us to use
multiple macaroons with a single connection.

We move to this new approach as it doesn't require users to delete their
admin macaroon before being able to use Loop. It also preps us for a
future where there is no admin macaroon, and we instead need to use a
set of macaroons to accomplish our tasks.
5 years ago
Olaoluwa Osuntokun 2c97258ce7
lndclient: NewLndServices now accepts a macaroon directory, not admin mac path
In this commit, we modify the `NewLndServices` method to accept the
directory where macaroons are stored, rather than the path for the admin
macaroon. This is a prep to moving towards a multi-macaroon system, as
the `macaroonPouch` will handle storing the various macaroons.
5 years ago
Olaoluwa Osuntokun ee6191f844 lndclient: add new macaroonPouch struct
In this commit, we add a new struct, the `macaroonPouch`. This struct
bundles all the macaroons we need for each sub-server. Along the way, we
also export the set of default* paths for lnd, and add a new set of
variables that store the default file names of each of the macaroons for
each sub-server.

The `WithMacaroonAuth` method on the `serializedMacaroon` type will
allow us to attach a macaroon for each call rather than attaching it at
the connection level. This slight change will allow us to use multiple
macaroons over a single RPC connection, rather than a single global
macaroon.
5 years ago
Joost Jager 3e960b8b54
multi: loop in swap 5 years ago
Olaoluwa Osuntokun c0d5238ab4
build: build against latest version of lnd 5 years ago
Joost Jager 6eb9861eb4
loopd: persistent configuration 5 years ago
Olaoluwa Osuntokun 908d82acdb
loop: extract code from client package into new loop primary package 5 years ago
Olaoluwa Osuntokun a770e3d7c1
loop: update all import paths to public repo 5 years ago
Joost Jager 21fcd8d94e
Lightning Loop initial version 5 years ago