#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) */
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 {
* 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.
*
* 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 --------------------------------*/