core-lightning/lightningd/runes.h
Rusty Russell 785fe973a6 runes: ensure that uniqueid is a valid number.
It always is for runes we create, but in theory you can take our secret key
and make our own runes with your own tools.

(We correctly refuse runes without uniqueids if they're *not* ours
anyway: uniqueid is only used for our own runes).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-12 15:19:02 +09:30

22 lines
654 B
C

#ifndef LIGHTNING_LIGHTNINGD_RUNES_H
#define LIGHTNING_LIGHTNINGD_RUNES_H
#include "config.h"
struct rune;
/* Initialize ld->runes enough for rune_is_ours(): needs HSM. */
struct runes *runes_early_init(struct lightningd *ld);
/* Finish it: needs db. */
void runes_finish_init(struct runes *runes);
/* Is this rune one of ours? Needed for commando migration.
* Returns NULL if it is, or a string explaining (usually, "Not derived from master").
*/
const char *rune_is_ours(struct lightningd *ld, const struct rune *rune);
/* Get unique id number of rune. */
u64 rune_unique_id(const struct rune *rune);
#endif /* LIGHTNING_LIGHTNINGD_RUNES_H */