Hi Hoang, Please send the all update patches 1 to 8 , so that I can commit.
-AVM On 8/23/2016 12:46 PM, Vo Minh Hoang wrote: > Dear Mahesh, > > I would like to send updated patch following your comment. > When this is minor comment, I send it as attached file. > > Sincerely, > Hoang > > -----Original Message----- > From: A V Mahesh [mailto:mahesh.va...@oracle.com] > Sent: Monday, August 22, 2016 1:02 PM > To: Hoang Vo <hoang.m...@dektech.com.au> > Cc: opensaf-devel@lists.sourceforge.net > Subject: Re: [PATCH 6 of 8] cpsv: Apply new messages supporting extended > SaNameT to CPD, CPND, and CPA [#1574] v4 > > Hi Hoang, > > ACK for [PATCH 6 of 8] with following minor comment > I think CPND should return SA_AIS_ERR_TOO_BIG = 26 instead of > SA_AIS_ERR_INVALID_PARAM ( please sync-up with other service return values > ). > > Note : tested default functionality , LONG DN functionality not tested in > full fledged > > -AVM > > > On 8/18/2016 12:48 PM, Hoang Vo wrote: >> osaf/libs/agents/saf/cpa/cpa_api.c | 12 ++++++++++++ >> osaf/libs/agents/saf/cpa/cpa_mds.c | 2 +- >> osaf/libs/common/cpsv/cpsv_evt.c | 1 + >> osaf/services/saf/cpsv/cpd/cpd_proc.c | 2 +- >> osaf/services/saf/cpsv/cpnd/cpnd_evt.c | 2 ++ >> osaf/services/saf/cpsv/cpnd/cpnd_proc.c | 2 +- >> 6 files changed, 18 insertions(+), 3 deletions(-) >> >> >> diff --git a/osaf/libs/agents/saf/cpa/cpa_api.c >> b/osaf/libs/agents/saf/cpa/cpa_api.c >> --- a/osaf/libs/agents/saf/cpa/cpa_api.c >> +++ b/osaf/libs/agents/saf/cpa/cpa_api.c >> @@ -880,6 +880,10 @@ SaAisErrorT saCkptCheckpointOpen(SaCkptH >> } >> >> ckpt_name = osaf_extended_name_borrow(checkpointName); >> + if (strlen(ckpt_name) >= kOsafMaxDnLength) { >> + TRACE_LEAVE2("API return code = %u", > SA_AIS_ERR_INVALID_PARAM); >> + return SA_AIS_ERR_INVALID_PARAM; >> + } >> >> /* SA_AIS_ERR_INVALID_PARAM, bullet 4 in SAI-AIS-CKPT-B.02.02 >> Section 3.6.1 saCkptCheckpointOpen() and >> saCkptCheckpointOpenAsync(), Return Values */ @@ -1192,6 +1196,10 @@ > SaAisErrorT saCkptCheckpointOpenAsync(Sa >> } >> >> ckpt_name = osaf_extended_name_borrow(checkpointName); >> + if (strlen(ckpt_name) >= kOsafMaxDnLength) { >> + TRACE_LEAVE2("API return code = %u", > SA_AIS_ERR_INVALID_PARAM); >> + return SA_AIS_ERR_INVALID_PARAM; >> + } >> >> /* SA_AIS_ERR_INVALID_PARAM, bullet 4 in SAI-AIS-CKPT-B.02.02 >> Section 3.6.1 saCkptCheckpointOpen() and >> saCkptCheckpointOpenAsync(), Return Values */ @@ -1597,6 +1605,10 @@ > SaAisErrorT saCkptCheckpointUnlink(SaCkp >> } >> >> ckpt_name = osaf_extended_name_borrow(checkpointName); >> + if (strlen(ckpt_name) >= kOsafMaxDnLength) { >> + TRACE_LEAVE2("API return code = %u", > SA_AIS_ERR_INVALID_PARAM); >> + return SA_AIS_ERR_INVALID_PARAM; >> + } >> >> /* retrieve CPA CB */ >> m_CPA_RETRIEVE_CB(cb); >> diff --git a/osaf/libs/agents/saf/cpa/cpa_mds.c >> b/osaf/libs/agents/saf/cpa/cpa_mds.c >> --- a/osaf/libs/agents/saf/cpa/cpa_mds.c >> +++ b/osaf/libs/agents/saf/cpa/cpa_mds.c >> @@ -515,9 +515,9 @@ static uint32_t cpa_mds_svc_evt(CPA_CB * >> /* Populate & Send the Open Event to CPND */ >> memset(&evt, 0, sizeof(CPSV_EVT)); >> evt.type = CPSV_EVT_TYPE_CPND; >> - evt.info.cpnd.type = CPND_EVT_A2ND_CKPT_LIST_UPDATE; >> evt.info.cpnd.info.ckptListUpdate.client_hdl = > lc_node->cl_hdl; >> osaf_extended_name_lend(lc_node->ckpt_name, >> &evt.info.cpnd.info.ckptListUpdate.ckpt_name); >> + evt.info.cpnd.type = CPND_EVT_A2ND_CKPT_LIST_UPDATE; >> >> proc_rc = cpa_mds_msg_send(cb->cpa_mds_hdl, > &cb->cpnd_mds_dest, >> &evt, NCSMDS_SVC_ID_CPND); >> >> diff --git a/osaf/libs/common/cpsv/cpsv_evt.c >> b/osaf/libs/common/cpsv/cpsv_evt.c >> --- a/osaf/libs/common/cpsv/cpsv_evt.c >> +++ b/osaf/libs/common/cpsv/cpsv_evt.c >> @@ -2378,6 +2378,7 @@ static uint32_t cpsv_encode_extended_nam >> if(!osaf_is_an_extended_name(name)) >> return NCSCC_RC_SUCCESS; >> >> + TRACE("length = %d", name->length); >> SaConstStringT value = osaf_extended_name_borrow(name); >> uint16_t length = osaf_extended_name_length(name); >> >> diff --git a/osaf/services/saf/cpsv/cpd/cpd_proc.c >> b/osaf/services/saf/cpsv/cpd/cpd_proc.c >> --- a/osaf/services/saf/cpsv/cpd/cpd_proc.c >> +++ b/osaf/services/saf/cpsv/cpd/cpd_proc.c >> @@ -61,9 +61,9 @@ uint32_t cpd_noncolloc_ckpt_rep_create(C >> /* Send the Replica create info to CPND */ >> memset(&send_evt, 0, sizeof(CPSV_EVT)); >> send_evt.type = CPSV_EVT_TYPE_CPND; >> - send_evt.info.cpnd.type = CPND_EVT_D2ND_CKPT_CREATE; >> >> osaf_extended_name_lend(map_info->ckpt_name, >> &send_evt.info.cpnd.info.ckpt_create.ckpt_name); >> + send_evt.info.cpnd.type = CPND_EVT_D2ND_CKPT_CREATE; >> >> d2nd_info = &send_evt.info.cpnd.info.ckpt_create.ckpt_info; >> >> diff --git a/osaf/services/saf/cpsv/cpnd/cpnd_evt.c >> b/osaf/services/saf/cpsv/cpnd/cpnd_evt.c >> --- a/osaf/services/saf/cpsv/cpnd/cpnd_evt.c >> +++ b/osaf/services/saf/cpsv/cpnd/cpnd_evt.c >> @@ -4638,6 +4638,8 @@ uint32_t cpnd_evt_destroy(CPSV_EVT *evt) >> if > (osaf_is_an_extended_name(&evt->info.cpnd.info.ckptListUpdate.ckpt_name)) >> free((void > *)osaf_extended_name_borrow(&evt->info.cpnd.info.ckptListUpdate.ckpt_name)); >> } else if (evt->info.cpnd.type == CPND_EVT_D2ND_CKPT_CREATE) { >> + if (evt->info.cpnd.info.ckpt_create.ckpt_info.dest_list != > NULL) >> + >> +m_MMGR_FREE_CPSV_SYS_MEMORY(evt->info.cpnd.info.ckpt_create.ckpt_info >> +.dest_list); >> if > (osaf_is_an_extended_name(&evt->info.cpnd.info.ckpt_create.ckpt_name)) >> free((void > *)osaf_extended_name_borrow(&evt->info.cpnd.info.ckpt_create.ckpt_name)); >> } >> diff --git a/osaf/services/saf/cpsv/cpnd/cpnd_proc.c >> b/osaf/services/saf/cpsv/cpnd/cpnd_proc.c >> --- a/osaf/services/saf/cpsv/cpnd/cpnd_proc.c >> +++ b/osaf/services/saf/cpsv/cpnd/cpnd_proc.c >> @@ -2529,9 +2529,9 @@ void cpnd_proc_ckpt_info_update(CPND_CB >> LOG_NO("cpnd_proc_update_cpd_data::ckpt_name = %s[%llu]", > (char*)ckpt_node->ckpt_name, >> ckpt_node->ckpt_id); >> send_evt.type = CPSV_EVT_TYPE_CPD; >> - send_evt.info.cpd.type = CPD_EVT_ND2D_CKPT_INFO_UPDATE; >> send_evt.info.cpd.info.ckpt_info.ckpt_id = > ckpt_node->ckpt_id; >> osaf_extended_name_lend(ckpt_node->ckpt_name, >> &send_evt.info.cpd.info.ckpt_info.ckpt_name); >> + send_evt.info.cpd.type = CPD_EVT_ND2D_CKPT_INFO_UPDATE; >> send_evt.info.cpd.info.ckpt_info.attributes = > ckpt_node->create_attrib; >> send_evt.info.cpd.info.ckpt_info.ckpt_flags = > ckpt_node->open_flags; >> send_evt.info.cpd.info.ckpt_info.num_users = >> ckpt_node->ckpt_lcl_ref_cnt; ------------------------------------------------------------------------------ _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel