summaryrefslogtreecommitdiff
path: root/src/daemon.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/daemon.c')
-rw-r--r--src/daemon.c348
1 files changed, 179 insertions, 169 deletions
diff --git a/src/daemon.c b/src/daemon.c
index 882bc26..df6810e 100644
--- a/src/daemon.c
+++ b/src/daemon.c
@@ -56,39 +56,45 @@
#define PATH_SHADOW "shadow"
#define PATH_GROUP "/etc/group"
-enum {
+enum
+{
PROP_0,
PROP_DAEMON_VERSION
};
-typedef struct {
+typedef struct
+{
GDBusConnection *bus_connection;
- GHashTable *users;
- gsize number_of_normal_users;
- GList *explicitly_requested_users;
+ GHashTable *users;
+ gsize number_of_normal_users;
+ GList *explicitly_requested_users;
- User *autologin;
+ User *autologin;
- GFileMonitor *passwd_monitor;
- GFileMonitor *shadow_monitor;
- GFileMonitor *group_monitor;
- GFileMonitor *gdm_monitor;
- GFileMonitor *wtmp_monitor;
+ GFileMonitor *passwd_monitor;
+ GFileMonitor *shadow_monitor;
+ GFileMonitor *group_monitor;
+ GFileMonitor *gdm_monitor;
+ GFileMonitor *wtmp_monitor;
- GQueue *pending_list_cached_users;
+ GQueue *pending_list_cached_users;
- guint reload_id;
- guint autologin_id;
+ guint reload_id;
+ guint autologin_id;
PolkitAuthority *authority;
- GHashTable *extension_ifaces;
+ GHashTable *extension_ifaces;
} DaemonPrivate;
-typedef struct passwd * (* EntryGeneratorFunc) (Daemon *, GHashTable *, gpointer *, struct spwd **shadow_entry);
+typedef struct passwd * (* EntryGeneratorFunc) (Daemon *,
+ GHashTable *,
+ gpointer *,
+ struct spwd **shadow_entry);
-typedef struct {
- Daemon *daemon;
+typedef struct
+{
+ Daemon *daemon;
GDBusMethodInvocation *context;
} ListUserData;
@@ -104,11 +110,11 @@ G_DEFINE_AUTOPTR_CLEANUP_FUNC (Daemon, g_object_unref)
static const GDBusErrorEntry accounts_error_entries[] =
{
- { ERROR_FAILED, "org.freedesktop.Accounts.Error.Failed" },
- { ERROR_USER_EXISTS, "org.freedesktop.Accounts.Error.UserExists" },
+ { ERROR_FAILED, "org.freedesktop.Accounts.Error.Failed" },
+ { ERROR_USER_EXISTS, "org.freedesktop.Accounts.Error.UserExists" },
{ ERROR_USER_DOES_NOT_EXIST, "org.freedesktop.Accounts.Error.UserDoesNotExist" },
- { ERROR_PERMISSION_DENIED, "org.freedesktop.Accounts.Error.PermissionDenied" },
- { ERROR_NOT_SUPPORTED, "org.freedesktop.Accounts.Error.NotSupported" }
+ { ERROR_PERMISSION_DENIED, "org.freedesktop.Accounts.Error.PermissionDenied" },
+ { ERROR_NOT_SUPPORTED, "org.freedesktop.Accounts.Error.NotSupported" }
};
GQuark
@@ -128,23 +134,22 @@ error_quark (void)
GType
error_get_type (void)
{
- static GType etype = 0;
-
- if (etype == 0)
- {
- static const GEnumValue values[] =
- {
- ENUM_ENTRY (ERROR_FAILED, "Failed"),
- ENUM_ENTRY (ERROR_USER_EXISTS, "UserExists"),
- ENUM_ENTRY (ERROR_USER_DOES_NOT_EXIST, "UserDoesntExist"),
- ENUM_ENTRY (ERROR_PERMISSION_DENIED, "PermissionDenied"),
- ENUM_ENTRY (ERROR_NOT_SUPPORTED, "NotSupported"),
- { 0, 0, 0 }
- };
- g_assert (NUM_ERRORS == G_N_ELEMENTS (values) - 1);
- etype = g_enum_register_static ("Error", values);
- }
- return etype;
+ static GType etype = 0;
+
+ if (etype == 0) {
+ static const GEnumValue values[] =
+ {
+ ENUM_ENTRY (ERROR_FAILED, "Failed"),
+ ENUM_ENTRY (ERROR_USER_EXISTS, "UserExists"),
+ ENUM_ENTRY (ERROR_USER_DOES_NOT_EXIST, "UserDoesntExist"),
+ ENUM_ENTRY (ERROR_PERMISSION_DENIED, "PermissionDenied"),
+ ENUM_ENTRY (ERROR_NOT_SUPPORTED, "NotSupported"),
+ { 0, 0, 0}
+ };
+ g_assert (NUM_ERRORS == G_N_ELEMENTS (values) - 1);
+ etype = g_enum_register_static ("Error", values);
+ }
+ return etype;
}
#ifndef HAVE_FGETPWENT
@@ -176,13 +181,15 @@ entry_generator_fgetpwent (Daemon *daemon,
{
struct passwd *pwent;
- struct {
+ struct
+ {
struct spwd spbuf;
- char buf[1024];
+ char buf[1024];
} *shadow_entry_buffers;
- struct {
- FILE *fp;
+ struct
+ {
+ FILE *fp;
GHashTable *users;
} *generator_state;
@@ -206,9 +213,9 @@ entry_generator_fgetpwent (Daemon *daemon,
do {
int ret = 0;
- shadow_entry_buffers = g_malloc0 (sizeof (*shadow_entry_buffers));
+ shadow_entry_buffers = g_malloc0 (sizeof(*shadow_entry_buffers));
- ret = fgetspent_r (fp, &shadow_entry_buffers->spbuf, shadow_entry_buffers->buf, sizeof (shadow_entry_buffers->buf), &shadow_entry);
+ ret = fgetspent_r (fp, &shadow_entry_buffers->spbuf, shadow_entry_buffers->buf, sizeof(shadow_entry_buffers->buf), &shadow_entry);
if (ret == 0) {
g_hash_table_insert (shadow_users, g_strdup (shadow_entry->sp_namp), shadow_entry_buffers);
} else {
@@ -235,7 +242,7 @@ entry_generator_fgetpwent (Daemon *daemon,
return NULL;
}
- generator_state = g_malloc0 (sizeof (*generator_state));
+ generator_state = g_malloc0 (sizeof(*generator_state));
generator_state->fp = fp;
generator_state->users = shadow_users;
@@ -251,7 +258,7 @@ entry_generator_fgetpwent (Daemon *daemon,
shadow_entry_buffers = g_hash_table_lookup (generator_state->users, pwent->pw_name);
if (shadow_entry_buffers != NULL) {
- *spent = &shadow_entry_buffers->spbuf;
+ *spent = &shadow_entry_buffers->spbuf;
}
/* Skip system users... */
@@ -281,7 +288,8 @@ entry_generator_cachedir (Daemon *daemon,
struct spwd **shadow_entry)
{
struct passwd *pwent;
- g_autoptr(GError) error = NULL;
+
+ g_autoptr (GError) error = NULL;
gboolean regular;
GHashTableIter iter;
gpointer key, value;
@@ -326,10 +334,9 @@ entry_generator_cachedir (Daemon *daemon,
} else if (errno == 0) {
g_debug ("user '%s' in cache dir but not present on system, removing", name);
remove_cache_files (name);
- }
- else {
+ } else {
g_warning ("failed to check if user '%s' in cache dir is present on system: %s",
- name, g_strerror (errno));
+ name, g_strerror (errno));
}
}
}
@@ -396,10 +403,10 @@ entry_generator_requested_users (Daemon *daemon,
}
static void
-load_entries (Daemon *daemon,
- GHashTable *users,
- gboolean explicitly_requested,
- EntryGeneratorFunc entry_generator)
+load_entries (Daemon *daemon,
+ GHashTable *users,
+ gboolean explicitly_requested,
+ EntryGeneratorFunc entry_generator)
{
DaemonPrivate *priv = daemon_get_instance_private (daemon);
gpointer generator_state = NULL;
@@ -482,8 +489,9 @@ reload_users (Daemon *daemon)
load_entries (daemon, users, FALSE, entry_generator_fgetpwent);
local = g_hash_table_new (g_str_hash, g_str_equal);
g_hash_table_iter_init (&iter, users);
- while (g_hash_table_iter_next (&iter, &name, NULL))
+ while (g_hash_table_iter_next (&iter, &name, NULL)) {
g_hash_table_add (local, name);
+ }
/* Now add/update users from other sources, possibly non-local */
load_entries (daemon, users, TRUE, entry_generator_cachedir);
@@ -568,10 +576,10 @@ reload_users_timeout (Daemon *daemon)
return FALSE;
}
-static gboolean load_autologin (Daemon *daemon,
- gchar **name,
- gboolean *enabled,
- GError **error);
+static gboolean load_autologin (Daemon *daemon,
+ gchar **name,
+ gboolean *enabled,
+ GError **error);
static gboolean
reload_autologin_timeout (Daemon *daemon)
@@ -580,7 +588,8 @@ reload_autologin_timeout (Daemon *daemon)
AccountsAccounts *accounts = ACCOUNTS_ACCOUNTS (daemon);
gboolean enabled;
g_autofree gchar *name = NULL;
- g_autoptr(GError) error = NULL;
+
+ g_autoptr (GError) error = NULL;
User *user = NULL;
priv->autologin_id = 0;
@@ -610,8 +619,7 @@ reload_autologin_timeout (Daemon *daemon)
priv->autologin = g_object_ref (user);
g_signal_emit_by_name (priv->autologin, "changed", 0);
}
- }
- else {
+ } else {
g_debug ("automatic login is disabled");
accounts_accounts_set_automatic_login_users (accounts, NULL);
}
@@ -632,7 +640,7 @@ queue_reload_users_eventually (Daemon *daemon)
* parsing doesn't hammer the cpu if the user is logging in
* and out in a continuous loop.
*/
- priv->reload_id = g_timeout_add_seconds (10, (GSourceFunc)reload_users_timeout, daemon);
+ priv->reload_id = g_timeout_add_seconds (10, (GSourceFunc) reload_users_timeout, daemon);
}
static void
@@ -647,7 +655,7 @@ queue_reload_users_soon (Daemon *daemon)
/* we wait half a second or so in case /etc/passwd and
* /etc/shadow are changed at the same time, or repeatedly.
*/
- priv->reload_id = g_timeout_add (500, (GSourceFunc)reload_users_timeout, daemon);
+ priv->reload_id = g_timeout_add (500, (GSourceFunc) reload_users_timeout, daemon);
}
static void
@@ -659,7 +667,7 @@ queue_reload_users (Daemon *daemon)
return;
}
- priv->reload_id = g_idle_add ((GSourceFunc)reload_users_timeout, daemon);
+ priv->reload_id = g_idle_add ((GSourceFunc) reload_users_timeout, daemon);
}
static void
@@ -671,15 +679,15 @@ queue_reload_autologin (Daemon *daemon)
return;
}
- priv->autologin_id = g_idle_add ((GSourceFunc)reload_autologin_timeout, daemon);
+ priv->autologin_id = g_idle_add ((GSourceFunc) reload_autologin_timeout, daemon);
}
static void
-on_users_monitor_changed (GFileMonitor *monitor,
- GFile *file,
- GFile *other_file,
- GFileMonitorEvent event_type,
- Daemon *daemon)
+on_users_monitor_changed (GFileMonitor *monitor,
+ GFile *file,
+ GFile *other_file,
+ GFileMonitorEvent event_type,
+ Daemon *daemon)
{
DaemonPrivate *priv = daemon_get_instance_private (daemon);
@@ -696,11 +704,11 @@ on_users_monitor_changed (GFileMonitor *monitor,
}
static void
-on_gdm_monitor_changed (GFileMonitor *monitor,
- GFile *file,
- GFile *other_file,
- GFileMonitorEvent event_type,
- Daemon *daemon)
+on_gdm_monitor_changed (GFileMonitor *monitor,
+ GFile *file,
+ GFile *other_file,
+ GFileMonitorEvent event_type,
+ Daemon *daemon)
{
if (event_type != G_FILE_MONITOR_EVENT_CHANGED &&
event_type != G_FILE_MONITOR_EVENT_CREATED) {
@@ -710,20 +718,20 @@ on_gdm_monitor_changed (GFileMonitor *monitor,
queue_reload_autologin (daemon);
}
-typedef void FileChangeCallback (GFileMonitor *monitor,
- GFile *file,
- GFile *other_file,
- GFileMonitorEvent event_type,
- Daemon *daemon);
+typedef void FileChangeCallback (GFileMonitor *monitor,
+ GFile *file,
+ GFile *other_file,
+ GFileMonitorEvent event_type,
+ Daemon *daemon);
static GFileMonitor *
setup_monitor (Daemon *daemon,
const gchar *path,
FileChangeCallback *callback)
{
- g_autoptr(GFile) file = NULL;
+ g_autoptr (GFile) file = NULL;
GFileMonitor *monitor;
- g_autoptr(GError) error = NULL;
+ g_autoptr (GError) error = NULL;
if (!path) {
return NULL;
@@ -813,7 +821,8 @@ static gboolean
register_accounts_daemon (Daemon *daemon)
{
DaemonPrivate *priv = daemon_get_instance_private (daemon);
- g_autoptr(GError) error = NULL;
+
+ g_autoptr (GError) error = NULL;
priv->authority = polkit_authority_get_sync (NULL, &error);
if (priv->authority == NULL) {
@@ -844,7 +853,7 @@ register_accounts_daemon (Daemon *daemon)
Daemon *
daemon_new (void)
{
- g_autoptr(Daemon) daemon = NULL;
+ g_autoptr (Daemon) daemon = NULL;
daemon = DAEMON (g_object_new (TYPE_DAEMON, NULL));
@@ -902,7 +911,7 @@ daemon_local_find_user_by_id (Daemon *daemon,
pwent = getpwuid (uid);
if (pwent == NULL) {
- g_debug ("unable to lookup uid %d", (int)uid);
+ g_debug ("unable to lookup uid %d", (int) uid);
return NULL;
}
@@ -952,6 +961,7 @@ User *
daemon_local_get_automatic_login_user (Daemon *daemon)
{
DaemonPrivate *priv = daemon_get_instance_private (daemon);
+
return priv->autologin;
}
@@ -960,16 +970,15 @@ daemon_find_user_by_id (AccountsAccounts *accounts,
GDBusMethodInvocation *context,
gint64 uid)
{
- Daemon *daemon = (Daemon*)accounts;
+ Daemon *daemon = (Daemon *) accounts;
User *user;
user = daemon_local_find_user_by_id (daemon, uid);
if (user) {
accounts_accounts_complete_find_user_by_id (NULL, context, user_get_object_path (user));
- }
- else {
- throw_error (context, ERROR_FAILED, "Failed to look up user with uid %d.", (int)uid);
+ } else {
+ throw_error (context, ERROR_FAILED, "Failed to look up user with uid %d.", (int) uid);
}
return TRUE;
@@ -980,15 +989,14 @@ daemon_find_user_by_name (AccountsAccounts *accounts,
GDBusMethodInvocation *context,
const gchar *name)
{
- Daemon *daemon = (Daemon*)accounts;
+ Daemon *daemon = (Daemon *) accounts;
User *user;
user = daemon_local_find_user_by_name (daemon, name);
if (user) {
accounts_accounts_complete_find_user_by_name (NULL, context, user_get_object_path (user));
- }
- else {
+ } else {
throw_error (context, ERROR_FAILED, "Failed to look up user with name %s.", name);
}
@@ -1020,7 +1028,8 @@ static void
finish_list_cached_users (ListUserData *data)
{
DaemonPrivate *priv = daemon_get_instance_private (data->daemon);
- g_autoptr(GPtrArray) object_paths = NULL;
+
+ g_autoptr (GPtrArray) object_paths = NULL;
GHashTableIter iter;
gpointer key, value;
@@ -1058,7 +1067,7 @@ static gboolean
daemon_list_cached_users (AccountsAccounts *accounts,
GDBusMethodInvocation *context)
{
- Daemon *daemon = (Daemon*)accounts;
+ Daemon *daemon = (Daemon *) accounts;
DaemonPrivate *priv = daemon_get_instance_private (daemon);
ListUserData *data;
@@ -1067,8 +1076,7 @@ daemon_list_cached_users (AccountsAccounts *accounts,
if (priv->reload_id > 0) {
/* reload pending -- finish call in reload_users_timeout */
g_queue_push_tail (priv->pending_list_cached_users, data);
- }
- else {
+ } else {
finish_list_cached_users (data);
}
@@ -1078,7 +1086,7 @@ daemon_list_cached_users (AccountsAccounts *accounts,
static int
sort_languages (gconstpointer element_1,
gconstpointer element_2,
- GHashTable *language_frequency_map)
+ GHashTable *language_frequency_map)
{
const char *language_1 = *(const char **) element_1;
const char *language_2 = *(const char **) element_2;
@@ -1098,12 +1106,14 @@ static gboolean
daemon_get_users_languages (AccountsAccounts *accounts,
GDBusMethodInvocation *context)
{
- Daemon *daemon = (Daemon*)accounts;
+ Daemon *daemon = (Daemon *) accounts;
DaemonPrivate *priv = daemon_get_instance_private (daemon);
- g_autoptr(GHashTable) language_frequency_map = NULL;
+
+ g_autoptr (GHashTable) language_frequency_map = NULL;
GHashTableIter users_iter, language_frequency_map_iter;
gpointer key, value;
- g_autoptr(GPtrArray) languages_array = NULL;
+
+ g_autoptr (GPtrArray) languages_array = NULL;
const char *system_locale;
language_frequency_map = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
@@ -1156,7 +1166,7 @@ daemon_get_users_languages (AccountsAccounts *accounts,
static const gchar *
daemon_get_daemon_version (AccountsAccounts *object)
{
- return VERSION;
+ return VERSION;
}
static void
@@ -1175,10 +1185,11 @@ cache_user (Daemon *daemon,
}
}
-typedef struct {
+typedef struct
+{
gchar *user_name;
gchar *real_name;
- gint account_type;
+ gint account_type;
} CreateUserData;
static void
@@ -1200,7 +1211,8 @@ daemon_create_user_authorized_cb (Daemon *daemon,
{
CreateUserData *cd = data;
User *user;
- g_autoptr(GError) error = NULL;
+
+ g_autoptr (GError) error = NULL;
const gchar *argv[9];
g_autofree gchar *admin_groups = NULL;
@@ -1216,13 +1228,13 @@ daemon_create_user_authorized_cb (Daemon *daemon,
argv[2] = "-c";
argv[3] = cd->real_name;
if (cd->account_type == ACCOUNT_TYPE_ADMINISTRATOR) {
- g_auto(GStrv) admin_groups_array = NULL;
- g_autoptr(GStrvBuilder) admin_groups_builder = g_strv_builder_new ();
+ g_auto (GStrv) admin_groups_array = NULL;
+ g_autoptr (GStrvBuilder) admin_groups_builder = g_strv_builder_new ();
g_strv_builder_add (admin_groups_builder, ADMIN_GROUP);
if (EXTRA_ADMIN_GROUPS != NULL && EXTRA_ADMIN_GROUPS[0] != '\0') {
- g_auto(GStrv) extra_admin_groups = NULL;
+ g_auto (GStrv) extra_admin_groups = NULL;
extra_admin_groups = g_strsplit (EXTRA_ADMIN_GROUPS, ",", 0);
for (gsize i = 0; extra_admin_groups[i] != NULL; i++) {
@@ -1240,13 +1252,11 @@ daemon_create_user_authorized_cb (Daemon *daemon,
argv[6] = "--";
argv[7] = cd->user_name;
argv[8] = NULL;
- }
- else if (cd->account_type == ACCOUNT_TYPE_STANDARD) {
+ } else if (cd->account_type == ACCOUNT_TYPE_STANDARD) {
argv[4] = "--";
argv[5] = cd->user_name;
argv[6] = NULL;
- }
- else {
+ } else {
throw_error (context, ERROR_FAILED, "Don't know how to add user of type %d", cd->account_type);
return;
}
@@ -1272,7 +1282,7 @@ daemon_create_user (AccountsAccounts *accounts,
const gchar *real_name,
gint account_type)
{
- Daemon *daemon = (Daemon*)accounts;
+ Daemon *daemon = (Daemon *) accounts;
CreateUserData *data;
data = g_new0 (CreateUserData, 1);
@@ -1286,7 +1296,7 @@ daemon_create_user (AccountsAccounts *accounts,
daemon_create_user_authorized_cb,
context,
data,
- (GDestroyNotify)create_data_free);
+ (GDestroyNotify) create_data_free);
return TRUE;
}
@@ -1298,7 +1308,7 @@ daemon_cache_user_authorized_cb (Daemon *daemon,
gpointer data)
{
const gchar *user_name = data;
- User *user;
+ User *user;
sys_log (context, "cache user '%s'", user_name);
@@ -1321,7 +1331,7 @@ daemon_cache_user (AccountsAccounts *accounts,
GDBusMethodInvocation *context,
const gchar *user_name)
{
- Daemon *daemon = (Daemon*)accounts;
+ Daemon *daemon = (Daemon *) accounts;
/* Can't have a slash in the user name */
if (strchr (user_name, '/') != NULL) {
@@ -1349,7 +1359,7 @@ daemon_uncache_user_authorized_cb (Daemon *daemon,
gpointer data)
{
const gchar *user_name = data;
- User *user;
+ User *user;
sys_log (context, "uncache user '%s'", user_name);
@@ -1378,7 +1388,7 @@ daemon_uncache_user (AccountsAccounts *accounts,
GDBusMethodInvocation *context,
const gchar *user_name)
{
- Daemon *daemon = (Daemon*)accounts;
+ Daemon *daemon = (Daemon *) accounts;
daemon_local_check_auth (daemon,
NULL,
@@ -1391,8 +1401,9 @@ daemon_uncache_user (AccountsAccounts *accounts,
return TRUE;
}
-typedef struct {
- uid_t uid;
+typedef struct
+{
+ uid_t uid;
gboolean remove_files;
} DeleteUserData;
@@ -1405,7 +1416,8 @@ daemon_delete_user_authorized_cb (Daemon *daemon,
{
DaemonPrivate *priv = daemon_get_instance_private (daemon);
DeleteUserData *ud = data;
- g_autoptr(GError) error = NULL;
+
+ g_autoptr (GError) error = NULL;
struct passwd *pwent;
const gchar *argv[6];
const gchar *homedir;
@@ -1451,8 +1463,7 @@ daemon_delete_user_authorized_cb (Daemon *daemon,
argv[3] = "--";
argv[4] = pwent->pw_name;
argv[5] = NULL;
- }
- else {
+ } else {
argv[1] = "-f";
argv[2] = "--";
argv[3] = pwent->pw_name;
@@ -1474,16 +1485,16 @@ daemon_delete_user (AccountsAccounts *accounts,
gint64 uid,
gboolean remove_files)
{
- Daemon *daemon = (Daemon*)accounts;
+ Daemon *daemon = (Daemon *) accounts;
DeleteUserData *data;
- if ((uid_t)uid == 0) {
+ if ((uid_t) uid == 0) {
throw_error (context, ERROR_FAILED, "Refuse to delete root user");
return TRUE;
}
data = g_new0 (DeleteUserData, 1);
- data->uid = (uid_t)uid;
+ data->uid = (uid_t) uid;
data->remove_files = remove_files;
daemon_local_check_auth (daemon,
@@ -1492,18 +1503,19 @@ daemon_delete_user (AccountsAccounts *accounts,
daemon_delete_user_authorized_cb,
context,
data,
- (GDestroyNotify)g_free);
+ (GDestroyNotify) g_free);
return TRUE;
}
-typedef struct {
- Daemon *daemon;
- User *user;
- AuthorizedCallback authorized_cb;
+typedef struct
+{
+ Daemon *daemon;
+ User *user;
+ AuthorizedCallback authorized_cb;
GDBusMethodInvocation *context;
- gpointer data;
- GDestroyNotify destroy_notify;
+ gpointer data;
+ GDestroyNotify destroy_notify;
} CheckAuthData;
static void
@@ -1527,21 +1539,19 @@ check_auth_cb (PolkitAuthority *authority,
{
CheckAuthData *cad = data;
PolkitAuthorizationResult *result;
- g_autoptr(GError) error = NULL;
+
+ g_autoptr (GError) error = NULL;
gboolean is_authorized = FALSE;
result = polkit_authority_check_authorization_finish (authority, res, &error);
if (error) {
throw_error (cad->context, ERROR_PERMISSION_DENIED, "Not authorized: %s", error->message);
- }
- else {
+ } else {
if (polkit_authorization_result_get_is_authorized (result)) {
is_authorized = TRUE;
- }
- else if (polkit_authorization_result_get_is_challenge (result)) {
+ } else if (polkit_authorization_result_get_is_challenge (result)) {
throw_error (cad->context, ERROR_PERMISSION_DENIED, "Authentication is required");
- }
- else {
+ } else {
throw_error (cad->context, ERROR_PERMISSION_DENIED, "Not authorized");
}
@@ -1549,10 +1559,10 @@ check_auth_cb (PolkitAuthority *authority,
}
if (is_authorized) {
- (* cad->authorized_cb) (cad->daemon,
- cad->user,
- cad->context,
- cad->data);
+ (*cad->authorized_cb) (cad->daemon,
+ cad->user,
+ cad->context,
+ cad->data);
}
check_auth_data_free (data);
@@ -1561,18 +1571,18 @@ check_auth_cb (PolkitAuthority *authority,
static gboolean
get_allow_interaction (GDBusMethodInvocation *invocation)
{
- /* GLib 2.46 is when G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION
- * was first released.
- */
-#if GLIB_CHECK_VERSION(2, 46, 0)
- GDBusMessage *message = g_dbus_method_invocation_get_message (invocation);
- GDBusMessageFlags message_flags = g_dbus_message_get_flags (message);
- if (message_flags & G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION)
- return TRUE;
- else
- return FALSE;
+ /* GLib 2.46 is when G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION
+ * was first released.
+ */
+#if GLIB_CHECK_VERSION (2, 46, 0)
+ GDBusMessage *message = g_dbus_method_invocation_get_message (invocation);
+ GDBusMessageFlags message_flags = g_dbus_message_get_flags (message);
+ if (message_flags & G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION)
+ return TRUE;
+ else
+ return FALSE;
#else
- return TRUE;
+ return TRUE;
#endif
}
@@ -1618,12 +1628,12 @@ daemon_local_check_auth (Daemon *daemon,
}
gboolean
-load_autologin (Daemon *daemon,
- gchar **name,
- gboolean *enabled,
- GError **error)
+load_autologin (Daemon *daemon,
+ gchar **name,
+ gboolean *enabled,
+ GError **error)
{
- g_autoptr(GKeyFile) keyfile = NULL;
+ g_autoptr (GKeyFile) keyfile = NULL;
GError *local_error = NULL;
g_autofree gchar *string = NULL;
@@ -1642,8 +1652,7 @@ load_autologin (Daemon *daemon,
}
if (string != NULL && (g_ascii_strcasecmp (string, "true") == 0 || strcmp (string, "1") == 0)) {
*enabled = TRUE;
- }
- else {
+ } else {
*enabled = FALSE;
}
@@ -1662,10 +1671,10 @@ save_autologin (Daemon *daemon,
gboolean enabled,
GError **error)
{
- g_autoptr(GKeyFile) keyfile = NULL;
+ g_autoptr (GKeyFile) keyfile = NULL;
g_autofree gchar *data = NULL;
gboolean result;
- g_autoptr(GError) local_error = NULL;
+ g_autoptr (GError) local_error = NULL;
keyfile = g_key_file_new ();
if (!g_key_file_load_from_file (keyfile,
@@ -1689,10 +1698,10 @@ save_autologin (Daemon *daemon,
}
gboolean
-daemon_local_set_automatic_login (Daemon *daemon,
- User *user,
- gboolean enabled,
- GError **error)
+daemon_local_set_automatic_login (Daemon *daemon,
+ User *user,
+ gboolean enabled,
+ GError **error)
{
DaemonPrivate *priv = daemon_get_instance_private (daemon);
@@ -1726,6 +1735,7 @@ GHashTable *
daemon_get_extension_ifaces (Daemon *daemon)
{
DaemonPrivate *priv = daemon_get_instance_private (daemon);
+
return priv->extension_ifaces;
}