summaryrefslogtreecommitdiffstats
path: root/daemons/ipa-slapi-plugins
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:18 +0200
commit5c357b462df8f67379cb3d7f69b1684117f569f3 (patch)
treef11f6b90dc31350b9fe71c2dc309a1f676048782 /daemons/ipa-slapi-plugins
parent3940a574f95750e6bd02dcc30953db0fe9146f0a (diff)
downloadfreeipa-5c357b462df8f67379cb3d7f69b1684117f569f3.tar.gz
freeipa-5c357b462df8f67379cb3d7f69b1684117f569f3.tar.xz
freeipa-5c357b462df8f67379cb3d7f69b1684117f569f3.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/ipa-slapi-plugins')
-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 df7cc11a9..db4a3d061 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);