]> git.meshlink.io Git - meshlink/blobdiff - src/node.h
Merge branch 'channels'
[meshlink] / src / node.h
index 2ece66c5ad542d53d7a382cccf627987a802f38c..5761e4d747e5544c2d5189fdaed074eaa597ac12 100644 (file)
@@ -23,6 +23,7 @@
 #include "event.h"
 #include "sockaddr.h"
 #include "sptps.h"
+#include "utcp/utcp.h"
 
 typedef struct node_status_t {
        unsigned int unused_active:1;           /* 1 if active (not used for nodes) */
@@ -40,8 +41,10 @@ typedef struct node_status_t {
 
 typedef struct node_t {
        char *name;                             /* name of this node */
+       void *priv;
+
        uint32_t options;                       /* options turned on for this node */
-       dclass_t dclass;
+       dev_class_t devclass;
 
        struct meshlink_handle *mesh;           /* The mesh this node belongs to */
 
@@ -67,6 +70,8 @@ typedef struct node_t {
        struct splay_tree_t *edge_tree;                /* Edges with this node as one of the endpoints */
 
        struct connection_t *connection;        /* Connection associated with this node (if a direct connection exists) */
+       time_t last_connect_try;
+       time_t last_successfull_connection;
 
        uint32_t sent_seqno;                    /* Sequence number last sent to this node */
        uint32_t received_seqno;                /* Sequence number last received from this node */
@@ -86,6 +91,8 @@ typedef struct node_t {
        float bandwidth;                        /* Last measured bandwidth */
        float packetloss;                       /* Last measured packet loss rate */
 
+       struct utcp *utcp;
+
        uint64_t in_packets;
        uint64_t in_bytes;
        uint64_t out_packets;