--- ./source/private_module/rep_rm/om/reprm_om.c	2018-03-23 07:58:10.000000000 +0000
+++ ./source/private_module/rep_rm/om/reprm_om.c.hotpatch	2021-11-22 10:16:18.000000000 +0000
@@ -18786,7 +18786,7 @@
     {
         memcpy(&rmtDsNameInfo[index], tlvBuff, dsNameLen);
 
-        tlvBuff += rmtDsNameInfo[index].length;
+        tlvBuff += dsNameLen;
     }
     
     return RETURN_OK;
@@ -19619,7 +19619,7 @@
     {
         memcpy(&rmtDsCapInfo[index], tlvBuff, dsInfoLen);
 
-        tlvBuff += rmtDsCapInfo[index].length;
+        tlvBuff += dsInfoLen;
     }
     
     return RETURN_OK;
--- ./source/private_module/rep_rm/om/reprm_query.c	2018-03-10 06:52:19.000000000 +0000
+++ ./source/private_module/rep_rm/om/reprm_query.c.hotpatch	2021-11-22 10:16:18.000000000 +0000
@@ -1286,7 +1286,7 @@
     if(0 == index)
     {
         DBG_LogError(REPRM_LOG_ID_NEW, "There is not pair in remote array(%u).", arrayId);
-        RSF_PUT_FREE_NODE(rmtDsMsg, REPRM_REMOTE_DSNAME_PARTITION);
+        RSF_PUT_FREE_NODE(rmtDsMsg, REPRM_REMOTE_DSINFO_PARTITION);
         rmtDsMsg = NULL;
         return RETURN_RM_TEAM_NOT_EXIST;
     }
--- ./source/private_module/rep_rm/pair/reprm_pair.c	2018-04-26 09:50:01.000000000 +0000
+++ ./source/private_module/rep_rm/pair/reprm_pair.c.hotpatch	2021-11-22 10:16:18.000000000 +0000
@@ -5468,7 +5468,7 @@
 {
     REPRM_PAIR_INFO_S *pairInfo = NULL;
 
-    if(RETURN_OK != ret)
+    if((RETURN_OK != ret) || (localId >= REPRM_PAIR_MAX_NUM))
     {
         /* ǰDSԶ˲ѯʱʧܣ */
         DBG_LogError(REPRM_LOG_ID_NEW, 
@@ -5532,7 +5532,7 @@
 {
     REPRM_PAIR_INFO_S *pairInfo = NULL;
 
-    if(RETURN_OK != ret)
+    if((RETURN_OK != ret) || (localId >= REPRM_PAIR_MAX_NUM))
     {
         /* ǰDSԶ˲ѯDSϢʱʧܣ */
         DBG_LogError(REPRM_LOG_ID_NEW, 
