summaryrefslogtreecommitdiffstats
path: root/daemons
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2013-08-28 10:10:52 +0200
committerPetr Viktorin <pviktori@redhat.com>2013-08-29 15:28:27 +0200
commit219a007e8ed7c22edae7e790d1ff73af21a91388 (patch)
tree21d619d61005ca8b733fd678d7cafa3ceb3442a7 /daemons
parent0688827f3c287c1ec354f90e4748b0c23c4c9883 (diff)
downloadfreeipa.git-219a007e8ed7c22edae7e790d1ff73af21a91388.tar.gz
freeipa.git-219a007e8ed7c22edae7e790d1ff73af21a91388.tar.xz
freeipa.git-219a007e8ed7c22edae7e790d1ff73af21a91388.zip
CLDAP: make sure an empty reply is returned on any error
If ipa_cldap_decode() reply is not initialized. Fixes https://fedorahosted.org/freeipa/ticket/3885
Diffstat (limited to 'daemons')
-rw-r--r--daemons/ipa-slapi-plugins/ipa-cldap/ipa_cldap_worker.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/daemons/ipa-slapi-plugins/ipa-cldap/ipa_cldap_worker.c b/daemons/ipa-slapi-plugins/ipa-cldap/ipa_cldap_worker.c
index df7cc11a..db4a3d06 100644
--- a/daemons/ipa-slapi-plugins/ipa-cldap/ipa_cldap_worker.c
+++ b/daemons/ipa-slapi-plugins/ipa-cldap/ipa_cldap_worker.c
@@ -276,13 +276,14 @@ static void ipa_cldap_process(struct ipa_cldap_ctx *ctx,
LOG_TRACE("CLDAP Request received");
ret = ipa_cldap_netlogon(ctx, req, &reply);
+
+done:
if (ret != 0) {
/* bad request, or internal error, return empty reply */
/* as Windows does per MS-ADTS 6.3.3.3 */
memset(&reply, 0, sizeof(struct berval));
}
-done:
ipa_cldap_respond(ctx, req, &reply);
ipa_cldap_free_kvps(&req->kvps);