core-lightning/common/wallet.h
Christian Decker 2bfe9ffdf8 wallet: Add transaction annotation type
This will indicate whether we are annotating the transaction itself (legacy),
an input or an output.
2019-10-07 20:03:24 -05:00

36 lines
1.0 KiB
C

#ifndef LIGHTNING_COMMON_WALLET_H
#define LIGHTNING_COMMON_WALLET_H
#include "config.h"
#include <wire/wire.h>
/* Types of transactions we store in the `transactions` table. Mainly used for
* display purposes later. */
enum wallet_tx_type {
TX_UNKNOWN = 0,
TX_THEIRS = 1, /* This only affects their funds in the channel */
TX_WALLET_DEPOSIT = 2,
TX_WALLET_WITHDRAWAL = 4,
TX_CHANNEL_FUNDING = 8,
TX_CHANNEL_CLOSE = 16,
TX_CHANNEL_UNILATERAL = 32,
TX_CHANNEL_SWEEP = 64,
TX_CHANNEL_HTLC_SUCCESS = 128,
TX_CHANNEL_HTLC_TIMEOUT = 256,
TX_CHANNEL_PENALTY = 512,
TX_CHANNEL_CHEAT = 1024,
};
/* What part of a transaction are we annotating? The entire transaction, an
* input or an output. */
enum wallet_tx_annotation_type {
TX_ANNOTATION = 0,
OUTPUT_ANNOTATION = 1,
INPUT_ANNOTATION = 2,
};
enum wallet_tx_type fromwire_wallet_tx_type(const u8 **cursor, size_t *max);
void towire_wallet_tx_type(u8 **pptr, const enum wallet_tx_type type);
#endif /* LIGHTNING_COMMON_WALLET_H */