diff --git a/CHANGES b/CHANGES index 5eef4336a27fdf5de95cca14f5782c5033b31ed4..c48ee354a6739d02f78908fab68813bbab8eff89 100644 --- a/CHANGES +++ b/CHANGES @@ -3,6 +3,7 @@ OpenLDAP 2.4 Change Log OpenLDAP 2.4.11 Engineering Added slapo-nssov contrib module Fixed slapo-ppolicy DNs with whitespaces (ITS#5552) + Fixed slapo-syncprov ACL evaluation (ITS#5548) Build Environment Fixed test048 to skip if threads is not available (ITS#5529) diff --git a/servers/slapd/overlays/syncprov.c b/servers/slapd/overlays/syncprov.c index d525cb6c46a5154401e6d32920ba32d9c63b3643..e6e2161e447abcc7d4c625ce29e7f44a45f56aba 100644 --- a/servers/slapd/overlays/syncprov.c +++ b/servers/slapd/overlays/syncprov.c @@ -1181,6 +1181,7 @@ syncprov_matchops( Operation *op, opcookie *opc, int saveit ) sprev = ss, ss=snext) { Operation op2; + Opheader oh; syncmatches *sm; int found = 0; @@ -1230,7 +1231,10 @@ syncprov_matchops( Operation *op, opcookie *opc, int saveit ) if ( fc.fscope ) { op2 = *ss->s_op; - op2.o_hdr = op->o_hdr; + oh = *op->o_hdr; + oh.oh_conn = ss->s_op->o_conn; + oh.oh_connid = ss->s_op->o_connid; + op2.o_hdr = &oh; op2.o_extra = op->o_extra; }