size_t keylen;
};
+/// Device class traits
+typedef struct {
+ int pinginterval;
+ int pingtimeout;
+ unsigned int min_connects;
+ unsigned int max_connects;
+ int edge_weight;
+} dev_class_traits_t;
+
/// A handle for an instance of MeshLink.
struct meshlink_handle {
// public members
struct ecdsa *private_key;
struct ecdsa *invitation_key;
- int32_t devclass;
+ dev_class_t devclass;
int invitation_timeout;
- int pinginterval; /* seconds between pings */
- int pingtimeout; /* seconds to wait for response */
int maxtimeout;
int udp_choice;
+ dev_class_traits_t dev_class_traits[DEV_CLASS_COUNT];
+
int netns;
bool default_blacklist;
extern void handle_duplicate_node(meshlink_handle_t *mesh, struct node_t *n);
extern void handle_network_change(meshlink_handle_t *mesh, bool online);
-/// Device class traits
-typedef struct {
- unsigned int min_connects;
- unsigned int max_connects;
- int edge_weight;
-} dev_class_traits_t;
-
-extern const dev_class_traits_t dev_class_traits[];
-
#endif