The vendor and model information is returned in
service Ethernet property.
---
 src/ipconfig.c |   16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/src/ipconfig.c b/src/ipconfig.c
index e2b6576..05997bc 100644
--- a/src/ipconfig.c
+++ b/src/ipconfig.c
@@ -85,6 +85,9 @@ struct connman_ipdevice {
 
        gboolean ipv6_enabled;
        int ipv6_privacy;
+
+       char *vendor;
+       char *model;
 };
 
 static GHashTable *ipdevice_hash = NULL;
@@ -540,6 +543,8 @@ static void free_ipdevice(gpointer data)
        set_ipv6_privacy(ipdevice->ifname, ipdevice->ipv6_privacy);
 
        g_free(ipdevice->ifname);
+       g_free(ipdevice->vendor);
+       g_free(ipdevice->model);
        g_free(ipdevice);
 }
 
@@ -648,6 +653,9 @@ void __connman_ipconfig_newlink(int index, unsigned short 
type,
 
        ipdevice->address = g_strdup(address);
 
+       __connman_inet_get_vendor_model(ipdevice->ifname, &ipdevice->vendor,
+                                                       &ipdevice->model);
+
        g_hash_table_insert(ipdevice_hash, GINT_TO_POINTER(index), ipdevice);
 
        connman_info("%s {create} index %d type %d <%s>", ipdevice->ifname,
@@ -2230,6 +2238,14 @@ void __connman_ipconfig_append_ethernet(struct 
connman_ipconfig *ipconfig,
        if (ipdevice->mtu > 0)
                connman_dbus_dict_append_basic(iter, "MTU",
                                        DBUS_TYPE_UINT16, &ipdevice->mtu);
+
+       if (ipdevice->vendor != NULL && ipdevice->vendor[0] != '\0')
+               connman_dbus_dict_append_basic(iter, "Vendor",
+                                       DBUS_TYPE_STRING, &ipdevice->vendor);
+
+       if (ipdevice->model != NULL && ipdevice->model[0] != '\0')
+               connman_dbus_dict_append_basic(iter, "Model",
+                                       DBUS_TYPE_STRING, &ipdevice->model);
 }
 
 int __connman_ipconfig_load(struct connman_ipconfig *ipconfig,
-- 
1.7.9.5

_______________________________________________
connman mailing list
connman@connman.net
http://lists.connman.net/listinfo/connman

Reply via email to