core-lightning/daemon/invoice.h
Rusty Russell c6997f15c7 bitcoin/preimage: struct preimage.
We had a hack for 'struct rval' in protobuf_convert.h; make an
explicit header and put it in bitcoin/preimage.h.  It's not really
bitcoin-specific, but it's better than having bitcoin/script depend on
an external header.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2017-02-02 14:48:00 +10:30

34 lines
751 B
C

#ifndef LIGHTNING_DAEMON_INVOICE_H
#define LIGHTNING_DAEMON_INVOICE_H
#include "config.h"
#include <bitcoin/preimage.h>
struct invoices;
struct lightningd_state;
struct invoice {
struct list_node list;
const char *label;
u64 msatoshi;
struct preimage r;
struct sha256 rhash;
u64 paid_num;
};
#define INVOICE_MAX_LABEL_LEN 128
/* From database */
void invoice_add(struct invoices *i,
const struct preimage *r,
u64 msatoshi,
const char *label,
u64 complete);
void resolve_invoice(struct lightningd_state *dstate, struct invoice *invoice);
struct invoice *find_unpaid(struct invoices *i,
const struct sha256 *rhash);
struct invoices *invoices_init(struct lightningd_state *dstate);
#endif /* LIGHTNING_DAEMON_INVOICE_H */