After removing the active subscription result, mds finds
the next active subscription result by using the deleted
result. It led an invalid read. Solution is to get the
first active subscription result rather than the next
active result.
---
 src/mds/mds_svc_op.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mds/mds_svc_op.c b/src/mds/mds_svc_op.c
index c5a8d6d19..2ca4a23cc 100644
--- a/src/mds/mds_svc_op.c
+++ b/src/mds/mds_svc_op.c
@@ -1198,7 +1198,7 @@ uint32_t mds_svc_op_vdest_mxn_active_delete(const 
MCM_SVC_INFO *info) {
                callback_info.arch_word = MDS_SVC_ARCHWORD_TYPE_UNSPECIFIED;
                status = mds_subtn_res_tbl_query_next_active(
                                info->local_svc_hdl, info->svc_id, info->vdest,
-                               subtn_result_info, &next_active_result_info);
+                               NULL, &next_active_result_info);
                if (status == NCSCC_RC_FAILURE) {
                        /* No other active present */
                        mds_svc_op_subtn_res_tbl_remove_active(info);
-- 
2.25.1



_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to