X-Git-Url: https://tinc-vpn.org/git/browse?p=tinc;a=blobdiff_plain;f=src%2Fconnection.h;h=8ab81288a42b18a7d83120939018a30c8eec7b8a;hp=4054804266cfb29afa600bf7cb057fdd70d35070;hb=2165931c62f0433fd97bd3ac6aefea3627218946;hpb=94497336efc1cc60561575e74d420e9e8e8c657e diff --git a/src/connection.h b/src/connection.h index 40548042..8ab81288 100644 --- a/src/connection.h +++ b/src/connection.h @@ -17,12 +17,14 @@ 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.21 2001/10/30 16:34:32 guus Exp $ */ #ifndef __TINC_CONNECTION_H__ #define __TINC_CONNECTION_H__ +#include + #include #include @@ -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 */ @@ -99,7 +104,7 @@ typedef struct connection_t { extern avl_tree_t *connection_tree; extern void init_connections(void); -extern void exit_connection(void); +extern void exit_connections(void); extern connection_t *new_connection(void); extern void free_connection(connection_t *); extern void connection_add(connection_t *);