void __connman_profile_cleanup(void);
connman_bool_t __connman_profile_get_offlinemode(void);
-int __connman_profile_set_offlinemode(connman_bool_t offlinemode);
+int __connman_profile_set_offlinemode(connman_bool_t offlinemode, connman_bool_t all_devices);
int __connman_profile_save_default(void);
void __connman_profile_list(DBusMessageIter *iter, void *user_data);
device->powered_persistent = TRUE;
+ if (__connman_profile_get_offlinemode() == TRUE)
+ __connman_profile_set_offlinemode(FALSE, FALSE);
+
__connman_storage_save_device(device);
return __connman_device_enable(device);
dbus_message_iter_get_basic(&value, &offlinemode);
- __connman_profile_set_offlinemode(offlinemode);
+ __connman_profile_set_offlinemode(offlinemode, TRUE);
__connman_profile_save_default();
} else if (g_str_equal(name, "Tethering") == TRUE) {
return default_profile->offlinemode;
}
-int __connman_profile_set_offlinemode(connman_bool_t offlinemode)
+int __connman_profile_set_offlinemode(connman_bool_t offlinemode,
+ connman_bool_t all_devices)
{
DBG("offlinemode %d", offlinemode);
default_profile->offlinemode = offlinemode;
offlinemode_changed(default_profile);
- __connman_device_set_offlinemode(offlinemode);
+ if (all_devices)
+ __connman_device_set_offlinemode(offlinemode);
return 0;
}