summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHavoc Pennington <hp@redhat.com>2001-06-02 00:21:49 +0000
committerGeorge Lebl <jirka@src.gnome.org>2001-06-02 00:21:49 +0000
commit20a6d7c0939d827c32bf495654fee9b6d28564f6 (patch)
treee5347e247110fa40d9241cdb02726f03dd68a367
parent2efb4bedbba542e2eb77ad260f388a3f8b959f79 (diff)
downloadgdm-20a6d7c0939d827c32bf495654fee9b6d28564f6.tar.gz
add config keys for show/disable the sessions that are added in addition
2001-05-30 Havoc Pennington <hp@redhat.com> * daemon/gdm.h: add config keys for show/disable the sessions that are added in addition to those in /etc/X11/gdm/Sessions, so that admins can fully control the session list * config/gdm.conf.in: add abovementioned config keys * gui/gdmlogin.c (gdm_login_parse_config): honor these settings
-rw-r--r--daemon/slave.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/daemon/slave.c b/daemon/slave.c
index 8a97d022..930cdbfd 100644
--- a/daemon/slave.c
+++ b/daemon/slave.c
@@ -387,13 +387,13 @@ gdm_slave_whack_greeter (void)
sigaddset (&tmask, SIGCHLD);
sigprocmask (SIG_BLOCK, &tmask, &omask);
+ greet = FALSE;
+
/* do what you do when you quit, this will hang until the
* greeter decides to print an STX\n, meaning it can do some
* last minute cleanup */
gdm_slave_greeter_ctl_no_ret (GDM_QUIT, "");
- greet = FALSE;
-
/* Kill greeter and wait for it to die */
if (d->greetpid > 0 &&
kill (d->greetpid, SIGINT) == 0)
@@ -643,6 +643,8 @@ gdm_slave_wait_for_login (void)
login = gdm_verify_user (NULL /* username*/,
d->name,
d->type == TYPE_LOCAL);
+ gdm_debug ("gdm_slave_wait_for_login: end verify for '%s'",
+ gdm_sure_string (login));
/* Complex, make sure to always handle the do_configurator
* and do_timed_login after any call to gdm_verify_user */
@@ -743,7 +745,12 @@ gdm_slave_wait_for_login (void)
/* timed login is automatic, thus no need for greeter,
* we'll take default values */
gdm_slave_whack_greeter();
+
+ gdm_debug ("gdm_slave_wait_for_login: Timed Login");
}
+
+ gdm_debug ("gdm_slave_wait_for_login: got_login for '%s'",
+ gdm_sure_string (login));
}
/* This is VERY evil! */
@@ -1285,6 +1292,9 @@ gdm_slave_session_start (void)
const char *shell = NULL;
pid_t sesspid;
+ gdm_debug ("gdm_slave_session_start: Attempting session for user '%s'",
+ login);
+
pwent = getpwnam (login);
if (!pwent)
@@ -1410,13 +1420,13 @@ gdm_slave_session_start (void)
gdm_debug (_("gdm_slave_session_start: Authentication completed. Whacking greeter"));
+ greet = FALSE;
+
/* do what you do when you quit, this will hang until the
* greeter decides to print an STX\n, meaning it can do some
* last minute cleanup */
gdm_slave_greeter_ctl_no_ret (GDM_QUIT, "");
- greet = FALSE;
-
/* Kill greeter and wait for it to die */
if (kill (d->greetpid, SIGINT) == 0)
waitpid (d->greetpid, 0, 0);
@@ -2033,7 +2043,7 @@ gdm_slave_exec_script (GdmDisplay *d, gchar *dir)
argv = g_strsplit (scr, argdelim, MAX_ARGS);
execv (argv[0], argv);
syslog (LOG_ERR, _("gdm_slave_exec_script: Failed starting: %s"), scr);
- return EXIT_SUCCESS;
+ _exit (EXIT_SUCCESS);
case -1:
syslog (LOG_ERR, _("gdm_slave_exec_script: Can't fork script process!"));