static void dump_device (NMDevice *device) { const char *str; NMDeviceState state; str = nm_device_get_iface (device); g_print ("Interface: %s\n", str); str = nm_device_get_udi (device); g_print ("Udi: %s\n", str); str = nm_device_get_driver (device); g_print ("Driver: %s\n", str); str = nm_device_get_vendor (device); g_print ("Vendor: %s\n", str); str = nm_device_get_product (device); g_print ("Product: %s\n", str); state = nm_device_get_state (device); g_print ("State: %d\n", state); if (state == NM_DEVICE_STATE_ACTIVATED) dump_ip4_config (nm_device_get_ip4_config (device)); if (NM_IS_DEVICE_ETHERNET (device)) dump_wired (NM_DEVICE_ETHERNET (device)); else if (NM_IS_DEVICE_WIFI (device)) dump_wireless (NM_DEVICE_WIFI (device)); dump_dhcp4_config (nm_device_get_dhcp4_config (device)); }
static void get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) { NMDevice *device = NM_DEVICE (object); switch (prop_id) { case PROP_UDI: g_value_set_string (value, nm_device_get_udi (device)); break; case PROP_INTERFACE: g_value_set_string (value, nm_device_get_iface (device)); break; case PROP_DRIVER: g_value_set_string (value, nm_device_get_driver (device)); break; case PROP_CAPABILITIES: g_value_set_uint (value, nm_device_get_capabilities (device)); break; case PROP_MANAGED: g_value_set_boolean (value, nm_device_get_managed (device)); break; case PROP_IP4_CONFIG: g_value_set_object (value, nm_device_get_ip4_config (device)); break; case PROP_DHCP4_CONFIG: g_value_set_object (value, nm_device_get_dhcp4_config (device)); break; case PROP_IP6_CONFIG: g_value_set_object (value, nm_device_get_ip6_config (device)); break; case PROP_STATE: g_value_set_uint (value, nm_device_get_state (device)); break; case PROP_PRODUCT: g_value_set_string (value, nm_device_get_product (device)); break; case PROP_VENDOR: g_value_set_string (value, nm_device_get_vendor (device)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } }
const char * utils_get_device_description (NMDevice *device) { char *description = NULL; const char *dev_product; const char *dev_vendor; char *product = NULL; char *vendor = NULL; GString *str; g_return_val_if_fail (device != NULL, NULL); description = g_object_get_data (G_OBJECT (device), DESC_TAG); if (description) return description; dev_product = nm_device_get_product (device); dev_vendor = nm_device_get_vendor (device); if (!dev_product || !dev_vendor) return NULL; product = fixup_desc_string (dev_product); vendor = fixup_desc_string (dev_vendor); str = g_string_new_len (NULL, strlen (vendor) + strlen (product) + 1); /* Another quick hack; if all of the fixed up vendor string * is found in product, ignore the vendor. */ if (!strcasestr (product, vendor)) { g_string_append (str, vendor); g_string_append_c (str, ' '); } g_string_append (str, product); g_free (product); g_free (vendor); description = str->str; g_string_free (str, FALSE); g_object_set_data_full (G_OBJECT (device), "description", description, (GDestroyNotify) g_free); return description; }