Various fixes, tinc is now somewhat capable of actually working again.
[tinc] / src / connection.h
index 4054804..5307147 100644 (file)
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: connection.h,v 1.1.2.18 2001/10/28 08:41:19 guus Exp $
+    $Id: connection.h,v 1.1.2.20 2001/10/28 22:42:49 guus Exp $
 */
 
 #ifndef __TINC_CONNECTION_H__
 #define __TINC_CONNECTION_H__
 
+#include <sys/time.h>
+
 #include <avl_tree.h>
 #include <list.h>
 
@@ -56,7 +58,8 @@ typedef struct connection_status_t {
   int timeout:1;                   /* 1 if gotten timeout */
   int encryptout:1;               /* 1 if we can encrypt outgoing traffic */
   int decryptin:1;                 /* 1 if we have to decrypt incoming traffic */
-  int unused:18;
+  int mst:1;                      /* 1 if this connection is part of a minimum spanning tree */
+  int unused:17;
 } connection_status_t;
 
 typedef struct connection_t {
@@ -70,6 +73,8 @@ typedef struct connection_t {
   int socket;                      /* socket used for this connection */
   long int options;                /* options for this connection */
   struct connection_status_t status; /* status info */
+  int estimated_weight;            /* estimation for the weight of the edge for this connection */
+  struct timeval start;            /* time this connection was started, used for above estimation */
 
   struct node_t *node;             /* node associated with the other end */
   struct edge_t *edge;         /* edge associated with this connection */