*
* Connection Manager
*
- * Copyright (C) 2007-2010 Intel Corporation. All rights reserved.
+ * Copyright (C) 2007-2012 Intel Corporation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
return NULL;
}
+static void save_state(struct connman_technology *technology)
+{
+ GKeyFile *keyfile;
+ gchar *identifier;
+
+ DBG("technology %p", technology);
+
+ keyfile = __connman_storage_load_global();
+ if (keyfile == NULL)
+ keyfile = g_key_file_new();
+
+ identifier = g_strdup_printf("%s", get_name(technology->type));
+ if (identifier == NULL)
+ goto done;
+
+ g_key_file_set_boolean(keyfile, identifier, "Enable",
+ technology->enable_persistent);
+
+done:
+ g_free(identifier);
+
+ __connman_storage_save_global(keyfile);
+
+ g_key_file_free(keyfile);
+
+ return;
+}
+
static void load_state(struct connman_technology *technology)
{
GKeyFile *keyfile;
technology->enable_persistent = TRUE;
else
technology->enable_persistent = FALSE;
+
+ save_state(technology);
g_clear_error(&error);
}
done:
return;
}
-static void save_state(struct connman_technology *technology)
-{
- GKeyFile *keyfile;
- gchar *identifier;
-
- DBG("technology %p", technology);
-
- keyfile = __connman_storage_load_global();
- if (keyfile == NULL)
- keyfile = g_key_file_new();
-
- identifier = g_strdup_printf("%s", get_name(technology->type));
- if (identifier == NULL)
- goto done;
-
- g_key_file_set_boolean(keyfile, identifier, "Enable",
- technology->enable_persistent);
-
-done:
- g_free(identifier);
-
- __connman_storage_save_global(keyfile);
-
- g_key_file_free(keyfile);
-
- return;
-}
-
connman_bool_t __connman_technology_get_offlinemode(void)
{
return global_offlinemode;
/* If there is a error, we enable offlinemode */
keyfile = __connman_storage_load_global();
if (keyfile == NULL)
- return TRUE;
+ return FALSE;
offlinemode = g_key_file_get_boolean(keyfile, "global",
"OfflineMode", &error);
if (error != NULL) {
- offlinemode = TRUE;
+ offlinemode = FALSE;
g_clear_error(&error);
}
return NULL;
}
-static GDBusMethodTable technology_methods[] = {
- { "GetProperties", "", "a{sv}", get_properties },
+static const GDBusMethodTable technology_methods[] = {
+ { "GetProperties", "", "a{sv}", get_properties,
+ G_DBUS_METHOD_FLAG_DEPRECATED },
{ "SetProperty", "sv", "", set_property },
{ "Scan", "", "", scan,
G_DBUS_METHOD_FLAG_ASYNC },
{ },
};
-static GDBusSignalTable technology_signals[] = {
+static const GDBusSignalTable technology_signals[] = {
{ "PropertyChanged", "sv" },
{ },
};
global_offlinemode = connman_technology_load_offlinemode();
+ /* This will create settings file if it is missing */
+ connman_technology_save_offlinemode();
+
return 0;
}