-enum {
- ALL = -1, /* Guardian for allow_request */
- ID = 0, CHALLENGE, CHAL_REPLY, METAKEY, ACK,
- STATUS, ERROR, TERMREQ,
- PING, PONG,
- ADD_HOST, DEL_HOST,
- ADD_SUBNET, DEL_SUBNET,
- KEY_CHANGED, REQ_KEY, ANS_KEY,
- LAST /* Guardian for the highest request number */
-};
-
-extern int (*request_handlers[])(connection_t*);
-
-extern int send_id(connection_t*);
-extern int send_challenge(connection_t*);
-extern int send_chal_reply(connection_t*);
-extern int send_metakey(connection_t*);
-extern int send_ack(connection_t*);
-extern int send_status(connection_t*, int, char*);
-extern int send_error(connection_t*, int, char*);
-extern int send_termreq(connection_t*);
-extern int send_ping(connection_t*);
-extern int send_pong(connection_t*);
-extern int send_add_host(connection_t*, connection_t*);
-extern int send_del_host(connection_t*, connection_t*);
-extern int send_add_subnet(connection_t*, subnet_t*);
-extern int send_del_subnet(connection_t*, subnet_t*);
-extern int send_key_changed(connection_t*, connection_t*);
-extern int send_req_key(connection_t*, connection_t*);
-extern int send_ans_key(connection_t*, connection_t*, char*);
-
-/* Old functions */
-
-extern int send_tcppacket(connection_t *, void *, int);
-extern int notify_others(connection_t *, connection_t *, int (*function)(connection_t*, connection_t*));
-extern int receive_request(connection_t *);
-extern int check_id(char *);
+extern bool id_h(struct connection_t *, const char *);
+extern bool metakey_h(struct connection_t *, const char *);
+extern bool challenge_h(struct connection_t *, const char *);
+extern bool chal_reply_h(struct connection_t *, const char *);
+extern bool ack_h(struct connection_t *, const char *);
+extern bool status_h(struct connection_t *, const char *);
+extern bool error_h(struct connection_t *, const char *);
+extern bool termreq_h(struct connection_t *, const char *);
+extern bool ping_h(struct connection_t *, const char *);
+extern bool pong_h(struct connection_t *, const char *);
+extern bool add_subnet_h(struct connection_t *, const char *);
+extern bool del_subnet_h(struct connection_t *, const char *);
+extern bool add_edge_h(struct connection_t *, const char *);
+extern bool del_edge_h(struct connection_t *, const char *);
+extern bool key_changed_h(struct connection_t *, const char *);
+extern bool req_key_h(struct connection_t *, const char *);
+extern bool ans_key_h(struct connection_t *, const char *);
+extern bool tcppacket_h(struct connection_t *, const char *);
+extern bool control_h(struct connection_t *, const char *);