Patch from Tambet Ingo <tambet@gmail.com>
* libnm-util/nm-setting.c
libnm-util/nm-setting.h
- (NMSettingValueIterFn): instead of just a gboolean for secrets, take
all the GParamSpec flags of the property
* system-settings/plugins/keyfile/nm-keyfile-connection.c
system-settings/plugins/keyfile/reader.c
system-settings/plugins/keyfile/writer.c
- Update for NMSettingValueIterFn change
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4322
4912f4e0-d625-0410-9fb7-
b9a5a253dbdc
+2008-11-20 Dan Williams <dcbw@redhat.com>
+
+ Patch from Tambet Ingo <tambet@gmail.com>
+
+ * libnm-util/nm-setting.c
+ libnm-util/nm-setting.h
+ - (NMSettingValueIterFn): instead of just a gboolean for secrets, take
+ all the GParamSpec flags of the property
+
+ * system-settings/plugins/keyfile/nm-keyfile-connection.c
+ system-settings/plugins/keyfile/reader.c
+ system-settings/plugins/keyfile/writer.c
+ - Update for NMSettingValueIterFn change
+
2008-11-20 Dan Williams <dcbw@redhat.com>
* libnm-util/nm-utils.c
static void
duplicate_setting (NMSetting *setting,
- const char *name,
- const GValue *value,
- gboolean secret,
- gpointer user_data)
+ const char *name,
+ const GValue *value,
+ GParamFlags flags,
+ gpointer user_data)
{
- GObject *dup = (GObject *) user_data;
-
- g_object_set_property (dup, name, value);
+ if (flags & G_PARAM_WRITABLE)
+ g_object_set_property (G_OBJECT (user_data), name, value);
}
/**
g_value_init (&value, G_PARAM_SPEC_VALUE_TYPE (prop_spec));
g_object_get_property (G_OBJECT (setting), prop_spec->name, &value);
- func (setting, prop_spec->name, &value,
- prop_spec->flags & NM_SETTING_PARAM_SECRET,
- user_data);
+ func (setting, prop_spec->name, &value, prop_spec->flags, user_data);
g_value_unset (&value);
}
} NMSettingClass;
typedef void (*NMSettingValueIterFn) (NMSetting *setting,
- const char *key,
- const GValue *value,
- gboolean secret,
- gpointer user_data);
+ const char *key,
+ const GValue *value,
+ GParamFlags flags,
+ gpointer user_data);
GType nm_setting_get_type (void);
add_secrets (NMSetting *setting,
const char *key,
const GValue *value,
- gboolean secret,
+ GParamFlags flags,
gpointer user_data)
{
GHashTable *secrets = user_data;
- if (!secret)
+ if (!(flags & NM_SETTING_PARAM_SECRET))
return;
if (G_VALUE_HOLDS_STRING (value)) {
static void
read_one_setting_value (NMSetting *setting,
- const char *key,
- const GValue *value,
- gboolean secret,
- gpointer user_data)
+ const char *key,
+ const GValue *value,
+ GParamFlags flags,
+ gpointer user_data)
{
ReadSettingInfo *info = (ReadSettingInfo *) user_data;
GKeyFile *file = info->keyfile;
GError *err = NULL;
gboolean check_for_key = TRUE;
+ /* Property is not writable */
+ if (!(flags & G_PARAM_WRITABLE))
+ return;
+
/* Setting name gets picked up from the keyfile's section name instead */
if (!strcmp (key, NM_SETTING_NAME))
return;
/* Don't read in secrets unless we want to */
- if (secret && !info->secrets)
+ if ((flags & NM_SETTING_PARAM_SECRET) && !info->secrets)
return;
/* Don't read the NMSettingConnection object's 'read-only' property */
static void
write_setting_value (NMSetting *setting,
- const char *key,
- const GValue *value,
- gboolean secret,
- gpointer user_data)
+ const char *key,
+ const GValue *value,
+ GParamFlags flag,
+ gpointer user_data)
{
GKeyFile *file = (GKeyFile *) user_data;
const char *setting_name;