Warnings removal pass: always include config.h first; add a few
[oweals/tinc.git] / src / protocol.h
index d77c045586c0ac2a61e7800c85cac5039a69dc78..82e3f9030d515168ac8a763fbfaa5e1405218030 100644 (file)
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: protocol.h,v 1.5.4.8 2000/09/26 14:06:11 guus Exp $
+    $Id: protocol.h,v 1.5.4.15 2000/11/03 22:35:12 zarq Exp $
 */
 
 #ifndef __TINC_PROTOCOL_H__
 #define __TINC_PROTOCOL_H__
 
 #include "net.h"
+#include "subnet.h"
 
 /* Protocol version. Different versions are incompatible,
    incompatible version have different protocols.
 
 #define PROT_CURRENT 8
 
-/* Length of the challenge. Since the challenge will also
-   contain the key for the symmetric cipher, it must be
-   quite large.
- */
-
-#define CHAL_LENGTH 2048
-
 /* Request numbers */
 
 enum {
   ALL = -1,                         /* Guardian for allow_request */
-  ID = 0, CHALLENGE, CHAL_REPLY, ACK,
+  ID = 0, CHALLENGE, CHAL_REPLY, METAKEY, ACK,
   STATUS, ERROR, TERMREQ,
   PING,  PONG,
   ADD_HOST, DEL_HOST,
@@ -55,7 +49,8 @@ extern int (*request_handlers[])(conn_list_t*);
 
 extern int send_id(conn_list_t*);
 extern int send_challenge(conn_list_t*);
-extern int send_chal_reply(conn_list_t*, char*);
+extern int send_chal_reply(conn_list_t*);
+extern int send_metakey(conn_list_t*);
 extern int send_ack(conn_list_t*);
 extern int send_status(conn_list_t*, int, char*);
 extern int send_error(conn_list_t*, int, char*);
@@ -64,8 +59,8 @@ extern int send_ping(conn_list_t*);
 extern int send_pong(conn_list_t*);
 extern int send_add_host(conn_list_t*, conn_list_t*);
 extern int send_del_host(conn_list_t*, conn_list_t*);
-extern int send_add_subnet(conn_list_t*, conn_list_t*, subnet_t*);
-extern int send_del_subnet(conn_list_t*, conn_list_t*, subnet_t*);
+extern int send_add_subnet(conn_list_t*, subnet_t*);
+extern int send_del_subnet(conn_list_t*, subnet_t*);
 extern int send_key_changed(conn_list_t*, conn_list_t*);
 extern int send_req_key(conn_list_t*, conn_list_t*);
 extern int send_ans_key(conn_list_t*, conn_list_t*, char*);
@@ -74,5 +69,7 @@ extern int send_ans_key(conn_list_t*, conn_list_t*, char*);
 
 extern int send_tcppacket(conn_list_t *, void *, int);
 extern int notify_others(conn_list_t *, conn_list_t *, int (*function)(conn_list_t*, conn_list_t*));
+extern int receive_request(conn_list_t *);
+extern int check_id(char *);
 
 #endif /* __TINC_PROTOCOL_H__ */