summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimo Sorce <simo@redhat.com>2012-12-13 18:13:06 -0500
committerJakub Hrozek <jhrozek@redhat.com>2013-02-26 14:30:38 +0100
commit9dd4f225739972f0890ecbf3594c83579fb2de9d (patch)
tree5746071fed609b88389f29bad8643b7e5655710f
parentedf3fd88573d617392e9eaa677660b5ea59e1c77 (diff)
downloadsssd-9dd4f225739972f0890ecbf3594c83579fb2de9d.tar.gz
sssd-9dd4f225739972f0890ecbf3594c83579fb2de9d.tar.xz
sssd-9dd4f225739972f0890ecbf3594c83579fb2de9d.zip
sssd_pam: Cleanup requests cache on sbus reconectsssd-1.5.1-58.1.el5_9
The pam responder was not properly configured to recover from a backend disconnect. The connections that were in flight before the disconnection were never freed and new requests for the same user would just pile up on top of the now phantom requests. Fixes: https://fedorahosted.org/sssd/ticket/1655
-rw-r--r--src/responder/pam/pamsrv.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/responder/pam/pamsrv.c b/src/responder/pam/pamsrv.c
index 9f02e8f0f..a7720b916 100644
--- a/src/responder/pam/pamsrv.c
+++ b/src/responder/pam/pamsrv.c
@@ -91,7 +91,10 @@ static void pam_dp_reconnect_init(struct sbus_connection *conn, int status, void
DATA_PROVIDER_VERSION,
"PAM");
/* all fine */
- if (ret == EOK) return;
+ if (ret == EOK) {
+ handle_requests_after_reconnect(be_conn->rctx);
+ return;
+ }
}
/* Handle failure */