diff options
author | Robert Ancell <robert.ancell@canonical.com> | 2011-07-18 14:46:43 +1000 |
---|---|---|
committer | Robert Ancell <robert.ancell@canonical.com> | 2011-07-18 14:46:43 +1000 |
commit | f3a094ab39e524644a1a9bc62331959db2527850 (patch) | |
tree | 90ba3e794a8076285f0bc08d9f05a99a7efdb157 /src/greeter.c | |
parent | 3c6bc895de30ae7e0bb6131fe86d568f9c77d799 (diff) | |
download | lightdm-f3a094ab39e524644a1a9bc62331959db2527850.tar.gz |
Added a session-failed signal to indicate if the session didn't start and the greeter should try authorizing again
Diffstat (limited to 'src/greeter.c')
-rw-r--r-- | src/greeter.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/greeter.c b/src/greeter.c index 8429c218..b6e4f2ca 100644 --- a/src/greeter.c +++ b/src/greeter.c @@ -238,7 +238,6 @@ authentication_result_cb (PAMSession *session, int result, Greeter *greeter) if (result == PAM_SUCCESS) { g_debug ("User %s authorized", pam_session_get_username (session)); - //run_script ("PostLogin"); pam_session_authorize (session); } @@ -393,9 +392,14 @@ handle_start_session (Greeter *greeter, gchar *session) session = NULL; g_signal_emit (greeter, signals[START_SESSION], 0, session, greeter->priv->using_guest_account, &result); + if (!result) { - // FIXME: Write back to greeter + guint8 message[MAX_MESSAGE_LENGTH]; + gsize offset = 0; + + write_header (message, MAX_MESSAGE_LENGTH, GREETER_MESSAGE_SESSION_FAILED, 0, &offset); + write_message (greeter, message, offset); } } |