summaryrefslogtreecommitdiffstats
path: root/src/providers/data_provider_be.c
diff options
context:
space:
mode:
authorStephen Gallagher <sgallagh@redhat.com>2010-05-20 14:20:52 -0400
committerStephen Gallagher <sgallagh@redhat.com>2010-05-20 14:20:52 -0400
commit55daaea86e0ba049d31f74fcdf6bfedc6e0a1e7b (patch)
tree9d50c5c36326eb2feeaacd87ebfce183dfc5b65f /src/providers/data_provider_be.c
parent9e9f8f0765b2e5b7e8701773599109220a85d442 (diff)
downloadsssd-55daaea86e0ba049d31f74fcdf6bfedc6e0a1e7b.tar.gz
sssd-55daaea86e0ba049d31f74fcdf6bfedc6e0a1e7b.tar.xz
sssd-55daaea86e0ba049d31f74fcdf6bfedc6e0a1e7b.zip
Revert "Copy pam data from DBus message"
This reverts commit 2faf73eef14d66aeb345ffa38d0f53670fa8a9a1.
Diffstat (limited to 'src/providers/data_provider_be.c')
-rw-r--r--src/providers/data_provider_be.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/providers/data_provider_be.c b/src/providers/data_provider_be.c
index f952faba6..27a4571a7 100644
--- a/src/providers/data_provider_be.c
+++ b/src/providers/data_provider_be.c
@@ -672,13 +672,10 @@ static int be_pam_handler(DBusMessage *message, struct sbus_connection *conn)
be_req->fn = be_pam_handler_callback;
be_req->pvt = reply;
- dbus_error_init(&dbus_error);
-
- ret = dp_unpack_pam_request(message, be_req, &pd, &dbus_error);
- if (!ret) {
- DEBUG(1,("Failed, to parse message!\n"));
+ pd = talloc_zero(be_req, struct pam_data);
+ if (!pd) {
talloc_free(be_req);
- return EIO;
+ return ENOMEM;
}
pd->pam_status = PAM_SYSTEM_ERR;
@@ -688,6 +685,14 @@ static int be_pam_handler(DBusMessage *message, struct sbus_connection *conn)
return ENOMEM;
}
+ dbus_error_init(&dbus_error);
+
+ ret = dp_unpack_pam_request(message, pd, &dbus_error);
+ if (!ret) {
+ DEBUG(1,("Failed, to parse message!\n"));
+ talloc_free(be_req);
+ return EIO;
+ }
DEBUG(4, ("Got request with the following data\n"));
DEBUG_PAM_DATA(4, pd);