summary refs log tree commit diff
path: root/src/libnmc-setting/nm-meta-setting-access.h
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2021-10-01 23:05:04 +0200
committerMichael Biebl <biebl@debian.org>2021-10-01 23:05:04 +0200
commite74c568b07b50b97873fb4ee1d776dedefbd54d6 (patch)
tree3469f17ea9af91f7ff169b890633bda68b0cf76e /src/libnmc-setting/nm-meta-setting-access.h
parentbfe522304da217296e2a61040f58e35ec5d6f3f2 (diff)
New upstream version 1.32.12 upstream/1.32.12
Diffstat (limited to 'src/libnmc-setting/nm-meta-setting-access.h')
-rw-r--r--src/libnmc-setting/nm-meta-setting-access.h99
1 files changed, 99 insertions, 0 deletions
diff --git a/src/libnmc-setting/nm-meta-setting-access.h b/src/libnmc-setting/nm-meta-setting-access.h
new file mode 100644
index 00000000..81aa3b6f
--- /dev/null
+++ b/src/libnmc-setting/nm-meta-setting-access.h
@@ -0,0 +1,99 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (C) 2010 - 2017 Red Hat, Inc.
+ */
+
+#ifndef _NM_META_SETTING_ACCESS_H__
+#define _NM_META_SETTING_ACCESS_H__
+
+#include "nm-meta-setting-desc.h"
+
+/*****************************************************************************/
+
+NMSetting *nm_meta_setting_info_editor_new_setting(const NMMetaSettingInfoEditor *setting_info,
+                                                   NMMetaAccessorSettingInitType  init_type);
+
+const NMMetaSettingInfoEditor *nm_meta_setting_info_editor_find_by_name(const char *setting_name,
+                                                                        gboolean    use_alias);
+const NMMetaSettingInfoEditor *nm_meta_setting_info_editor_find_by_gtype(GType gtype);
+const NMMetaSettingInfoEditor *nm_meta_setting_info_editor_find_by_setting(NMSetting *setting);
+
+const NMMetaPropertyInfo *
+nm_meta_setting_info_editor_get_property_info(const NMMetaSettingInfoEditor *setting_info,
+                                              const char *                   property_name);
+const NMMetaPropertyInfo *nm_meta_property_info_find_by_name(const char *setting_name,
+                                                             const char *property_name);
+const NMMetaPropertyInfo *nm_meta_property_info_find_by_setting(NMSetting * setting,
+                                                                const char *property_name);
+
+gboolean nm_meta_setting_info_editor_has_secrets(const NMMetaSettingInfoEditor *setting_info);
+
+/*****************************************************************************/
+
+const NMMetaSettingInfoEditor *const *nm_meta_setting_infos_editor_p(void);
+
+/*****************************************************************************/
+
+const char *nm_meta_abstract_info_get_name(const NMMetaAbstractInfo *abstract_info,
+                                           gboolean                  for_header);
+
+const NMMetaAbstractInfo *const *
+nm_meta_abstract_info_get_nested(const NMMetaAbstractInfo *abstract_info,
+                                 guint *                   out_len,
+                                 gpointer *                nested_to_free);
+
+gconstpointer nm_meta_abstract_info_get(const NMMetaAbstractInfo * abstract_info,
+                                        const NMMetaEnvironment *  environment,
+                                        gpointer                   environment_user_data,
+                                        gpointer                   target,
+                                        gpointer                   target_data,
+                                        NMMetaAccessorGetType      get_type,
+                                        NMMetaAccessorGetFlags     get_flags,
+                                        NMMetaAccessorGetOutFlags *out_flags,
+                                        gboolean *                 out_is_default,
+                                        gpointer *                 out_to_free);
+
+const char *const *nm_meta_abstract_info_complete(const NMMetaAbstractInfo *abstract_info,
+                                                  const NMMetaEnvironment * environment,
+                                                  gpointer                  environment_user_data,
+                                                  const NMMetaOperationContext *operation_context,
+                                                  const char *                  text,
+                                                  gboolean *out_complete_filename,
+                                                  char ***  out_to_free);
+
+/*****************************************************************************/
+
+char *nm_meta_abstract_info_get_nested_names_str(const NMMetaAbstractInfo *abstract_info,
+                                                 const char *              name_prefix);
+char *nm_meta_abstract_infos_get_names_str(const NMMetaAbstractInfo *const *fields_array,
+                                           const char *                     name_prefix);
+
+/*****************************************************************************/
+
+typedef struct {
+    const NMMetaAbstractInfo *info;
+    const char *              self_selection;
+    const char *              sub_selection;
+    guint                     idx;
+} NMMetaSelectionItem;
+
+typedef struct {
+    const guint               num;
+    const NMMetaSelectionItem items[];
+} NMMetaSelectionResultList;
+
+NMMetaSelectionResultList *
+nm_meta_selection_create_all(const NMMetaAbstractInfo *const *fields_array);
+NMMetaSelectionResultList *
+nm_meta_selection_create_parse_one(const NMMetaAbstractInfo *const *fields_array,
+                                   const char *                     fields_prefix,
+                                   const char *                     fields_str,
+                                   gboolean                         validate_nested,
+                                   GError **                        error);
+NMMetaSelectionResultList *
+nm_meta_selection_create_parse_list(const NMMetaAbstractInfo *const *fields_array,
+                                    const char *                     fields_str,
+                                    gboolean                         validate_nested,
+                                    GError **                        error);
+
+#endif /* _NM_META_SETTING_ACCESS_H__ */