add assertions where pointers should not be null
fix a couple of typos
---
src/amf/amfd/comp.cc | 1 +
src/amf/amfd/csi.cc | 3 ++-
src/amf/amfd/cstype.cc | 2 ++
src/amf/amfd/hlt.cc | 1 +
src/amf/amfd/nodeswbundle.cc | 2 +-
src/amf/amfd/ntf.cc | 1 +
src/amf/amfd/sg_npm_fsm.cc | 34 +++++++++++++++++++---------------
src/amf/amfd/sg_nway_fsm.cc | 2 +-
src/amf/amfd/sgproc.cc | 1 +
src/amf/amfd/su.cc | 1 +
src/amf/amfd/sutype.cc | 3 ++-
src/amf/amfd/svctype.cc | 1 +
src/amf/amfd/svctypecstypes.cc | 1 +
src/amf/amfnd/cbq.cc | 2 ++
src/amf/amfnd/clc.cc | 1 +
src/amf/amfnd/comp.cc | 4 ++++
src/amf/amfnd/compdb.cc | 2 +-
src/amf/amfnd/susm.cc | 11 +++++++++++
18 files changed, 53 insertions(+), 20 deletions(-)
diff --git a/src/amf/amfd/comp.cc b/src/amf/amfd/comp.cc
index 0ff365e..5c6a283 100644
--- a/src/amf/amfd/comp.cc
+++ b/src/amf/amfd/comp.cc
@@ -2117,6 +2117,7 @@ static void comp_ccb_apply_modify_hdlr(struct
CcbUtilOperationData *opdata) {
attribute->attrValuesNumber);
if (!strcmp(attribute->attrName, "saAmfCompType")) {
+ osafassert(value != nullptr);
SaNameT *dn = (SaNameT *)value;
const std::string oldType(comp->saAmfCompType);
if (oldType.compare(Amf::to_string(dn)) == 0) {
diff --git a/src/amf/amfd/csi.cc b/src/amf/amfd/csi.cc
index f7e3730..1856610 100644
--- a/src/amf/amfd/csi.cc
+++ b/src/amf/amfd/csi.cc
@@ -913,7 +913,8 @@ static void ccb_apply_delete_hdlr(CcbUtilOperationData_t
*opdata) {
goto done;
}
- TRACE("'%s'", csi ? csi->name.c_str() : nullptr);
+ osafassert(csi != nullptr);
+ TRACE("'%s'", csi->name.c_str());
/* Check whether si has been assigned to any SU. */
if ((nullptr != csi->si->list_of_sisu) && (csi->compcsi_cnt != 0)) {
diff --git a/src/amf/amfd/cstype.cc b/src/amf/amfd/cstype.cc
index cadc6df..683d3cd 100644
--- a/src/amf/amfd/cstype.cc
+++ b/src/amf/amfd/cstype.cc
@@ -62,6 +62,7 @@ static AVD_CS_TYPE *cstype_create(const std::string &dn,
* @param cst
*/
static void cstype_delete(AVD_CS_TYPE *cst) {
+ osafassert(cst != nullptr);
cstype_db->erase(cst->name);
cst->saAmfCSAttrName.clear();
delete cst;
@@ -205,6 +206,7 @@ static SaAisErrorT
cstype_ccb_completed_hdlr(CcbUtilOperationData_t *opdata) {
opdata->userData = nullptr;
break;
}
+ osafassert(cst != nullptr);
if (cst->list_of_csi != nullptr) {
/* check whether there exists a delete operation for
* each of the CSI in the cs_type list in the current CCB
diff --git a/src/amf/amfd/hlt.cc b/src/amf/amfd/hlt.cc
index 27863db..4c2737e 100644
--- a/src/amf/amfd/hlt.cc
+++ b/src/amf/amfd/hlt.cc
@@ -75,6 +75,7 @@ static SaAisErrorT
ccb_completed_delete_hdlr(CcbUtilOperationData_t *opdata) {
opdata->userData = nullptr;
goto done;
}
+ osafassert(comp != nullptr);
for (curr_susi = comp->su->list_of_susi; curr_susi != nullptr;
curr_susi = curr_susi->su_next)
for (compcsi = curr_susi->list_of_csicomp; compcsi;
diff --git a/src/amf/amfd/nodeswbundle.cc b/src/amf/amfd/nodeswbundle.cc
index 4ab79f7..cf280cb 100644
--- a/src/amf/amfd/nodeswbundle.cc
+++ b/src/amf/amfd/nodeswbundle.cc
@@ -125,7 +125,7 @@ static int is_swbdl_delete_ok(const std::string &bundle_dn,
if (node == nullptr && avd_cb->is_active() == false) {
return 1;
}
-
+ osafassert(node != nullptr);
if (!is_swbdl_delete_ok_for_node(bundle_dn, node_dn, node->list_of_ncs_su,
opdata))
return 0;
diff --git a/src/amf/amfd/ntf.cc b/src/amf/amfd/ntf.cc
index eb2654a..52ee745 100644
--- a/src/amf/amfd/ntf.cc
+++ b/src/amf/amfd/ntf.cc
@@ -505,6 +505,7 @@ SaAisErrorT avd_try_send_notification(NtfSend* job) {
&myntf->notification.alarmNotification.notificationHandle;
}
+ osafassert(notificationHandle != nullptr);
// Try to send the notification if not sent.
if (job->already_sent == false) {
rc = saNtfNotificationSend(*notificationHandle);
diff --git a/src/amf/amfd/sg_npm_fsm.cc b/src/amf/amfd/sg_npm_fsm.cc
index 0ef094d..0e91eb5 100644
--- a/src/amf/amfd/sg_npm_fsm.cc
+++ b/src/amf/amfd/sg_npm_fsm.cc
@@ -2773,23 +2773,26 @@ static uint32_t avd_sg_npm_susi_sucss_si_oper(AVD_CL_CB
*cb, AVD_SU *su,
* modify standby all to the Quiesced SU. Remove the SI from
* admin pointer and add the quiesced SU to the SU oper list.
*/
- if (su->sg_of_su->admin_si->list_of_sisu == i_susi) {
- o_susi = i_susi->si_next;
- } else {
- o_susi = su->sg_of_su->admin_si->list_of_sisu;
- }
+ i_susi = avd_su_susi_find(cb, su, su->sg_of_su->admin_si->name);
+ if (i_susi != nullptr) {
+ if (su->sg_of_su->admin_si->list_of_sisu == i_susi) {
+ o_susi = i_susi->si_next;
+ } else {
+ o_susi = su->sg_of_su->admin_si->list_of_sisu;
+ }
- if (avd_sg_su_si_mod_snd(cb, o_susi->su, SA_AMF_HA_STANDBY) ==
- NCSCC_RC_FAILURE) {
- LOG_ER("%s:%u: %s (%zu)", __FILE__, __LINE__, su->name.c_str(),
- su->name.length());
- return NCSCC_RC_FAILURE;
- }
+ if (avd_sg_su_si_mod_snd(cb, o_susi->su, SA_AMF_HA_STANDBY) ==
+ NCSCC_RC_FAILURE) {
+ LOG_ER("%s:%u: %s (%zu)", __FILE__, __LINE__, su->name.c_str(),
+ su->name.length());
+ return NCSCC_RC_FAILURE;
+ }
- avd_sg_su_oper_list_add(cb, o_susi->su, false);
- su->sg_of_su->admin_si->set_si_switch(cb, AVSV_SI_TOGGLE_STABLE);
- m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
- su->sg_of_su->set_fsm_state(AVD_SG_FSM_SG_REALIGN);
+ avd_sg_su_oper_list_add(cb, o_susi->su, false);
+ su->sg_of_su->admin_si->set_si_switch(cb, AVSV_SI_TOGGLE_STABLE);
+ m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
+ su->sg_of_su->set_fsm_state(AVD_SG_FSM_SG_REALIGN);
+ }
}
/* if (i_susi == AVD_SU_SI_REL_NULL) */
@@ -4688,6 +4691,7 @@ SaAisErrorT SG_NPM::si_swap(AVD_SI *si, SaInvocationT
invocation) {
actv_susi = si->list_of_sisu->si_next;
stdby_susi = si->list_of_sisu;
}
+ osafassert(actv_susi != nullptr);
actv_su = actv_susi->su;
stdby_su = stdby_susi->su;
diff --git a/src/amf/amfd/sg_nway_fsm.cc b/src/amf/amfd/sg_nway_fsm.cc
index d1da5ad..755e0c7 100644
--- a/src/amf/amfd/sg_nway_fsm.cc
+++ b/src/amf/amfd/sg_nway_fsm.cc
@@ -2184,7 +2184,7 @@ uint32_t SG_NWAY::su_fault_si_oper(AVD_CL_CB *cb, AVD_SU
*su) {
/* identify the quiesced assigning susi */
for (susi = si->list_of_sisu;
susi && !((SA_AMF_READINESS_IN_SERVICE ==
- curr_susi->su->saAmfSuReadinessState) &&
+ susi->su->saAmfSuReadinessState) &&
(SA_AMF_HA_QUIESCED == susi->state) &&
(AVD_SU_SI_STATE_MODIFY == susi->fsm));
susi = susi->si_next)
diff --git a/src/amf/amfd/sgproc.cc b/src/amf/amfd/sgproc.cc
index a7c1d50..ddd825d 100644
--- a/src/amf/amfd/sgproc.cc
+++ b/src/amf/amfd/sgproc.cc
@@ -2558,6 +2558,7 @@ static uint32_t shutdown_contained_sus(AVD_CL_CB *cb,
AVD_SU *container_su,
}
}
+ osafassert(container_csi_rel != nullptr);
const std::string& container_csi(container_csi_rel->csi->name);
for (auto &su : container_su->su_on_node->list_of_su) {
diff --git a/src/amf/amfd/su.cc b/src/amf/amfd/su.cc
index d149cc4..e22a005 100644
--- a/src/amf/amfd/su.cc
+++ b/src/amf/amfd/su.cc
@@ -2056,6 +2056,7 @@ void su_ccb_apply_delete_hdlr(struct CcbUtilOperationData
*opdata) {
return;
}
AVD_SU *su = static_cast<AVD_SU *>(opdata->userData);
+ osafassert(su != nullptr);
sg = su->sg_of_su;
TRACE_ENTER2("'%s'", su->name.c_str());
diff --git a/src/amf/amfd/sutype.cc b/src/amf/amfd/sutype.cc
index e3fe7b3..b124130 100644
--- a/src/amf/amfd/sutype.cc
+++ b/src/amf/amfd/sutype.cc
@@ -284,6 +284,7 @@ static void sutype_ccb_apply_cb(CcbUtilOperationData_t
*opdata) {
if (sut == nullptr && avd_cb->is_active() == false) {
break;
}
+ osafassert(sut != nullptr);
sutype_db->erase(sut->name);
sutype_delete(&sut);
break;
@@ -384,7 +385,7 @@ static SaAisErrorT
sutype_ccb_completed_cb(CcbUtilOperationData_t *opdata) {
/* check whether there exists a delete operation for
* each of the SU in the su_type list in the current CCB
*/
-
+ osafassert(sut != nullptr);
for (const auto &su : sut->list_of_su) {
const SaNameTWrapper su_name(su->name);
t_opData = ccbutil_getCcbOpDataByDN(opdata->ccbId, su_name);
diff --git a/src/amf/amfd/svctype.cc b/src/amf/amfd/svctype.cc
index c7e597e..090e493 100644
--- a/src/amf/amfd/svctype.cc
+++ b/src/amf/amfd/svctype.cc
@@ -164,6 +164,7 @@ static SaAisErrorT
svctype_ccb_completed_cb(CcbUtilOperationData_t *opdata) {
/* check whether there exists a delete operation for
* each of the SI in the svc_type list in the current CCB
*/
+ osafassert(svc_type != nullptr);
for (const auto &si : svc_type->list_of_si) {
const SaNameTWrapper si_name(si->name);
t_opData = ccbutil_getCcbOpDataByDN(opdata->ccbId, si_name);
diff --git a/src/amf/amfd/svctypecstypes.cc b/src/amf/amfd/svctypecstypes.cc
index 381dc39..cfd7d69 100644
--- a/src/amf/amfd/svctypecstypes.cc
+++ b/src/amf/amfd/svctypecstypes.cc
@@ -162,6 +162,7 @@ static SaAisErrorT svctypecstypes_ccb_completed_cb(
opdata->userData = nullptr;
break;
}
+ osafassert(svctypecstype != nullptr);
if (svctypecstype->curr_num_csis == 0) {
rc = SA_AIS_OK;
opdata->userData = svctypecstype;
diff --git a/src/amf/amfnd/cbq.cc b/src/amf/amfnd/cbq.cc
index 6f6f15f..dff3123 100644
--- a/src/amf/amfnd/cbq.cc
+++ b/src/amf/amfnd/cbq.cc
@@ -476,6 +476,7 @@ uint32_t avnd_evt_ava_resp_evh(AVND_CB *cb, AVND_EVT *evt) {
* this resp */
if (!csi) {
AVND_COMP_CSI_REC *temp_csi = m_AVND_COMPDB_REC_CSI_GET_FIRST(*comp);
+ osafassert(temp_csi != nullptr);
if (cbk_rec->cbk_info->param.csi_set.ha != temp_csi->si->curr_state) {
avnd_comp_cbq_rec_pop_and_del(cb, comp, cbk_rec->opq_hdl, false);
@@ -1214,6 +1215,7 @@ void avnd_comp_unreg_cbk_process(AVND_CB *cb, AVND_COMP
*comp) {
* this resp */
if (!csi) {
AVND_COMP_CSI_REC *temp_csi =
m_AVND_COMPDB_REC_CSI_GET_FIRST(*comp);
+ osafassert(temp_csi != nullptr);
if (cbk->cbk_info->param.csi_set.ha != temp_csi->si->curr_state) {
avnd_comp_cbq_rec_pop_and_del(cb, comp, cbk->opq_hdl, true);
diff --git a/src/amf/amfnd/clc.cc b/src/amf/amfnd/clc.cc
index c4067f4..4e1a844 100644
--- a/src/amf/amfnd/clc.cc
+++ b/src/amf/amfnd/clc.cc
@@ -1375,6 +1375,7 @@ uint32_t avnd_comp_clc_st_chng_prc(AVND_CB *cb, AVND_COMP
*comp,
m_NCS_DBLIST_FIND_FIRST(&comp->csi_list));
if ((m_AVND_IS_SHUTTING_DOWN(cb)) &&
(m_AVND_COMP_CSI_CURR_ASSIGN_STATE_IS_REMOVING(csi))) {
+ osafassert(csi != nullptr);
TRACE_1("CSI marked Removed.");
m_AVND_COMP_CSI_CURR_ASSIGN_STATE_SET(
csi, AVND_COMP_CSI_ASSIGN_STATE_REMOVED);
diff --git a/src/amf/amfnd/comp.cc b/src/amf/amfnd/comp.cc
index 857c1dc..b520550 100644
--- a/src/amf/amfnd/comp.cc
+++ b/src/amf/amfnd/comp.cc
@@ -975,6 +975,7 @@ uint32_t avnd_comp_csi_assign(AVND_CB *cb, AVND_COMP *comp,
curr_csi = (csi) ? csi
: m_AVND_CSI_REC_FROM_COMP_DLL_NODE_GET(
m_NCS_DBLIST_FIND_FIRST(&comp->csi_list));
+ osafassert(curr_csi != nullptr);
TRACE_ENTER2("comp:'%s'", comp->name.c_str());
LOG_IN("Assigning '%s' %s to '%s'", csiname.c_str(),
@@ -1370,6 +1371,7 @@ uint32_t avnd_comp_csi_remove(AVND_CB *cb, AVND_COMP
*comp,
if (!curr_csi)
curr_csi = m_AVND_CSI_REC_FROM_COMP_DLL_NODE_GET(
m_NCS_DBLIST_FIND_FIRST(&comp->csi_list));
+ osafassert(curr_csi != nullptr);
/* mark the csi state removing */
m_AVND_COMP_CSI_CURR_ASSIGN_STATE_SET(curr_csi,
@@ -1703,6 +1705,7 @@ uint32_t avnd_comp_csi_assign_done(AVND_CB *cb, AVND_COMP
*comp,
/* get the first csi-record for this comp */
curr_csi = m_AVND_CSI_REC_FROM_COMP_DLL_NODE_GET(
m_NCS_DBLIST_FIND_FIRST(&comp->csi_list));
+ osafassert(curr_csi != nullptr);
if (all_csis_at_rank_assigned(curr_csi->si, curr_csi->rank)) {
uint32_t rank = (SA_AMF_HA_ACTIVE == curr_csi->si->curr_state ||
@@ -2257,6 +2260,7 @@ uint32_t avnd_amf_resp_send(AVND_CB *cb,
AVSV_AMF_API_TYPE type,
/* Fill informations. */
avnd_msg = static_cast<AVSV_ND2ND_AVND_MSG *>(
calloc(1, sizeof(AVSV_ND2ND_AVND_MSG)));
+ osafassert(avnd_msg != nullptr);
osaf_extended_name_alloc(comp->name.c_str(), &avnd_msg->comp_name);
avnd_msg->mds_ctxt = *ctxt;
diff --git a/src/amf/amfnd/compdb.cc b/src/amf/amfnd/compdb.cc
index cfadbe3..7824312 100644
--- a/src/amf/amfnd/compdb.cc
+++ b/src/amf/amfnd/compdb.cc
@@ -1621,7 +1621,7 @@ done:
unsigned int avnd_comp_config_get_su(AVND_SU *su) {
unsigned int rc = NCSCC_RC_FAILURE;
SaAisErrorT error;
- SaImmSearchHandleT searchHandle;
+ SaImmSearchHandleT searchHandle{};
SaImmSearchParametersT_2 searchParam;
SaNameT comp_name;
const SaImmAttrValuesT_2 **attributes;
diff --git a/src/amf/amfnd/susm.cc b/src/amf/amfnd/susm.cc
index 62e2db9..6376327 100644
--- a/src/amf/amfnd/susm.cc
+++ b/src/amf/amfnd/susm.cc
@@ -1010,6 +1010,7 @@ static AVND_SU_SI_REC *get_higher_ranked_si(const
AVND_SU_SI_REC *si) {
*/
static bool all_sis_atrank_removed(const AVND_SU_SI_REC *si) {
const AVND_SU_SI_REC *tmp;
+ osafassert(si != nullptr);
/* search forwards */
for (tmp = si; tmp && (tmp->rank == si->rank);
@@ -2267,6 +2268,8 @@ uint32_t avnd_su_pres_insting_compinst_hdler(AVND_CB *cb,
AVND_SU *su,
"Component Instantiated event in the Instantiating state:'%s' : '%s'",
su->name.c_str(), compname.c_str());
+ osafassert(comp != nullptr);
+
/*
* If pi su, pick the next pi comp & trigger it's FSM with InstEv.
* If the component is marked failed (=> component has reinstantiated
@@ -2762,6 +2765,7 @@ uint32_t avnd_su_pres_inst_comprestart_hdler(AVND_CB *cb,
AVND_SU *su,
const std::string compname = comp ? comp->name : "none";
TRACE_ENTER2("Component restart event in the Instantiated state, '%s' :
'%s'",
su->name.c_str(), compname.c_str());
+ osafassert(comp != nullptr);
if (m_AVND_SU_IS_PREINSTANTIABLE(su)) {
TRACE("PI SU");
for (AVND_COMP *curr_comp = m_AVND_COMP_FROM_SU_DLL_NODE_GET(
@@ -2892,6 +2896,7 @@ uint32_t avnd_su_pres_terming_compinst_hdler(AVND_CB *cb,
AVND_SU *su,
if (m_AVND_SU_IS_PREINSTANTIABLE(su)) {
bool is;
+ osafassert(comp != nullptr);
if (m_AVND_COMP_IS_FAILED(comp)) {
m_AVND_COMP_FAILED_RESET(comp);
}
@@ -3145,6 +3150,7 @@ uint32_t avnd_su_pres_terming_compuninst_hdler(AVND_CB
*cb, AVND_SU *su,
avnd_comp_clc_fsm_run(cb, comp, AVND_COMP_CLC_PRES_FSM_EV_INST);
avnd_su_pres_state_set(cb, su, SA_AMF_PRESENCE_INSTANTIATING);
} else {
+ osafassert(comp != nullptr);
TRACE("Admin operation on SU");
for (curr_comp = m_AVND_COMP_FROM_SU_DLL_NODE_GET(
m_NCS_DBLIST_FIND_PREV(&comp->su_dll_node));
@@ -3210,6 +3216,7 @@ uint32_t avnd_su_pres_terming_compuninst_hdler(AVND_CB
*cb, AVND_SU *su,
(!m_AVND_SU_IS_FAILED(su) || m_AVND_SU_IS_RESTART(su))) {
TRACE("NPI SU");
/* get the only csi rec */
+ osafassert(comp != nullptr);
curr_csi = m_AVND_CSI_REC_FROM_COMP_DLL_NODE_GET(
m_NCS_DBLIST_FIND_FIRST(&comp->csi_list));
osafassert(curr_csi);
@@ -3473,6 +3480,7 @@ uint32_t avnd_su_pres_restart_compinst_hdler(AVND_CB *cb,
AVND_SU *su,
"ComponentInstantiated event in the Restarting state:'%s' : '%s'",
su->name.c_str(), compname.c_str());
SaAmfPresenceStateT pres_init = su->pres;
+ osafassert(comp != nullptr);
/*
* If pi su, pick the next pi comp & trigger it's FSM with Inst Event.
*/
@@ -3516,6 +3524,7 @@ uint32_t avnd_su_pres_restart_compinst_hdler(AVND_CB *cb,
AVND_SU *su,
if (!m_AVND_SU_IS_PREINSTANTIABLE(su)) {
TRACE("NPI SU:'%s'", su->name.c_str());
/* get the only csi rec */
+ osafassert(comp != nullptr);
curr_csi = m_AVND_CSI_REC_FROM_COMP_DLL_NODE_GET(
m_NCS_DBLIST_FIND_FIRST(&comp->csi_list));
osafassert(curr_csi);
@@ -3933,6 +3942,7 @@ uint32_t avnd_su_pres_terming_comprestart_hdler(AVND_CB
*cb, AVND_SU *su,
if (m_AVND_SU_IS_PREINSTANTIABLE(su)) {
TRACE("PI SU");
AVND_COMP *curr_comp = nullptr;
+ osafassert(comp != nullptr);
for (curr_comp = m_AVND_COMP_FROM_SU_DLL_NODE_GET(
m_NCS_DBLIST_FIND_PREV(&comp->su_dll_node));
curr_comp; curr_comp = m_AVND_COMP_FROM_SU_DLL_NODE_GET(
@@ -4059,6 +4069,7 @@ uint32_t avnd_su_pres_inst_compinst_hdler(AVND_CB *cb,
AVND_SU *su,
TRACE_ENTER2(
"Component Instantiated event in the Instantiated state:'%s' : '%s'",
su->name.c_str(), compname.c_str());
+ osafassert(comp != nullptr);
if (m_AVND_SU_IS_PREINSTANTIABLE(su)) {
TRACE("PI SU");