]> git.meshlink.io Git - meshlink/blobdiff - src/connection.h
Remove support for the legacy protocol.
[meshlink] / src / connection.h
index 10f4a76a924ee9dd8064e477fbf92d0f3703fa43..e1b270b3f0225ff71c1573588920b034fae67f8f 100644 (file)
@@ -1,7 +1,6 @@
 /*
     connection.h -- header for connection.c
-    Copyright (C) 2000-2012 Guus Sliepen <guus@tinc-vpn.org>,
-                  2000-2005 Ivo Timmermans
+    Copyright (C) 2000-2013 Guus Sliepen <guus@meshlink.io>
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -24,7 +23,6 @@
 #include "buffer.h"
 #include "cipher.h"
 #include "digest.h"
-#include "rsa.h"
 #include "list.h"
 #include "sptps.h"
 
@@ -41,13 +39,15 @@ typedef struct connection_status_t {
                unsigned int unused_termreq:1;          /* the termination of this connection was requested */
                unsigned int remove_unused:1;           /* Set to 1 if you want this connection removed */
                unsigned int timeout_unused:1;          /* 1 if gotten timeout */
-               unsigned int encryptout:1;              /* 1 if we can encrypt outgoing traffic */
-               unsigned int decryptin:1;               /* 1 if we have to decrypt incoming traffic */
+               unsigned int unused_encryptout:1;       /* 1 if we can encrypt outgoing traffic */
+               unsigned int unused_decryptin:1;        /* 1 if we have to decrypt incoming traffic */
                unsigned int mst:1;                     /* 1 if this connection is part of a minimum spanning tree */
                unsigned int control:1;                 /* 1 if this is a control connection */
                unsigned int pcap:1;                    /* 1 if this is a control connection requesting packet capture */
                unsigned int log:1;                     /* 1 if this is a control connection requesting log dump */
-               unsigned int unused:20;
+               unsigned int invitation:1;              /* 1 if this is an invitation */
+               unsigned int invitation_used:1;         /* 1 if the invitation has been consumed */
+               unsigned int unused:19;
 } connection_status_t;
 
 #include "ecdsa.h"
@@ -73,21 +73,12 @@ typedef struct connection_t {
        struct node_t *node;            /* node associated with the other end */
        struct edge_t *edge;            /* edge associated with this connection */
 
-       rsa_t rsa;                      /* his public RSA key */
-       ecdsa_t ecdsa;                  /* his public ECDSA key */
-       cipher_t incipher;              /* Cipher he will use to send data to us */
-       cipher_t outcipher;             /* Cipher we will use to send data to him */
-       digest_t indigest;
-       digest_t outdigest;
+       ecdsa_t *ecdsa;                 /* his public ECDSA key */
        sptps_t sptps;
 
-       int inmaclength;
-       int outmaclength;
        int incompression;
        int outcompression;
 
-       char *hischallenge;             /* The challenge we sent to him */
-
        struct buffer_t inbuf;
        struct buffer_t outbuf;
        io_t io;                        /* input/output event on this metadata connection */
@@ -108,6 +99,5 @@ extern connection_t *new_connection(void) __attribute__ ((__malloc__));
 extern void free_connection(connection_t *);
 extern void connection_add(connection_t *);
 extern void connection_del(connection_t *);
-extern bool dump_connections(struct connection_t *);
 
 #endif /* __TINC_CONNECTION_H__ */