721 lines
25 KiB
Diff
721 lines
25 KiB
Diff
|
From 6ff6548e021938b1ec41137b8964e5079dfe2bfa Mon Sep 17 00:00:00 2001
|
||
|
From: =?UTF-8?q?Miloslav=20Trma=C4=8D?= <mitr@redhat.com>
|
||
|
Date: Wed, 23 Mar 2016 13:18:58 +0100
|
||
|
Subject: [PATCH 17/29] Remove polkitbackendconfigsource.[ch]
|
||
|
|
||
|
It is no longer used since the move to JavaScript, and we don't want to
|
||
|
maintain it unnecessarily.
|
||
|
|
||
|
https://bugs.freedesktop.org/show_bug.cgi?id=94670
|
||
|
---
|
||
|
src/polkitbackend/Makefile.am | 1 -
|
||
|
src/polkitbackend/polkitbackendconfigsource.c | 565 ---------------------
|
||
|
src/polkitbackend/polkitbackendconfigsource.h | 98 ----
|
||
|
.../polkitbackendinteractiveauthority.c | 1 -
|
||
|
4 files changed, 665 deletions(-)
|
||
|
delete mode 100644 src/polkitbackend/polkitbackendconfigsource.c
|
||
|
delete mode 100644 src/polkitbackend/polkitbackendconfigsource.h
|
||
|
|
||
|
diff --git a/src/polkitbackend/Makefile.am b/src/polkitbackend/Makefile.am
|
||
|
index 547ca82..a80ca36 100644
|
||
|
--- a/src/polkitbackend/Makefile.am
|
||
|
+++ b/src/polkitbackend/Makefile.am
|
||
|
@@ -34,7 +34,6 @@ libpolkit_backend_1_la_SOURCES = \
|
||
|
polkitbackendinteractiveauthority.h polkitbackendinteractiveauthority.c \
|
||
|
polkitbackendjsauthority.h polkitbackendjsauthority.c \
|
||
|
polkitbackendactionpool.h polkitbackendactionpool.c \
|
||
|
- polkitbackendconfigsource.h polkitbackendconfigsource.c \
|
||
|
polkitbackendactionlookup.h polkitbackendactionlookup.c \
|
||
|
$(NULL)
|
||
|
|
||
|
diff --git a/src/polkitbackend/polkitbackendconfigsource.c b/src/polkitbackend/polkitbackendconfigsource.c
|
||
|
deleted file mode 100644
|
||
|
index 838bc6a..0000000
|
||
|
--- a/src/polkitbackend/polkitbackendconfigsource.c
|
||
|
+++ /dev/null
|
||
|
@@ -1,565 +0,0 @@
|
||
|
-/*
|
||
|
- * Copyright (C) 2008 Red Hat, Inc.
|
||
|
- *
|
||
|
- * This library is free software; you can redistribute it and/or
|
||
|
- * modify it under the terms of the GNU Lesser General Public
|
||
|
- * License as published by the Free Software Foundation; either
|
||
|
- * version 2 of the License, or (at your option) any later version.
|
||
|
- *
|
||
|
- * This library is distributed in the hope that it will be useful,
|
||
|
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||
|
- * Lesser General Public License for more details.
|
||
|
- *
|
||
|
- * You should have received a copy of the GNU Lesser General
|
||
|
- * Public License along with this library; if not, write to the
|
||
|
- * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||
|
- * Boston, MA 02111-1307, USA.
|
||
|
- *
|
||
|
- * Author: David Zeuthen <davidz@redhat.com>
|
||
|
- */
|
||
|
-
|
||
|
-#include "config.h"
|
||
|
-
|
||
|
-#include <polkit/polkit.h>
|
||
|
-#include "polkitbackendconfigsource.h"
|
||
|
-
|
||
|
-/* <internal>
|
||
|
- * SECTION:polkitbackendconfigsource
|
||
|
- * @title: PolkitBackendConfigSource
|
||
|
- * @short_description: Access configuration files
|
||
|
- *
|
||
|
- * The #PolkitBackendConfigSource class is a utility class to read
|
||
|
- * configuration data from a set of prioritized key-value files in a
|
||
|
- * given directory.
|
||
|
- */
|
||
|
-
|
||
|
-struct _PolkitBackendConfigSourcePrivate
|
||
|
-{
|
||
|
- GFile *directory;
|
||
|
-
|
||
|
- GFileMonitor *directory_monitor;
|
||
|
-
|
||
|
- /* sorted according to priority, higher priority is first */
|
||
|
- GList *key_files;
|
||
|
-
|
||
|
- gboolean has_data;
|
||
|
-};
|
||
|
-
|
||
|
-enum
|
||
|
-{
|
||
|
- PROP_0,
|
||
|
- PROP_DIRECTORY,
|
||
|
-};
|
||
|
-
|
||
|
-enum
|
||
|
-{
|
||
|
- CHANGED_SIGNAL,
|
||
|
- LAST_SIGNAL,
|
||
|
-};
|
||
|
-
|
||
|
-static guint signals[LAST_SIGNAL] = {0};
|
||
|
-
|
||
|
-static void polkit_backend_config_source_purge (PolkitBackendConfigSource *source);
|
||
|
-
|
||
|
-static void polkit_backend_config_source_ensure (PolkitBackendConfigSource *source);
|
||
|
-
|
||
|
-G_DEFINE_TYPE (PolkitBackendConfigSource, polkit_backend_config_source, G_TYPE_OBJECT);
|
||
|
-
|
||
|
-/* ---------------------------------------------------------------------------------------------------- */
|
||
|
-
|
||
|
-static void
|
||
|
-polkit_backend_config_source_init (PolkitBackendConfigSource *source)
|
||
|
-{
|
||
|
- source->priv = G_TYPE_INSTANCE_GET_PRIVATE (source,
|
||
|
- POLKIT_BACKEND_TYPE_CONFIG_SOURCE,
|
||
|
- PolkitBackendConfigSourcePrivate);
|
||
|
-}
|
||
|
-
|
||
|
-static void
|
||
|
-polkit_backend_config_source_finalize (GObject *object)
|
||
|
-{
|
||
|
- PolkitBackendConfigSource *source = POLKIT_BACKEND_CONFIG_SOURCE (object);
|
||
|
-
|
||
|
- if (source->priv->directory != NULL)
|
||
|
- g_object_unref (source->priv->directory);
|
||
|
-
|
||
|
- if (source->priv->directory_monitor != NULL)
|
||
|
- g_object_unref (source->priv->directory_monitor);
|
||
|
-
|
||
|
- g_list_foreach (source->priv->key_files, (GFunc) g_key_file_free, NULL);
|
||
|
- g_list_free (source->priv->key_files);
|
||
|
-
|
||
|
- if (G_OBJECT_CLASS (polkit_backend_config_source_parent_class)->finalize != NULL)
|
||
|
- G_OBJECT_CLASS (polkit_backend_config_source_parent_class)->finalize (object);
|
||
|
-}
|
||
|
-
|
||
|
-
|
||
|
-static void
|
||
|
-polkit_backend_config_source_get_property (GObject *object,
|
||
|
- guint prop_id,
|
||
|
- GValue *value,
|
||
|
- GParamSpec *pspec)
|
||
|
-{
|
||
|
- PolkitBackendConfigSource *source = POLKIT_BACKEND_CONFIG_SOURCE (object);
|
||
|
-
|
||
|
- switch (prop_id)
|
||
|
- {
|
||
|
- case PROP_DIRECTORY:
|
||
|
- g_value_set_object (value, source->priv->directory);
|
||
|
- break;
|
||
|
-
|
||
|
- default:
|
||
|
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||
|
- break;
|
||
|
- }
|
||
|
-}
|
||
|
-
|
||
|
-static void
|
||
|
-polkit_backend_config_source_set_property (GObject *object,
|
||
|
- guint prop_id,
|
||
|
- const GValue *value,
|
||
|
- GParamSpec *pspec)
|
||
|
-{
|
||
|
- PolkitBackendConfigSource *source = POLKIT_BACKEND_CONFIG_SOURCE (object);
|
||
|
-
|
||
|
- switch (prop_id)
|
||
|
- {
|
||
|
- case PROP_DIRECTORY:
|
||
|
- source->priv->directory = g_value_dup_object (value);
|
||
|
- break;
|
||
|
-
|
||
|
- default:
|
||
|
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||
|
- break;
|
||
|
- }
|
||
|
-}
|
||
|
-
|
||
|
-static void
|
||
|
-directory_monitor_changed (GFileMonitor *monitor,
|
||
|
- GFile *file,
|
||
|
- GFile *other_file,
|
||
|
- GFileMonitorEvent event_type,
|
||
|
- gpointer user_data)
|
||
|
-{
|
||
|
- PolkitBackendConfigSource *source;
|
||
|
-
|
||
|
- source = POLKIT_BACKEND_CONFIG_SOURCE (user_data);
|
||
|
-
|
||
|
- if (file != NULL)
|
||
|
- {
|
||
|
- gchar *name;
|
||
|
-
|
||
|
- name = g_file_get_basename (file);
|
||
|
-
|
||
|
- //g_debug ("event_type=%d file=%p name=%s", event_type, file, name);
|
||
|
-
|
||
|
- if (!g_str_has_prefix (name, ".") &&
|
||
|
- !g_str_has_prefix (name, "#") &&
|
||
|
- g_str_has_suffix (name, ".conf") &&
|
||
|
- (event_type == G_FILE_MONITOR_EVENT_CREATED ||
|
||
|
- event_type == G_FILE_MONITOR_EVENT_DELETED ||
|
||
|
- event_type == G_FILE_MONITOR_EVENT_CHANGES_DONE_HINT))
|
||
|
- {
|
||
|
-
|
||
|
- //g_debug ("match");
|
||
|
-
|
||
|
- /* now throw away all caches */
|
||
|
- polkit_backend_config_source_purge (source);
|
||
|
- g_signal_emit_by_name (source, "changed");
|
||
|
- }
|
||
|
-
|
||
|
- g_free (name);
|
||
|
- }
|
||
|
-}
|
||
|
-
|
||
|
-static void
|
||
|
-polkit_backend_config_source_constructed (GObject *object)
|
||
|
-{
|
||
|
- PolkitBackendConfigSource *source = POLKIT_BACKEND_CONFIG_SOURCE (object);
|
||
|
- GError *error;
|
||
|
-
|
||
|
- error = NULL;
|
||
|
- source->priv->directory_monitor = g_file_monitor_directory (source->priv->directory,
|
||
|
- G_FILE_MONITOR_NONE,
|
||
|
- NULL,
|
||
|
- &error);
|
||
|
- if (source->priv->directory_monitor == NULL)
|
||
|
- {
|
||
|
- gchar *dir_name;
|
||
|
- dir_name = g_file_get_uri (source->priv->directory);
|
||
|
- g_warning ("Error monitoring directory %s: %s", dir_name, error->message);
|
||
|
- g_free (dir_name);
|
||
|
- g_error_free (error);
|
||
|
- }
|
||
|
- else
|
||
|
- {
|
||
|
- g_signal_connect (source->priv->directory_monitor,
|
||
|
- "changed",
|
||
|
- (GCallback) directory_monitor_changed,
|
||
|
- source);
|
||
|
- }
|
||
|
-
|
||
|
- if (G_OBJECT_CLASS (polkit_backend_config_source_parent_class)->constructed != NULL)
|
||
|
- G_OBJECT_CLASS (polkit_backend_config_source_parent_class)->constructed (object);
|
||
|
-}
|
||
|
-
|
||
|
-static void
|
||
|
-polkit_backend_config_source_class_init (PolkitBackendConfigSourceClass *klass)
|
||
|
-{
|
||
|
- GObjectClass *gobject_class;
|
||
|
-
|
||
|
- gobject_class = G_OBJECT_CLASS (klass);
|
||
|
-
|
||
|
- gobject_class->get_property = polkit_backend_config_source_get_property;
|
||
|
- gobject_class->set_property = polkit_backend_config_source_set_property;
|
||
|
- gobject_class->constructed = polkit_backend_config_source_constructed;
|
||
|
- gobject_class->finalize = polkit_backend_config_source_finalize;
|
||
|
-
|
||
|
- g_type_class_add_private (klass, sizeof (PolkitBackendConfigSourcePrivate));
|
||
|
-
|
||
|
- /**
|
||
|
- * PolkitBackendConfigSource:directory:
|
||
|
- *
|
||
|
- * The directory to watch for configuration files.
|
||
|
- */
|
||
|
- g_object_class_install_property (gobject_class,
|
||
|
- PROP_DIRECTORY,
|
||
|
- g_param_spec_object ("directory",
|
||
|
- "Directory",
|
||
|
- "The directory to watch for configuration files",
|
||
|
- G_TYPE_FILE,
|
||
|
- G_PARAM_CONSTRUCT_ONLY |
|
||
|
- G_PARAM_READWRITE |
|
||
|
- G_PARAM_STATIC_NAME |
|
||
|
- G_PARAM_STATIC_BLURB |
|
||
|
- G_PARAM_STATIC_NICK));
|
||
|
-
|
||
|
- /**
|
||
|
- * PolkitBackendConfiguSource::changed:
|
||
|
- * @source: A #PolkitBackendConfigSource.
|
||
|
- *
|
||
|
- * Emitted when configuration files in #PolkitBackendConfiguSource:directory changes.
|
||
|
- */
|
||
|
- signals[CHANGED_SIGNAL] = g_signal_new ("changed",
|
||
|
- POLKIT_BACKEND_TYPE_CONFIG_SOURCE,
|
||
|
- G_SIGNAL_RUN_LAST,
|
||
|
- G_STRUCT_OFFSET (PolkitBackendConfigSourceClass, changed),
|
||
|
- NULL,
|
||
|
- NULL,
|
||
|
- g_cclosure_marshal_VOID__VOID,
|
||
|
- G_TYPE_NONE,
|
||
|
- 0);
|
||
|
-}
|
||
|
-
|
||
|
-/**
|
||
|
- * polkit_backend_config_source_new:
|
||
|
- * @directory: The directory to watch.
|
||
|
- *
|
||
|
- * Creates a new #PolkitBackendConfigSource object that reads
|
||
|
- * configuration from @directory. To watch for configuration changes,
|
||
|
- * connect to the #PolkitBackendConfigSource::changed signal.
|
||
|
- *
|
||
|
- * Returns: A #PolkitBackendConfigSource for @directory. Free with
|
||
|
- * g_object_unref().
|
||
|
- **/
|
||
|
-PolkitBackendConfigSource *
|
||
|
-polkit_backend_config_source_new (GFile *directory)
|
||
|
-{
|
||
|
- PolkitBackendConfigSource *source;
|
||
|
-
|
||
|
- source = POLKIT_BACKEND_CONFIG_SOURCE (g_object_new (POLKIT_BACKEND_TYPE_CONFIG_SOURCE,
|
||
|
- "directory", directory,
|
||
|
- NULL));
|
||
|
-
|
||
|
- return source;
|
||
|
-}
|
||
|
-
|
||
|
-static void
|
||
|
-polkit_backend_config_source_purge (PolkitBackendConfigSource *source)
|
||
|
-{
|
||
|
- g_list_foreach (source->priv->key_files, (GFunc) g_key_file_free, NULL);
|
||
|
- g_list_free (source->priv->key_files);
|
||
|
- source->priv->key_files = NULL;
|
||
|
-
|
||
|
- source->priv->has_data = FALSE;
|
||
|
-}
|
||
|
-
|
||
|
-static gint
|
||
|
-compare_filename (GFile *a, GFile *b)
|
||
|
-{
|
||
|
- gchar *a_uri;
|
||
|
- gchar *b_uri;
|
||
|
- gint ret;
|
||
|
-
|
||
|
- a_uri = g_file_get_uri (a);
|
||
|
- b_uri = g_file_get_uri (b);
|
||
|
-
|
||
|
- /* TODO: use ASCII sort function? */
|
||
|
- ret = -g_strcmp0 (a_uri, b_uri);
|
||
|
-
|
||
|
- return ret;
|
||
|
-}
|
||
|
-
|
||
|
-static void
|
||
|
-polkit_backend_config_source_ensure (PolkitBackendConfigSource *source)
|
||
|
-{
|
||
|
- GFileEnumerator *enumerator;
|
||
|
- GFileInfo *file_info;
|
||
|
- GError *error;
|
||
|
- GList *files;
|
||
|
- GList *l;
|
||
|
-
|
||
|
- files = NULL;
|
||
|
-
|
||
|
- if (source->priv->has_data)
|
||
|
- goto out;
|
||
|
-
|
||
|
- polkit_backend_config_source_purge (source);
|
||
|
-
|
||
|
- error = NULL;
|
||
|
- enumerator = g_file_enumerate_children (source->priv->directory,
|
||
|
- "standard::name",
|
||
|
- G_FILE_QUERY_INFO_NONE,
|
||
|
- NULL,
|
||
|
- &error);
|
||
|
- if (enumerator == NULL)
|
||
|
- {
|
||
|
- gchar *dir_name;
|
||
|
- dir_name = g_file_get_uri (source->priv->directory);
|
||
|
- g_warning ("Error enumerating files in %s: %s", dir_name, error->message);
|
||
|
- g_free (dir_name);
|
||
|
- g_error_free (error);
|
||
|
- goto out;
|
||
|
- }
|
||
|
-
|
||
|
- while ((file_info = g_file_enumerator_next_file (enumerator, NULL, &error)) != NULL)
|
||
|
- {
|
||
|
- const gchar *name;
|
||
|
-
|
||
|
- name = g_file_info_get_name (file_info);
|
||
|
-
|
||
|
- /* only consider files ending in .conf */
|
||
|
- if (g_str_has_suffix (name, ".conf"))
|
||
|
- files = g_list_prepend (files, g_file_get_child (source->priv->directory, name));
|
||
|
-
|
||
|
- g_object_unref (file_info);
|
||
|
- }
|
||
|
- g_object_unref (enumerator);
|
||
|
- if (error != NULL)
|
||
|
- {
|
||
|
- g_warning ("Error enumerating files: %s", error->message);
|
||
|
- g_error_free (error);
|
||
|
- goto out;
|
||
|
- }
|
||
|
-
|
||
|
- files = g_list_sort (files, (GCompareFunc) compare_filename);
|
||
|
-
|
||
|
- /* process files; highest priority comes first */
|
||
|
- for (l = files; l != NULL; l = l->next)
|
||
|
- {
|
||
|
- GFile *file = G_FILE (l->data);
|
||
|
- gchar *filename;
|
||
|
- GKeyFile *key_file;
|
||
|
-
|
||
|
- filename = g_file_get_path (file);
|
||
|
-
|
||
|
- key_file = g_key_file_new ();
|
||
|
-
|
||
|
- error = NULL;
|
||
|
- if (!g_key_file_load_from_file (key_file,
|
||
|
- filename,
|
||
|
- G_KEY_FILE_NONE,
|
||
|
- NULL))
|
||
|
- {
|
||
|
- g_warning ("Error loading key-file %s: %s", filename, error->message);
|
||
|
- g_error_free (error);
|
||
|
- error = NULL;
|
||
|
- g_key_file_free (key_file);
|
||
|
- }
|
||
|
- else
|
||
|
- {
|
||
|
- source->priv->key_files = g_list_prepend (source->priv->key_files, key_file);
|
||
|
- }
|
||
|
-
|
||
|
- g_free (filename);
|
||
|
- }
|
||
|
-
|
||
|
- source->priv->key_files = g_list_reverse (source->priv->key_files);
|
||
|
- source->priv->has_data = TRUE;
|
||
|
-
|
||
|
- out:
|
||
|
- g_list_foreach (files, (GFunc) g_object_unref, NULL);
|
||
|
- g_list_free (files);
|
||
|
-}
|
||
|
-
|
||
|
-static GKeyFile *
|
||
|
-find_key_file (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error)
|
||
|
-{
|
||
|
- GList *l;
|
||
|
- GKeyFile *ret;
|
||
|
-
|
||
|
- ret = NULL;
|
||
|
-
|
||
|
- for (l = source->priv->key_files; l != NULL; l = l->next)
|
||
|
- {
|
||
|
- GKeyFile *key_file = l->data;
|
||
|
-
|
||
|
- if (g_key_file_has_key (key_file, group, key, NULL))
|
||
|
- {
|
||
|
- ret = key_file;
|
||
|
- goto out;
|
||
|
- }
|
||
|
- }
|
||
|
-
|
||
|
- out:
|
||
|
- if (ret == NULL)
|
||
|
- g_set_error_literal (error,
|
||
|
- G_KEY_FILE_ERROR,
|
||
|
- G_KEY_FILE_ERROR_NOT_FOUND,
|
||
|
- "Group/Key combo not found in any config file");
|
||
|
- return ret;
|
||
|
-}
|
||
|
-
|
||
|
-/**
|
||
|
- * polkit_backend_config_source_get_integer:
|
||
|
- * @source: A PolkitBackendConfigSource.
|
||
|
- * @group: A group name.
|
||
|
- * @key: A key name.
|
||
|
- * @error: Return location for error or %NULL.
|
||
|
- *
|
||
|
- * Gets the value associated with @key under @group_name.
|
||
|
- *
|
||
|
- * Returns: The value or 0 if @error is set.
|
||
|
- **/
|
||
|
-gint
|
||
|
-polkit_backend_config_source_get_integer (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error)
|
||
|
-{
|
||
|
- GKeyFile *key_file;
|
||
|
-
|
||
|
- polkit_backend_config_source_ensure (source);
|
||
|
-
|
||
|
- key_file = find_key_file (source, group, key, error);
|
||
|
- if (key_file == NULL)
|
||
|
- return 0;
|
||
|
-
|
||
|
- return g_key_file_get_integer (key_file, group, key, error);
|
||
|
-}
|
||
|
-
|
||
|
-/**
|
||
|
- * polkit_backend_config_source_get_boolean:
|
||
|
- * @source: A PolkitBackendConfigSource.
|
||
|
- * @group: A group name.
|
||
|
- * @key: A key name.
|
||
|
- * @error: Return location for error or %NULL.
|
||
|
- *
|
||
|
- * Gets the value associated with @key under @group_name.
|
||
|
- *
|
||
|
- * Returns: The value or %FALSE if @error is set.
|
||
|
- **/
|
||
|
-gboolean
|
||
|
-polkit_backend_config_source_get_boolean (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error)
|
||
|
-{
|
||
|
- GKeyFile *key_file;
|
||
|
-
|
||
|
- polkit_backend_config_source_ensure (source);
|
||
|
-
|
||
|
- key_file = find_key_file (source, group, key, error);
|
||
|
- if (key_file == NULL)
|
||
|
- return FALSE;
|
||
|
-
|
||
|
- return g_key_file_get_boolean (key_file, group, key, error);
|
||
|
-}
|
||
|
-
|
||
|
-/**
|
||
|
- * polkit_backend_config_source_get_double:
|
||
|
- * @source: A PolkitBackendConfigSource.
|
||
|
- * @group: A group name.
|
||
|
- * @key: A key name.
|
||
|
- * @error: Return location for error or %NULL.
|
||
|
- *
|
||
|
- * Gets the value associated with @key under @group_name.
|
||
|
- *
|
||
|
- * Returns: The value or 0.0 if @error is set.
|
||
|
- **/
|
||
|
-gdouble
|
||
|
-polkit_backend_config_source_get_double (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error)
|
||
|
-{
|
||
|
- GKeyFile *key_file;
|
||
|
-
|
||
|
- polkit_backend_config_source_ensure (source);
|
||
|
-
|
||
|
- key_file = find_key_file (source, group, key, error);
|
||
|
- if (key_file == NULL)
|
||
|
- return 0.0;
|
||
|
-
|
||
|
- return g_key_file_get_double (key_file, group, key, error);
|
||
|
-}
|
||
|
-
|
||
|
-/**
|
||
|
- * polkit_backend_config_source_get_string:
|
||
|
- * @source: A PolkitBackendConfigSource.
|
||
|
- * @group: A group name.
|
||
|
- * @key: A key name.
|
||
|
- * @error: Return location for error or %NULL.
|
||
|
- *
|
||
|
- * Gets the value associated with @key under @group_name.
|
||
|
- *
|
||
|
- * Returns: The value or %NULL if @error is set.
|
||
|
- **/
|
||
|
-gchar *
|
||
|
-polkit_backend_config_source_get_string (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error)
|
||
|
-{
|
||
|
- GKeyFile *key_file;
|
||
|
-
|
||
|
- polkit_backend_config_source_ensure (source);
|
||
|
-
|
||
|
- key_file = find_key_file (source, group, key, error);
|
||
|
- if (key_file == NULL)
|
||
|
- return NULL;
|
||
|
-
|
||
|
- return g_key_file_get_string (key_file, group, key, error);
|
||
|
-}
|
||
|
-
|
||
|
-/**
|
||
|
- * polkit_backend_config_source_get_string_list:
|
||
|
- * @source: A PolkitBackendConfigSource.
|
||
|
- * @group: A group name.
|
||
|
- * @key: A key name.
|
||
|
- * @error: Return location for error or %NULL.
|
||
|
- *
|
||
|
- * Gets the values associated with @key under @group_name.
|
||
|
- *
|
||
|
- * Returns: The value or %NULL if @error is set.
|
||
|
- **/
|
||
|
-gchar **
|
||
|
-polkit_backend_config_source_get_string_list (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error)
|
||
|
-{
|
||
|
- GKeyFile *key_file;
|
||
|
-
|
||
|
- polkit_backend_config_source_ensure (source);
|
||
|
-
|
||
|
- key_file = find_key_file (source, group, key, error);
|
||
|
- if (key_file == NULL)
|
||
|
- return NULL;
|
||
|
-
|
||
|
- return g_key_file_get_string_list (key_file, group, key, NULL, error);
|
||
|
-}
|
||
|
diff --git a/src/polkitbackend/polkitbackendconfigsource.h b/src/polkitbackend/polkitbackendconfigsource.h
|
||
|
deleted file mode 100644
|
||
|
index f9a48c8..0000000
|
||
|
--- a/src/polkitbackend/polkitbackendconfigsource.h
|
||
|
+++ /dev/null
|
||
|
@@ -1,98 +0,0 @@
|
||
|
-/*
|
||
|
- * Copyright (C) 2008 Red Hat, Inc.
|
||
|
- *
|
||
|
- * This library is free software; you can redistribute it and/or
|
||
|
- * modify it under the terms of the GNU Lesser General Public
|
||
|
- * License as published by the Free Software Foundation; either
|
||
|
- * version 2 of the License, or (at your option) any later version.
|
||
|
- *
|
||
|
- * This library is distributed in the hope that it will be useful,
|
||
|
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||
|
- * Lesser General Public License for more details.
|
||
|
- *
|
||
|
- * You should have received a copy of the GNU Lesser General
|
||
|
- * Public License along with this library; if not, write to the
|
||
|
- * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||
|
- * Boston, MA 02111-1307, USA.
|
||
|
- *
|
||
|
- * Author: David Zeuthen <davidz@redhat.com>
|
||
|
- */
|
||
|
-
|
||
|
-#if !defined (_POLKIT_BACKEND_COMPILATION) || defined(_POLKIT_BACKEND_INSIDE_POLKIT_BACKEND_H)
|
||
|
-#error "This is a private header file."
|
||
|
-#endif
|
||
|
-
|
||
|
-#ifndef __POLKIT_BACKEND_CONFIG_SOURCE_H
|
||
|
-#define __POLKIT_BACKEND_CONFIG_SOURCE_H
|
||
|
-
|
||
|
-#include <glib-object.h>
|
||
|
-#include <gio/gio.h>
|
||
|
-#include <polkitbackend/polkitbackendtypes.h>
|
||
|
-
|
||
|
-G_BEGIN_DECLS
|
||
|
-
|
||
|
-#define POLKIT_BACKEND_TYPE_CONFIG_SOURCE (polkit_backend_config_source_get_type ())
|
||
|
-#define POLKIT_BACKEND_CONFIG_SOURCE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), POLKIT_BACKEND_TYPE_CONFIG_SOURCE, PolkitBackendConfigSource))
|
||
|
-#define POLKIT_BACKEND_CONFIG_SOURCE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), POLKIT_BACKEND_TYPE_CONFIG_SOURCE, PolkitBackendConfigSourceClass))
|
||
|
-#define POLKIT_BACKEND_CONFIG_SOURCE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), POLKIT_BACKEND_TYPE_CONFIG_SOURCE,PolkitBackendConfigSourceClass))
|
||
|
-#define POLKIT_BACKEND_IS_CONFIG_SOURCE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), POLKIT_BACKEND_TYPE_CONFIG_SOURCE))
|
||
|
-#define POLKIT_BACKEND_IS_CONFIG_SOURCE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), POLKIT_BACKEND_TYPE_CONFIG_SOURCE))
|
||
|
-
|
||
|
-typedef struct _PolkitBackendConfigSource PolkitBackendConfigSource;
|
||
|
-typedef struct _PolkitBackendConfigSourceClass PolkitBackendConfigSourceClass;
|
||
|
-typedef struct _PolkitBackendConfigSourcePrivate PolkitBackendConfigSourcePrivate;
|
||
|
-
|
||
|
-struct _PolkitBackendConfigSource
|
||
|
-{
|
||
|
- GObject parent_instance;
|
||
|
- PolkitBackendConfigSourcePrivate *priv;
|
||
|
-};
|
||
|
-
|
||
|
-struct _PolkitBackendConfigSourceClass
|
||
|
-{
|
||
|
- /*< public >*/
|
||
|
- GObjectClass parent_class;
|
||
|
-
|
||
|
- /* Signals */
|
||
|
- void (*changed) (PolkitBackendConfigSource *config_source);
|
||
|
-
|
||
|
- /*< private >*/
|
||
|
- /* Padding for future expansion */
|
||
|
- void (*_polkit_reserved1) (void);
|
||
|
- void (*_polkit_reserved2) (void);
|
||
|
- void (*_polkit_reserved3) (void);
|
||
|
- void (*_polkit_reserved4) (void);
|
||
|
- void (*_polkit_reserved5) (void);
|
||
|
- void (*_polkit_reserved6) (void);
|
||
|
- void (*_polkit_reserved7) (void);
|
||
|
- void (*_polkit_reserved8) (void);
|
||
|
-};
|
||
|
-
|
||
|
-GType polkit_backend_config_source_get_type (void) G_GNUC_CONST;
|
||
|
-PolkitBackendConfigSource *polkit_backend_config_source_new (GFile *directory);
|
||
|
-gint polkit_backend_config_source_get_integer (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error);
|
||
|
-gboolean polkit_backend_config_source_get_boolean (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error);
|
||
|
-gdouble polkit_backend_config_source_get_double (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error);
|
||
|
-gchar *polkit_backend_config_source_get_string (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error);
|
||
|
-gchar **polkit_backend_config_source_get_string_list (PolkitBackendConfigSource *source,
|
||
|
- const gchar *group,
|
||
|
- const gchar *key,
|
||
|
- GError **error);
|
||
|
-
|
||
|
-G_END_DECLS
|
||
|
-
|
||
|
-#endif /* __POLKIT_BACKEND_CONFIG_SOURCE_H */
|
||
|
-
|
||
|
diff --git a/src/polkitbackend/polkitbackendinteractiveauthority.c b/src/polkitbackend/polkitbackendinteractiveauthority.c
|
||
|
index 967b764..ccfd608 100644
|
||
|
--- a/src/polkitbackend/polkitbackendinteractiveauthority.c
|
||
|
+++ b/src/polkitbackend/polkitbackendinteractiveauthority.c
|
||
|
@@ -36,7 +36,6 @@
|
||
|
#include "polkitbackendinteractiveauthority.h"
|
||
|
#include "polkitbackendactionpool.h"
|
||
|
#include "polkitbackendsessionmonitor.h"
|
||
|
-#include "polkitbackendconfigsource.h"
|
||
|
|
||
|
#include <polkit/polkitprivate.h>
|
||
|
|
||
|
--
|
||
|
2.12.1
|
||
|
|