Create element for every network in range
[connman] / include / element.h
index 1d14424..e000a58 100644 (file)
@@ -48,6 +48,7 @@ enum connman_element_type {
        CONNMAN_ELEMENT_TYPE_DHCP       = 6,
        CONNMAN_ELEMENT_TYPE_BOOTP      = 7,
        CONNMAN_ELEMENT_TYPE_ZEROCONF   = 8,
+       CONNMAN_ELEMENT_TYPE_RESOLVER   = 9,
 
        CONNMAN_ELEMENT_TYPE_CONNECTION = 42,
 };
@@ -65,11 +66,13 @@ struct connman_driver;
 
 struct connman_element {
        gint refcount;
+       GStaticMutex mutex;
        gchar *name;
        gchar *path;
        enum connman_element_type type;
        enum connman_element_subtype subtype;
        enum connman_element_state state;
+       guint16 priority;
 
        struct connman_element *parent;
 
@@ -85,6 +88,10 @@ struct connman_element {
        } netdev;
 
        struct {
+               gchar *identifier;
+       } network;
+
+       struct {
                gchar *address;
                gchar *netmask;
                gchar *gateway;
@@ -94,6 +101,9 @@ struct connman_element {
        } ipv4;
 };
 
+#define connman_element_lock(element)    g_static_mutex_lock(&(element)->mutex)
+#define connman_element_unlock(element)  g_static_mutex_unlock(&(element)->mutex)
+
 extern struct connman_element *connman_element_create(void);
 extern struct connman_element *connman_element_ref(struct connman_element *element);
 extern void connman_element_unref(struct connman_element *element);