summaryrefslogtreecommitdiff
path: root/src/session.c
diff options
context:
space:
mode:
authorRobert Ancell <robert.ancell@canonical.com>2012-03-15 12:51:11 +1100
committerRobert Ancell <robert.ancell@canonical.com>2012-03-15 12:51:11 +1100
commit27b4357690f0cb6d6bf1c3501f92c8e2a38f8189 (patch)
tree21a012e8da6181b75669a9a620a2c7c9dc58bfa4 /src/session.c
parent016023a0fb8ec4ae377373a84be5bedd84832ee0 (diff)
downloadlightdm-27b4357690f0cb6d6bf1c3501f92c8e2a38f8189.tar.gz
Handle PAM interactions that have more than one message in one callback. Based on a patch from Ulrich Müller
Diffstat (limited to 'src/session.c')
-rw-r--r--src/session.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/session.c b/src/session.c
index c2b4e7ad..473ef92a 100644
--- a/src/session.c
+++ b/src/session.c
@@ -424,14 +424,14 @@ session_get_console_kit_cookie (Session *session)
void
session_respond (Session *session, struct pam_response *response)
{
+ int error = PAM_SUCCESS;
int i;
g_return_if_fail (session != NULL);
+ write_data (session, &error, sizeof (error));
for (i = 0; i < session->priv->messages_length; i++)
{
- int error = PAM_SUCCESS;
- write_data (session, &error, sizeof (error));
write_string (session, response[i].resp);
write_data (session, &response[i].resp_retcode, sizeof (response[i].resp_retcode));
}