diff --git a/CHANGES b/CHANGES
index 4d4b33f5fc8c5fe5a00ae9e64a859524255090de..ed677b988750c470d1390434ff909ecaffc81aa6 100644
--- a/CHANGES
+++ b/CHANGES
@@ -13,6 +13,7 @@ OpenLDAP 2.4.24 Engineering
 	Fixed slapo-pcache callback freeing (ITS#6640)
 	Fixed slapo-pcache to ignore undefined attrs (ITS#6600)
 	Fixed slapo-ppolicy don't update opattrs on consumers (ITS#6608)
+	Fixed slapo-sssvlv initialization (ITS#6649)
 	Fixed slapo-syncprov to send error if consumer is newer (ITS#6606)
 	Documentation
 		admin24 guide typo fixes (ITS#6609)
diff --git a/servers/slapd/overlays/sssvlv.c b/servers/slapd/overlays/sssvlv.c
index 10dde1f2498b28cd3d886960e12b86fee49a21ce..10a0d00cb7dc3a2298ce00938baf11055a1b61f1 100644
--- a/servers/slapd/overlays/sssvlv.c
+++ b/servers/slapd/overlays/sssvlv.c
@@ -801,9 +801,9 @@ static int sssvlv_op_search(
 				op->o_tmpmemctx );
 			/* Install serversort response callback to handle a new search */
 			if ( ps || vc ) {
-				so = ch_malloc( sizeof(sort_op));
+				so = ch_calloc( 1, sizeof(sort_op));
 			} else {
-				so = op->o_tmpalloc( sizeof(sort_op), op->o_tmpmemctx );
+				so = op->o_tmpcalloc( 1, sizeof(sort_op), op->o_tmpmemctx );
 			}
 			sort_conns[op->o_conn->c_conn_idx] = so;