X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=secnet.h;h=79a3fc448e4a1a3a8ca81333746f0e12ee091e75;hb=HEAD;hp=3f5a197591c5cdfac37ba7ad710103586b5e04a9;hpb=aec6068446e28074dcebce30709ac52d6857cdc8;p=secnet.git diff --git a/secnet.h b/secnet.h index 3f5a197..79a3fc4 100644 --- a/secnet.h +++ b/secnet.h @@ -462,6 +462,11 @@ extern sigscheme_loadpub rsa1_loadpub; #define CL_BUFFER 13 #define CL_NETLINK 14 #define CL_PRIVCACHE 15 +/* When editing this list, edit closure_type_names[] too */ + +extern const char *const closure_type_names[]; + +const char *closure_type_name(uint32_t ty, char buf[]); struct buffer_if; @@ -506,7 +511,6 @@ struct random_if { /* SIGPUBKEY interface */ -typedef void sig_sethash_fn(void *st, struct hash_if *hash); typedef void sig_dispose_fn(void *st); typedef bool_t sig_unpick_fn(void *sst, struct buffer_if *msg, @@ -515,7 +519,6 @@ typedef bool_t sig_checksig_fn(void *st, uint8_t *data, int32_t datalen, const struct alg_msg_data *sig); struct sigpubkey_if { void *st; - sig_sethash_fn *sethash; /* must be called before use, if non-0 */ sig_unpick_fn *unpick; sig_checksig_fn *check; const struct hash_if *hash; @@ -530,7 +533,6 @@ typedef bool_t sig_makesig_fn(void *st, uint8_t *data, int32_t datalen, struct buffer_if *msg); struct sigprivkey_if { void *st; - sig_sethash_fn *sethash; /* must be called before use, if non-0 */ sig_makesig_fn *sign; const struct hash_if *hash; sig_dispose_fn *dispose; @@ -541,8 +543,7 @@ struct sigprivkey_if { typedef struct sigprivkey_if *privcache_lookup_fn(void *st, const struct sigkeyid *id, struct log_if*); - /* Return is valid only until you return from the current event! - * You do not need to call ->sethash. */ + /* Return is valid only until you return from the current event! */ struct privcache_if { void *st; @@ -658,16 +659,17 @@ static inline void cfgfile_log_init(struct cfgfile_log *cfl, } void log_early_init(void); +void log_early_setlevel(void); /* SITE interface */ /* Pretty much a placeholder; allows starting and stopping of processing, key expiry, etc. */ -typedef void site_control_fn(void *st, bool_t run); +typedef void site_startup_fn(void *st); typedef uint32_t site_status_fn(void *st); struct site_if { void *st; - site_control_fn *control; + site_startup_fn *startup; site_status_fn *status; }; @@ -846,6 +848,10 @@ extern NORETURN(cfgfatal_maybefile(FILE *maybe_f, struct cloc loc, const char *message, ...)) FORMAT(printf,4,5); +extern NORETURN(cfgfatal_cl_type(struct cloc loc, const char *facility, + closure_t *cl, uint32_t exp_type, + const char *name)); + extern void Message(uint32_t class, const char *message, ...) FORMAT(printf,2,3); extern void log_from_fd(int fd, cstring_t prefix, struct log_if *log);