X-Git-Url: https://git.distorted.org.uk/~mdw/tripe/blobdiff_plain/53a941d3f97a50964587c6e9533b1e43e74a57a8..7858dfa0ff7fa6d3e94e4a05dbce52dd2415adc6:/server/tripe.h diff --git a/server/tripe.h b/server/tripe.h index 44b4e045..9c9653e0 100644 --- a/server/tripe.h +++ b/server/tripe.h @@ -249,6 +249,7 @@ typedef struct keyexch { #define KXF_TIMER 1u /* Waiting for a timer to go off */ #define KXF_DEAD 2u /* The key-exchanger isn't up */ #define KXF_PUBKEY 4u /* Key exchanger has a public key */ +#define KXF_CORK 8u /* Don't send anything yet */ enum { KXS_DEAD, /* Uninitialized state (magical) */ @@ -310,6 +311,7 @@ typedef struct peerspec { unsigned long t_ka; /* Keep alive interval */ addr sa; /* Socket address to speak to */ size_t sasz; /* Socket address size */ + unsigned kxf; /* Key exchange flags to set */ } peerspec; typedef struct peer { @@ -576,6 +578,7 @@ extern void kx_newkeys(keyexch */*kx*/); * Arguments: @keyexch *kx@ = pointer to key exchange context * @peer *p@ = pointer to peer context * @keyset **ks@ = pointer to keyset list + * @unsigned f@ = various useful flags * * Returns: Zero if OK, nonzero if it failed. * @@ -584,7 +587,8 @@ extern void kx_newkeys(keyexch */*kx*/); * exchange. */ -extern int kx_init(keyexch */*kx*/, peer */*p*/, keyset **/*ks*/); +extern int kx_init(keyexch */*kx*/, peer */*p*/, + keyset **/*ks*/, unsigned /*f*/); /*----- Keysets and symmetric cryptography --------------------------------*/