summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2015-03-02 14:36:53 -0500
committerRay Strode <rstrode@redhat.com>2015-03-02 20:12:34 -0500
commit1ba239a617ac4657cce89e08522400c9320e2eb2 (patch)
tree78760af94a13a54dec61c48a53cd65e033e03208
parent27d1ae07b8734e61b4b25f8480019c4a84431619 (diff)
downloadgdm-1ba239a617ac4657cce89e08522400c9320e2eb2.tar.gz
display: drop set_up_greeter_session function
The function is ill named and ill placed. It really just returns the username of the client that's allowed to connect to the display. This commit moves the function to gdm-manager.c
-rw-r--r--daemon/gdm-display.c13
-rw-r--r--daemon/gdm-display.h3
-rw-r--r--daemon/gdm-manager.c26
3 files changed, 22 insertions, 20 deletions
diff --git a/daemon/gdm-display.c b/daemon/gdm-display.c
index 36c15c5c..171938be 100644
--- a/daemon/gdm-display.c
+++ b/daemon/gdm-display.c
@@ -1534,19 +1534,6 @@ wants_initial_setup (GdmDisplay *self)
}
void
-gdm_display_set_up_greeter_session (GdmDisplay *self,
- char **username)
-{
- g_return_if_fail (g_strcmp0 (self->priv->session_class, "greeter") == 0);
-
- if (self->priv->doing_initial_setup) {
- *username = g_strdup (INITIAL_SETUP_USERNAME);
- } else {
- *username = g_strdup (GDM_USERNAME);
- }
-}
-
-void
gdm_display_start_greeter_session (GdmDisplay *self)
{
GdmSession *session;
diff --git a/daemon/gdm-display.h b/daemon/gdm-display.h
index 472d2b7d..e95dd8f3 100644
--- a/daemon/gdm-display.h
+++ b/daemon/gdm-display.h
@@ -135,9 +135,6 @@ gboolean gdm_display_add_user_authorization (GdmDisplay *disp
gboolean gdm_display_remove_user_authorization (GdmDisplay *display,
const char *username,
GError **error);
-
-void gdm_display_set_up_greeter_session (GdmDisplay *display,
- char **username);
void gdm_display_start_greeter_session (GdmDisplay *display);
void gdm_display_stop_greeter_session (GdmDisplay *display);
diff --git a/daemon/gdm-manager.c b/daemon/gdm-manager.c
index f31fa05a..318c0c92 100644
--- a/daemon/gdm-manager.c
+++ b/daemon/gdm-manager.c
@@ -66,6 +66,8 @@
#define CK_SEAT_INTERFACE "org.freedesktop.ConsoleKit.Seat"
#define CK_SESSION_INTERFACE "org.freedesktop.ConsoleKit.Session"
+#define INITIAL_SETUP_USERNAME "gnome-initial-setup"
+
typedef struct
{
GdmManager *manager;
@@ -1491,22 +1493,39 @@ maybe_start_pending_initial_login (GdmManager *manager,
g_free (user_session_seat_id);
}
+static const char *
+get_username_for_greeter_display (GdmManager *manager,
+ GdmDisplay *display)
+{
+ gboolean doing_initial_setup = FALSE;
+
+ g_object_get (G_OBJECT (display),
+ "doing-initial-setup", &doing_initial_setup,
+ NULL);
+
+ if (doing_initial_setup) {
+ return INITIAL_SETUP_USERNAME;
+ } else {
+ return GDM_USERNAME;
+ }
+}
+
static void
set_up_greeter_session (GdmManager *manager,
GdmDisplay *display)
{
- char *allowed_user;
+ const char *allowed_user;
struct passwd *passwd_entry;
gboolean will_autologin;
will_autologin = display_should_autologin (manager, display);
if (!will_autologin) {
- gdm_display_set_up_greeter_session (display, &allowed_user);
+ allowed_user = get_username_for_greeter_display (manager, display);
} else {
g_object_set (G_OBJECT (display), "session-class", "user", NULL);
g_object_set (G_OBJECT (display), "session-type", NULL, NULL);
- allowed_user = g_strdup ("root");
+ allowed_user = "root";
}
if (!gdm_get_pwent_for_name (allowed_user, &passwd_entry)) {
@@ -1518,7 +1537,6 @@ set_up_greeter_session (GdmManager *manager,
}
create_embryonic_user_session_for_display (manager, display, passwd_entry->pw_uid);
- g_free (allowed_user);
if (!will_autologin) {
gdm_display_start_greeter_session (display);