summaryrefslogtreecommitdiff
path: root/daemon/gdm-display.c
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2015-03-17 09:06:48 -0400
committerRay Strode <rstrode@redhat.com>2015-03-19 20:26:35 -0400
commita21fbb4acf8503dc552c74942a601c91d803939e (patch)
treeb725ca266cbb00e70ee690d8aa0476b1b3f5bc00 /daemon/gdm-display.c
parentc6674e7bcc940207969b2dcee5ab83356abf3404 (diff)
downloadgdm-a21fbb4acf8503dc552c74942a601c91d803939e.tar.gz
display: move gdm_display_get_timed_login_details to manager
The function is no longer virtualized among the display types, and it doesn't actually have a full picture of whether or not the display should do automatic/timed login so move it up to the manager, where all the information is. https://bugzilla.gnome.org/show_bug.cgi?id=746492
Diffstat (limited to 'daemon/gdm-display.c')
-rw-r--r--daemon/gdm-display.c92
1 files changed, 0 insertions, 92 deletions
diff --git a/daemon/gdm-display.c b/daemon/gdm-display.c
index b2a53a2d..20cda938 100644
--- a/daemon/gdm-display.c
+++ b/daemon/gdm-display.c
@@ -395,98 +395,6 @@ gdm_display_add_user_authorization (GdmDisplay *self,
return TRUE;
}
-void
-gdm_display_get_timed_login_details (GdmDisplay *self,
- gboolean *enabledp,
- char **usernamep,
- int *delayp)
-{
- gboolean res;
- gboolean enabled;
- int delay;
- char *username = NULL;
-
- enabled = FALSE;
- username = NULL;
- delay = 0;
-
- if (!self->priv->allow_timed_login) {
- goto out;
- }
-
-#ifdef WITH_SYSTEMD
- /* FIXME: More careful thought needs to happen before we
- * can support auto/timed login on auxilliary seats in the
- * systemd path.
- */
- if (LOGIND_RUNNING()) {
- if (g_strcmp0 (self->priv->seat_id, "seat0") != 0) {
- goto out;
- }
- }
-#endif
-
- res = gdm_settings_direct_get_boolean (GDM_KEY_AUTO_LOGIN_ENABLE, &enabled);
- if (res && enabled) {
- res = gdm_settings_direct_get_string (GDM_KEY_AUTO_LOGIN_USER, &username);
- }
-
- if (enabled && res && username != NULL && username[0] != '\0') {
- goto out;
- }
-
- g_free (username);
- username = NULL;
- enabled = FALSE;
-
- res = gdm_settings_direct_get_boolean (GDM_KEY_TIMED_LOGIN_ENABLE, &enabled);
- if (res && ! enabled) {
- goto out;
- }
-
- res = gdm_settings_direct_get_string (GDM_KEY_TIMED_LOGIN_USER, &username);
- if (res && (username == NULL || username[0] == '\0')) {
- enabled = FALSE;
- g_free (username);
- username = NULL;
- goto out;
- }
-
- delay = 0;
- res = gdm_settings_direct_get_int (GDM_KEY_TIMED_LOGIN_DELAY, &delay);
-
- if (res && delay <= 0) {
- /* we don't allow the timed login to have a zero delay */
- delay = 10;
- }
-
- out:
- if (enabled) {
- g_debug ("GdmDisplay: Got timed login details for display %s (seat %s): %d %s %d",
- self->priv->x11_display_name? self->priv->x11_display_name : "",
- self->priv->seat_id,
- enabled,
- username,
- delay);
- } else {
- g_debug ("GdmDisplay: Got timed login details for display %s (seat %s): 0",
- self->priv->x11_display_name? self->priv->x11_display_name : "",
- self->priv->seat_id);
- }
-
- if (enabledp != NULL) {
- *enabledp = enabled;
- }
- if (usernamep != NULL) {
- *usernamep = username;
- } else {
- g_free (username);
- }
- if (delayp != NULL) {
- *delayp = delay;
- }
-}
-
gboolean
gdm_display_remove_user_authorization (GdmDisplay *self,
const char *username,