X-Git-Url: https://git.distorted.org.uk/~mdw/secnet/blobdiff_plain/f208b9a9c2c54479a170bf94bfb4c71001f570a2..3d8d8f4e66600d1a2a80ade8e1df407a18b01ac9:/secnet.h diff --git a/secnet.h b/secnet.h index ecbb995..6ac64e3 100644 --- a/secnet.h +++ b/secnet.h @@ -387,15 +387,21 @@ struct site_if { typedef struct transform_inst_if *transform_createinstance_fn(void *st); typedef bool_t transform_setkey_fn(void *st, uint8_t *key, int32_t keylen); +typedef bool_t transform_valid_fn(void *st); /* 0: no key; 1: ok */ typedef void transform_delkey_fn(void *st); typedef void transform_destroyinstance_fn(void *st); -/* Returns 0 for 'all is well', any other value for a problem */ +/* Returns: + * 0: all is well + * 1: for any other problem + * 2: message decrypted but sequence number was out of range + */ typedef uint32_t transform_apply_fn(void *st, struct buffer_if *buf, const char **errmsg); struct transform_inst_if { void *st; transform_setkey_fn *setkey; + transform_valid_fn *valid; transform_delkey_fn *delkey; transform_apply_fn *forwards; transform_apply_fn *reverse; @@ -438,8 +444,6 @@ struct netlink_if { netlink_register_fn *reg; netlink_deliver_fn *deliver; netlink_link_quality_fn *set_quality; - netlink_output_config_fn *output_config; - netlink_check_config_fn *check_config; netlink_set_mtu_fn *set_mtu; };