Versions in this module Expand all Collapse all v1 v1.1.3 Sep 20, 2021 v1.1.2 Sep 20, 2021 Changes in this version + const MainnetServer + const Subsystem + const TestnetServer + var Commit string + var DefaultBaseDir = btcutil.AppDataDir("pool", false) + var DefaultLndDir = btcutil.AppDataDir("lnd", false) + var DefaultLndMacaroonPath = filepath.Join(DefaultLndDir, "data", "chain", "bitcoin", DefaultNetwork, defaultLndMacaroon) + var DefaultLogFilename = "poold.log" + var DefaultMacaroonFilename = "pool.macaroon" + var DefaultMacaroonPath = filepath.Join(DefaultBaseDir, DefaultNetwork, DefaultMacaroonFilename) + var DefaultNetwork = "mainnet" + var DefaultTLSCertFilename = "tls.cert" + var DefaultTLSCertPath = filepath.Join(DefaultBaseDir, DefaultNetwork, DefaultTLSCertFilename) + var DefaultTLSKeyFilename = "tls.key" + var DefaultTLSKeyPath = filepath.Join(DefaultBaseDir, DefaultNetwork, DefaultTLSKeyFilename) + var RequiredPermissions = map[string][]bakery.Op + func ContextWithInitiator(ctx context.Context, initiator string) context.Context + func DBOrderStateToRPCState(state order.State) (auctioneerrpc.OrderState, error) + func InitiatorFromContext(ctx context.Context) string + func MarshallAccount(a *account.Account) (*poolrpc.Account, error) + func Run(cfg *Config) error + func SetAgentName(newAgentName string) + func SetupLoggers(root *build.RotatingLogWriter, intercept signal.Interceptor) + func UserAgent(initiator string) string + func Validate(cfg *Config) error + func Version() string + type AutoAcceptorConfig struct + Driver SidecarDriver + MailBox MailBox + Provider bool + ProviderAccount *account.Account + ProviderBid *order.Bid + StartingPkt *SidecarPacket + type ChannelAcceptor struct + func NewChannelAcceptor(lightning lndclient.LightningClient) *ChannelAcceptor + func (s *ChannelAcceptor) ShimRegistered(bid *order.Bid, pid [32]byte) + func (s *ChannelAcceptor) ShimRemoved(bid *order.Bid) + func (s *ChannelAcceptor) Start(errChan chan error) error + func (s *ChannelAcceptor) Stop() + type Config struct + AuctionServer string + AuctioneerDialOpts []grpc.DialOption + BaseDir string + DebugLevel string + FakeAuth bool + Insecure bool + Lnd *LndConfig + LogDir string + LsatMaxRoutingFee btcutil.Amount + MacaroonPath string + MaxBackoff time.Duration + MaxLogFileSize int + MaxLogFiles int + MinBackoff time.Duration + Network string + NewNodesOnly bool + Profile string + Proxy string + RESTListen string + RPCListen string + RPCListener net.Listener + ShowVersion bool + TLSAutoRefresh bool + TLSCertPath string + TLSDisableAutofill bool + TLSExtraDomains []string + TLSExtraIPs []string + TLSKeyPath string + TLSPathAuctSrv string + TxLabelPrefix string + func DefaultConfig() Config + type Interceptor interface + StreamInterceptor func(context.Context, *grpc.StreamDesc, *grpc.ClientConn, string, grpc.Streamer, ...) (grpc.ClientStream, error) + UnaryInterceptor func(context.Context, string, interface{}, interface{}, *grpc.ClientConn, ...) error + type LndConfig struct + Host string + MacaroonDir string + MacaroonPath string + TLSPath string + type MailBox interface + DelAcctMailbox func(streamID [64]byte, pubKey *keychain.KeyDescriptor) error + DelSidecarMailbox func(streamID [64]byte, ticket *sidecar.Ticket) error + InitAcctMailbox func(streamID [64]byte, pubKey *keychain.KeyDescriptor) error + InitSidecarMailbox func(streamID [64]byte, ticket *sidecar.Ticket) error + RecvSidecarPkt func(ctx context.Context, pkt *sidecar.Ticket, provider bool) (*sidecar.Ticket, error) + SendSidecarPkt func(ctx context.Context, pkt *sidecar.Ticket, provider bool) error + type Server struct + AuctioneerClient *auctioneer.Client + GetIdentity func() (*lsat.TokenID, error) + func NewServer(cfg *Config) *Server + func (s *Server) Start() error + func (s *Server) StartAsSubserver(lndClient lnrpc.LightningClient, lndGrpc *lndclient.GrpcLndServices) error + func (s *Server) Stop() error + func (s *Server) ValidateMacaroon(ctx context.Context, requiredPermissions []bakery.Op, fullMethod string) error + func (s Server) AuctionFee(ctx context.Context, _ *poolrpc.AuctionFeeRequest) (*poolrpc.AuctionFeeResponse, error) + func (s Server) BatchSnapshot(ctx context.Context, req *auctioneerrpc.BatchSnapshotRequest) (*auctioneerrpc.BatchSnapshotResponse, error) + func (s Server) BatchSnapshots(ctx context.Context, req *auctioneerrpc.BatchSnapshotsRequest) (*auctioneerrpc.BatchSnapshotsResponse, error) + func (s Server) BumpAccountFee(ctx context.Context, req *poolrpc.BumpAccountFeeRequest) (*poolrpc.BumpAccountFeeResponse, error) + func (s Server) CancelOrder(ctx context.Context, req *poolrpc.CancelOrderRequest) (*poolrpc.CancelOrderResponse, error) + func (s Server) CancelSidecar(ctx context.Context, req *poolrpc.CancelSidecarRequest) (*poolrpc.CancelSidecarResponse, error) + func (s Server) CloseAccount(ctx context.Context, req *poolrpc.CloseAccountRequest) (*poolrpc.CloseAccountResponse, error) + func (s Server) DecodeSidecarTicket(ctx context.Context, req *poolrpc.SidecarTicket) (*poolrpc.DecodedSidecarTicket, error) + func (s Server) DepositAccount(ctx context.Context, req *poolrpc.DepositAccountRequest) (*poolrpc.DepositAccountResponse, error) + func (s Server) ExpectSidecarChannel(ctx context.Context, req *poolrpc.ExpectSidecarChannelRequest) (*poolrpc.ExpectSidecarChannelResponse, error) + func (s Server) GetInfo(ctx context.Context, _ *poolrpc.GetInfoRequest) (*poolrpc.GetInfoResponse, error) + func (s Server) GetLsatTokens(_ context.Context, _ *poolrpc.TokensRequest) (*poolrpc.TokensResponse, error) + func (s Server) InitAccount(ctx context.Context, req *poolrpc.InitAccountRequest) (*poolrpc.Account, error) + func (s Server) LeaseDurations(ctx context.Context, _ *poolrpc.LeaseDurationRequest) (*poolrpc.LeaseDurationResponse, error) + func (s Server) Leases(ctx context.Context, req *poolrpc.LeasesRequest) (*poolrpc.LeasesResponse, error) + func (s Server) ListAccounts(ctx context.Context, req *poolrpc.ListAccountsRequest) (*poolrpc.ListAccountsResponse, error) + func (s Server) ListOrders(ctx context.Context, req *poolrpc.ListOrdersRequest) (*poolrpc.ListOrdersResponse, error) + func (s Server) ListSidecars(_ context.Context, _ *poolrpc.ListSidecarsRequest) (*poolrpc.ListSidecarsResponse, error) + func (s Server) NextBatchInfo(ctx context.Context, _ *poolrpc.NextBatchInfoRequest) (*poolrpc.NextBatchInfoResponse, error) + func (s Server) NodeRatings(ctx context.Context, req *poolrpc.NodeRatingRequest) (*poolrpc.NodeRatingResponse, error) + func (s Server) OfferSidecar(ctx context.Context, req *poolrpc.OfferSidecarRequest) (*poolrpc.SidecarTicket, error) + func (s Server) QuoteAccount(ctx context.Context, req *poolrpc.QuoteAccountRequest) (*poolrpc.QuoteAccountResponse, error) + func (s Server) QuoteOrder(ctx context.Context, req *poolrpc.QuoteOrderRequest) (*poolrpc.QuoteOrderResponse, error) + func (s Server) RecoverAccounts(ctx context.Context, _ *poolrpc.RecoverAccountsRequest) (*poolrpc.RecoverAccountsResponse, error) + func (s Server) RegisterSidecar(ctx context.Context, req *poolrpc.RegisterSidecarRequest) (*poolrpc.SidecarTicket, error) + func (s Server) RenewAccount(ctx context.Context, req *poolrpc.RenewAccountRequest) (*poolrpc.RenewAccountResponse, error) + func (s Server) StopDaemon(_ context.Context, _ *poolrpc.StopDaemonRequest) (*poolrpc.StopDaemonResponse, error) + func (s Server) SubmitOrder(ctx context.Context, req *poolrpc.SubmitOrderRequest) (*poolrpc.SubmitOrderResponse, error) + func (s Server) WithdrawAccount(ctx context.Context, req *poolrpc.WithdrawAccountRequest) (*poolrpc.WithdrawAccountResponse, error) + type SidecarAcceptor struct + func NewSidecarAcceptor(cfg *SidecarAcceptorConfig) *SidecarAcceptor + func (a *SidecarAcceptor) AutoAcceptSidecar(ticket *sidecar.Ticket) error + func (a *SidecarAcceptor) CoordinateSidecar(ticket *sidecar.Ticket, bid *order.Bid, acct *account.Account) error + func (a *SidecarAcceptor) DelAcctMailbox(streamID [64]byte, pubKey *keychain.KeyDescriptor) error + func (a *SidecarAcceptor) DelSidecarMailbox(streamID [64]byte, ticket *sidecar.Ticket) error + func (a *SidecarAcceptor) ExpectChannel(ctx context.Context, t *sidecar.Ticket) error + func (a *SidecarAcceptor) FinalizeTicket(t *sidecar.Ticket) + func (a *SidecarAcceptor) InitAcctMailbox(streamID [64]byte, traderKey *keychain.KeyDescriptor) error + func (a *SidecarAcceptor) InitSidecarMailbox(streamID [64]byte, tkt *sidecar.Ticket) error + func (a *SidecarAcceptor) RecvSidecarPkt(pCtx context.Context, ticket *sidecar.Ticket, provider bool) (*sidecar.Ticket, error) + func (a *SidecarAcceptor) RegisterSidecar(ctx context.Context, ticket sidecar.Ticket) (*sidecar.Ticket, error) + func (a *SidecarAcceptor) SendSidecarPkt(ctx context.Context, pkt *sidecar.Ticket, provider bool) error + func (a *SidecarAcceptor) Start(errChan chan error) error + func (a *SidecarAcceptor) Stop() error + func (a *SidecarAcceptor) SubmitSidecarOrder(ticket *sidecar.Ticket, bid *order.Bid, acct *account.Account) (*sidecar.Ticket, error) + func (a *SidecarAcceptor) UpdateSidecar(tkt *sidecar.Ticket) error + func (a *SidecarAcceptor) ValidateOrderedTicket(tkt *sidecar.Ticket) error + type SidecarAcceptorConfig struct + Acceptor *ChannelAcceptor + AcctDB account.Store + BaseClient funding.BaseClient + ClientCfg auctioneer.Config + FetchSidecarBid func(*sidecar.Ticket) (*order.Bid, error) + FundingManager *funding.Manager + NodePubKey *btcec.PublicKey + PrepareOrder orderPreparer + SidecarDB sidecar.Store + Signer lndclient.SignerClient + Wallet lndclient.WalletKitClient + type SidecarDriver interface + ExpectChannel func(ctx context.Context, tkt *sidecar.Ticket) error + SubmitSidecarOrder func(*sidecar.Ticket, *order.Bid, *account.Account) (*sidecar.Ticket, error) + UpdateSidecar func(tkt *sidecar.Ticket) error + ValidateOrderedTicket func(tkt *sidecar.Ticket) error + type SidecarNegotiator struct + func NewSidecarNegotiator(cfg AutoAcceptorConfig) *SidecarNegotiator + func (a *SidecarNegotiator) CurrentState() sidecar.State + func (a *SidecarNegotiator) Start() error + func (a *SidecarNegotiator) Stop() + func (a *SidecarNegotiator) TicketExecuted() + type SidecarPacket struct + CurrentState sidecar.State + ProviderTicket *sidecar.Ticket + ReceiverTicket *sidecar.Ticket