summary refs log tree commit diff
path: root/libnm-util/nm-setting.h
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2011-10-16 08:47:38 +0200
committerMichael Biebl <biebl@debian.org>2011-10-16 08:47:38 +0200
commitdcc310e31af7fa88eb51fabe90de7edd374aecc5 (patch)
treea517abb10b0f0be34e511ca0cb2a78a2e0074362 /libnm-util/nm-setting.h
parent263bf4c0c89bb88dc995acd9a6a2de9095fbd461 (diff)
Imported Upstream version 0.9.1.90 upstream/0.9.1.90
Diffstat (limited to 'libnm-util/nm-setting.h')
-rw-r--r--libnm-util/nm-setting.h26
1 files changed, 25 insertions, 1 deletions
diff --git a/libnm-util/nm-setting.h b/libnm-util/nm-setting.h
index e21efd81..3edf2a1f 100644
--- a/libnm-util/nm-setting.h
+++ b/libnm-util/nm-setting.h
@@ -150,6 +150,21 @@ typedef struct {
 	GObject parent;
 } NMSetting;
 
+
+/**
+ * NMSettingClearSecretsWithFlagsFn:
+ * @setting: The setting for which secrets are being iterated
+ * @secret: The secret's name
+ * @flags: The secret's flags, eg %NM_SETTING_SECRET_FLAG_AGENT_OWNED
+ * @user_data: User data passed to nm_connection_clear_secrets_with_flags()
+ *
+ * Returns: %TRUE to clear the secret, %FALSE to not clear the secret
+ */
+typedef gboolean (*NMSettingClearSecretsWithFlagsFn) (NMSetting *setting,
+                                                      const char *secret,
+                                                      NMSettingSecretFlags flags,
+                                                      gpointer user_data);
+
 typedef struct {
 	GObjectClass parent;
 
@@ -183,10 +198,14 @@ typedef struct {
 	                                  const GParamSpec *prop_spec,
 	                                  NMSettingCompareFlags flags);
 
+	void        (*clear_secrets_with_flags) (NMSetting *setting,
+	                                         GParamSpec *pspec,
+	                                         NMSettingClearSecretsWithFlagsFn func,
+	                                         gpointer user_data);
+
 	/* Padding for future expansion */
 	void (*_reserved1) (void);
 	void (*_reserved2) (void);
-	void (*_reserved3) (void);
 } NMSettingClass;
 
 /**
@@ -269,6 +288,11 @@ char       *nm_setting_to_string      (NMSetting *setting);
 
 /* Secrets */
 void        nm_setting_clear_secrets  (NMSetting *setting);
+
+void        nm_setting_clear_secrets_with_flags (NMSetting *setting,
+                                                 NMSettingClearSecretsWithFlagsFn func,
+                                                 gpointer user_data);
+
 GPtrArray  *nm_setting_need_secrets   (NMSetting *setting);
 gboolean    nm_setting_update_secrets (NMSetting *setting,
                                        GHashTable *secrets,