mrc0mmand / rpms / openldap

Forked from rpms/openldap 3 years ago
Clone
Blob Blame History Raw
A mutex lock might not get unlocked when plausible

In the preceding if-statement a mutex may get locked. This is unlocked on
'done' label, but not called when plausible. Based on the current code logic
this seems to not be able to happen, but might when code gets changed at 
some point in time. This patch fixes the issue.

The issue was found by Coverity scan 
http://cov01.lab.eng.brq.redhat.com/covscanhub/waiving/11054/38577/

Author: Matus Honek <mhonek@redhat.com>
Resolves: #1261003

--- a/servers/slapd/overlays/accesslog.c
+++ b/servers/slapd/overlays/accesslog.c
@@ -1519,7 +1519,7 @@ static int accesslog_response(Operation *op, SlapReply *rs) {
 
 	/* ignore these internal reads */
 	if (( lo->mask & LOG_OP_READS ) && op->o_do_not_cache ) {
-		return SLAP_CB_CONTINUE;
+		goto done;
 	}
 
 	if ( li->li_success && rs->sr_err != LDAP_SUCCESS )