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;
 		}