+static void device_enable(struct connman_device *device)
+{
+ DBG("device %p", device);
+
+ if (device->policy == CONNMAN_DEVICE_POLICY_IGNORE ||
+ device->policy == CONNMAN_DEVICE_POLICY_OFF)
+ return;
+
+ if (device->powered == TRUE)
+ return;
+
+ if (device->driver->enable)
+ device->driver->enable(device);
+}
+
+static void device_disable(struct connman_device *device)
+{
+ DBG("device %p", device);
+
+ if (device->policy == CONNMAN_DEVICE_POLICY_IGNORE)
+ return;
+
+ if (device->powered == FALSE)
+ return;
+
+ g_hash_table_remove_all(device->networks);
+
+ if (device->driver->disable)
+ device->driver->disable(device);
+}
+