core-lightning/daemon/htlc_state.h
Rusty Russell 71b8a07c56 db.c: database API.
These tables could use a rework, as they largely reflect our internal
state.  But it's a start.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2016-08-18 14:25:13 +09:30

37 lines
881 B
C

#ifndef LIGHTNING_DAEMON_HTLC_STATE_H
#define LIGHTNING_DAEMON_HTLC_STATE_H
#include "config.h"
enum htlc_state {
/* When we add a new htlc, it goes in this order. */
SENT_ADD_HTLC,
SENT_ADD_COMMIT,
RCVD_ADD_REVOCATION,
RCVD_ADD_ACK_COMMIT,
SENT_ADD_ACK_REVOCATION,
/* When they remove an htlc, it goes from SENT_ADD_ACK_REVOCATION: */
RCVD_REMOVE_HTLC,
RCVD_REMOVE_COMMIT,
SENT_REMOVE_REVOCATION,
SENT_REMOVE_ACK_COMMIT,
RCVD_REMOVE_ACK_REVOCATION,
/* When they add a new htlc, it goes in this order. */
RCVD_ADD_HTLC,
RCVD_ADD_COMMIT,
SENT_ADD_REVOCATION,
SENT_ADD_ACK_COMMIT,
RCVD_ADD_ACK_REVOCATION,
/* When we remove an htlc, it goes from RCVD_ADD_ACK_REVOCATION: */
SENT_REMOVE_HTLC,
SENT_REMOVE_COMMIT,
RCVD_REMOVE_REVOCATION,
RCVD_REMOVE_ACK_COMMIT,
SENT_REMOVE_ACK_REVOCATION,
HTLC_STATE_INVALID
};
#endif /* LIGHTNING_DAEMON_HTLC_STATE_H */