Hi Mahesh
Did you see my proposed change?
The ‘delete rec’ statement below will cause a double free, unless I’m mistaken.
Thanks
Gary
void avnd_comp_pm_rec_del(AVND_CB *cb, AVND_COMP *comp, AVND_COMP_PM_REC
*rec)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
SaUint64T pid = rec->pid;
TRACE_ENTER2("Comp '%s'", comp->name.c_str());
/* delete the PM_REC from pm_list */
- rc = ncs_db_link_list_del(&comp->pm_list, (uint8_t *)&rec->pid);
+ uint32_t rc = ncs_db_link_list_del(&comp->pm_list, (uint8_t
*)&rec->pid);
if (NCSCC_RC_SUCCESS != rc) {
LOG_NO("PM Rec doesn't exist in Comp '%s' of pid %llu",
comp->name.c_str(), pid);
}
- rec = nullptr; /* rec is no more, dont use it */
+
+ delete rec; /* rec is no more, dont use it */
-----Original Message-----
From: A V Mahesh <[email protected]>
Date: Wednesday, 15 March 2017 at 3:30 pm
To: <[email protected]>, gary <[email protected]>,
<[email protected]>, <[email protected]>
Cc: <[email protected]>
Subject: [PATCH 2 of 3] amfnd: Fix all Cppcheck 1.77 issues [#2341] V2
src/amf/amfnd/amfnd.cc | 15 +++++++++------
src/amf/amfnd/cbq.cc | 9 +++------
src/amf/amfnd/chc.cc | 29 +++++++++++++++--------------
src/amf/amfnd/clc.cc | 37 ++++++++++++++-----------------------
src/amf/amfnd/comp.cc | 8 +++-----
src/amf/amfnd/compdb.cc | 17 ++++++++---------
src/amf/amfnd/cpm.cc | 13 +++++--------
src/amf/amfnd/di.cc | 35 +++++++++++++++++------------------
src/amf/amfnd/err.cc | 35 ++++++++++++++---------------------
src/amf/amfnd/evt.cc | 3 +--
src/amf/amfnd/hcdb.cc | 13 +++----------
src/amf/amfnd/imm.cc | 5 ++---
src/amf/amfnd/main.cc | 13 +++++--------
src/amf/amfnd/mds.cc | 20 +++++++-------------
src/amf/amfnd/pg.cc | 33 +++++++++++++++------------------
src/amf/amfnd/proxy.cc | 8 +++-----
src/amf/amfnd/proxydb.cc | 17 +++++------------
src/amf/amfnd/sidb.cc | 3 +--
src/amf/amfnd/su.cc | 3 +--
src/amf/amfnd/sudb.cc | 5 ++---
src/amf/amfnd/susm.cc | 19 +++++++++----------
src/amf/amfnd/util.cc | 2 +-
22 files changed, 143 insertions(+), 199 deletions(-)
V2 Re-based changes on OpenSAF 5.2.RC1 tagged code.
[src/amf/amfnd/amfnd.cc:58] -> [src/amf/amfnd/amfnd.cc:63]: (style)
Variable 'del_cbk' is reassigned a value before the old one has been used.
[src/amf/amfnd/amfnd.cc:59] -> [src/amf/amfnd/amfnd.cc:65]: (style)
Variable 'o_comp' is reassigned a value before the old one has been used.
[src/amf/amfnd/amfnd.cc:191] -> [src/amf/amfnd/amfnd.cc:199]: (style)
Variable 'o_comp' is reassigned a value before the old one has been used.
[src/amf/amfnd/amfnd.cc:249] -> [src/amf/amfnd/amfnd.cc:250]: (style)
Variable 'res' is reassigned a value before the old one has been used.
[src/amf/amfnd/cbq.cc:441] -> [src/amf/amfnd/cbq.cc:442]: (style) Variable
'temp_csi' is reassigned a value before the old one has been used.
[src/amf/amfnd/cbq.cc:734] -> [src/amf/amfnd/cbq.cc:748]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/cbq.cc:1132] -> [src/amf/amfnd/cbq.cc:1133]: (style)
Variable 'temp_csi' is reassigned a value before the old one has been used.
[src/amf/amfnd/chc.cc:842]: (style) The scope of the variable 'cbk_rec' can
be reduced.
[src/amf/amfnd/clc.cc:1402] -> [src/amf/amfnd/clc.cc:1408]: (warning,
inconclusive) Either the condition 'NCSCC_RC_SUCCESS!=rc&&curr_rec' is
redundant or there is possible null pointer dereference: curr_rec.
[src/amf/amfnd/clc.cc:1403] -> [src/amf/amfnd/clc.cc:1408]: (warning,
inconclusive) Either the condition 'NCSCC_RC_SUCCESS!=rc&&curr_rec' is
redundant or there is possible null pointer dereference: curr_rec.
[src/amf/amfnd/clc.cc:1404] -> [src/amf/amfnd/clc.cc:1408]: (warning,
inconclusive) Either the condition 'NCSCC_RC_SUCCESS!=rc&&curr_rec' is
redundant or there is possible null pointer dereference: curr_rec.
[src/amf/amfnd/clc.cc:610] -> [src/amf/amfnd/clc.cc:616]: (style) Variable
'clc_evt' is reassigned a value before the old one has been used.
[src/amf/amfnd/clc.cc:1708] -> [src/amf/amfnd/clc.cc:1712]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/clc.cc:1749] -> [src/amf/amfnd/clc.cc:1753]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/clc.cc:1951] -> [src/amf/amfnd/clc.cc:1955]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/clc.cc:2370] -> [src/amf/amfnd/clc.cc:2376]: (style)
Variable 'csi' is reassigned a value before the old one has been used.
[src/amf/amfnd/clc.cc:3052] -> [src/amf/amfnd/clc.cc:3053]: (style)
Variable 'tmp' is reassigned a value before the old one has been used.
[src/amf/amfnd/clc.cc:3172] -> [src/amf/amfnd/clc.cc:3181]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/clc.cc:1356]: (style) The scope of the variable 'curr_rec'
can be reduced.
[src/amf/amfnd/clc.cc:1384]: (style) The scope of the variable 'curr_rec'
can be reduced.
[src/amf/amfnd/clc.cc:3042]: (style) The scope of the variable 'i' can be
reduced.
[src/amf/amfnd/comp.cc:2557] -> [src/amf/amfnd/comp.cc:2561]: (warning)
Either the condition 'if(csi&&m_AVND_COMP_IS_ALL_CSI(comp))' is redundant or
there is possible null pointer dereference: csi.
[src/amf/amfnd/comp.cc:2237] -> [src/amf/amfnd/comp.cc:2250]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/comp.cc:2962] -> [src/amf/amfnd/comp.cc:2972]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/compdb.cc:485]: (warning) Comparison of a boolean expression
with an integer.
[src/amf/amfnd/compdb.cc:486]: (warning) Comparison of a boolean expression
with an integer.
[src/amf/amfnd/compdb.cc:485]: (warning) Comparison of a boolean value
using relational operator (<, >, <= or >=).
[src/amf/amfnd/compdb.cc:732] -> [src/amf/amfnd/compdb.cc:734]: (warning)
Either the condition '!compt' is redundant or there is possible null pointer
dereference: compt.
[src/amf/amfnd/compdb.cc:126] -> [src/amf/amfnd/compdb.cc:134]: (style,
inconclusive) Variable 'rc' is reassigned a value before the old one has been
used if variable is no semaphore variable.
[src/amf/amfnd/compdb.cc:718] -> [src/amf/amfnd/compdb.cc:721]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/compdb.cc:1378]: (style) The scope of the variable
'env_counter' can be reduced.
[src/amf/amfnd/cpm.cc:150]: (warning) Assignment of function parameter has
no effect outside the function. Did you forget dereferencing it?
[src/amf/amfnd/cpm.cc:105] -> [src/amf/amfnd/cpm.cc:111]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/cpm.cc:141] -> [src/amf/amfnd/cpm.cc:146]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/cpm.cc:331] -> [src/amf/amfnd/cpm.cc:346]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/di.cc:1041] -> [src/amf/amfnd/di.cc:1044]: (warning) Either
the condition '!msg' is redundant or there is possible null pointer
dereference: msg.
[src/amf/amfnd/di.cc:1352]: (warning) Possible null pointer dereference:
pending_rec
[src/amf/amfnd/di.cc:999] -> [src/amf/amfnd/di.cc:1015]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/di.cc:1391] -> [src/amf/amfnd/di.cc:1397]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/di.cc:1507] -> [src/amf/amfnd/di.cc:1514]: (style) Variable
'info' is reassigned a value before the old one has been used.
[src/amf/amfnd/di.cc:1578]: (style) The scope of the variable 'pg' can be
reduced.
[src/amf/amfnd/err.cc:387] -> [src/amf/amfnd/err.cc:410]: (warning) Either
the condition
'if(comp&&(m_AVND_COMP_PRES_STATE_IS_UNINSTANTIATED(comp)||m_AVND_COMP_PRES_STATE_IS_INSTANTIATIONFAILED(comp)||m_AVND_COMP_PRES_STATE_IS_TERMINATIONFAILED(comp)))'
is redundant or there is possible null pointer dereference: comp.
[src/amf/amfnd/err.cc:400] -> [src/amf/amfnd/err.cc:410]: (warning) Either
the condition
'if(comp&&(m_AVND_COMP_PRES_STATE_IS_UNINSTANTIATED(comp)||m_AVND_COMP_PRES_STATE_IS_INSTANTIATIONFAILED(comp)||m_AVND_COMP_PRES_STATE_IS_TERMINATIONFAILED(comp)))'
is redundant or there is possible null pointer dereference: comp.
[src/amf/amfnd/err.cc:314] -> [src/amf/amfnd/err.cc:321]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/err.cc:667] -> [src/amf/amfnd/err.cc:673]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/err.cc:695] -> [src/amf/amfnd/err.cc:706]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/err.cc:801] -> [src/amf/amfnd/err.cc:811]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/err.cc:938] -> [src/amf/amfnd/err.cc:949]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/err.cc:1589] -> [src/amf/amfnd/err.cc:1598]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/evt.cc:368] -> [src/amf/amfnd/evt.cc:373]: (style) Variable
'ha_state_event' is reassigned a value before the old one has been used.
[src/amf/amfnd/hcdb.cc:73] -> [src/amf/amfnd/hcdb.cc:75]: (style) Variable
'hc' is reassigned a value before the old one has been used.
[src/amf/amfnd/hcdb.cc:104] -> [src/amf/amfnd/hcdb.cc:113]: (style,
inconclusive) Variable 'error' is reassigned a value before the old one has
been used if variable is no semaphore variable.
[src/amf/amfnd/hcdb.cc:188] -> [src/amf/amfnd/hcdb.cc:201]: (style,
inconclusive) Variable 'error' is reassigned a value before the old one has
been used if variable is no semaphore variable.
[src/amf/amfnd/hcdb.cc:444] -> [src/amf/amfnd/hcdb.cc:447]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/imm.cc:137] -> [src/amf/amfnd/imm.cc:140]: (warning) Either
the condition 'NCSCC_RC_SUCCESS!=res&&evt_ir' is redundant or there is possible
null pointer dereference: evt_ir.
[src/amf/amfnd/imm.cc:38] -> [src/amf/amfnd/imm.cc:44]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/main.cc:365] -> [src/amf/amfnd/main.cc:369]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/main.cc:405] -> [src/amf/amfnd/main.cc:412]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/main.cc:716] -> [src/amf/amfnd/main.cc:733]: (style,
inconclusive) Variable 'rc' is reassigned a value before the old one has been
used if variable is no semaphore variable.
[src/amf/amfnd/main.cc:507]: (style) The scope of the variable 'retry_cnt'
can be reduced.
[src/amf/amfnd/main.cc:606]: (style) Obsolescent function 'usleep' called.
It is recommended to use 'nanosleep' or 'setitimer' instead.
[src/amf/amfnd/mds.cc:104] -> [src/amf/amfnd/mds.cc:107]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/mds.cc:875] -> [src/amf/amfnd/mds.cc:882]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/mds.cc:1549] -> [src/amf/amfnd/mds.cc:1556]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/mds.cc:1587] -> [src/amf/amfnd/mds.cc:1599]: (style)
Variable 'send_info' is reassigned a value before the old one has been used.
[src/amf/amfnd/mds.cc:1588] -> [src/amf/amfnd/mds.cc:1600]: (style)
Variable 'send' is reassigned a value before the old one has been used.
[src/amf/amfnd/pg.cc:700] -> [src/amf/amfnd/pg.cc:704]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/pg.cc:834] -> [src/amf/amfnd/pg.cc:848]: (style) Variable
'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/pg.cc:66]: (style) The scope of the variable 'i' can be
reduced.
[src/amf/amfnd/pg.cc:301]: (style) The scope of the variable 'i' can be
reduced.
[src/amf/amfnd/pg.cc:302]: (style) The scope of the variable 'pg_mem' can
be reduced.
[src/amf/amfnd/pg.cc:400]: (style) The scope of the variable 'pg' can be
reduced.
[src/amf/amfnd/pg.cc:473]: (style) The scope of the variable 'chg_mem' can
be reduced.
[src/amf/amfnd/pg.cc:566]: (style) The scope of the variable 'curr' can be
reduced.
[src/amf/amfnd/pg.cc:738]: (style) The scope of the variable 'i' can be
reduced.
[src/amf/amfnd/pg.cc:582]: (performance) Prefer prefix ++/-- operators for
non-primitive types.
[src/amf/amfnd/proxy.cc:129] -> [src/amf/amfnd/proxy.cc:136]: (warning,
inconclusive) Either the condition '(NCSCC_RC_SUCCESS!=rc)&&rec' is redundant
or there is possible null pointer dereference: rec.
[src/amf/amfnd/proxy.cc:130] -> [src/amf/amfnd/proxy.cc:136]: (warning,
inconclusive) Either the condition '(NCSCC_RC_SUCCESS!=rc)&&rec' is redundant
or there is possible null pointer dereference: rec.
[src/amf/amfnd/proxy.cc:131] -> [src/amf/amfnd/proxy.cc:136]: (warning,
inconclusive) Either the condition '(NCSCC_RC_SUCCESS!=rc)&&rec' is redundant
or there is possible null pointer dereference: rec.
[src/amf/amfnd/proxy.cc:132] -> [src/amf/amfnd/proxy.cc:136]: (warning,
inconclusive) Either the condition '(NCSCC_RC_SUCCESS!=rc)&&rec' is redundant
or there is possible null pointer dereference: rec.
[src/amf/amfnd/proxy.cc:332] -> [src/amf/amfnd/proxy.cc:345]: (style)
Variable 'nd_nd_ava_msg' is reassigned a value before the old one has been used.
[src/amf/amfnd/proxy.cc:646] -> [src/amf/amfnd/proxy.cc:667]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/proxydb.cc:266] -> [src/amf/amfnd/proxydb.cc:269]: (warning)
Either the condition 'if(comp)' is redundant or there is possible null pointer
dereference: comp.
[src/amf/amfnd/proxydb.cc:45] -> [src/amf/amfnd/proxydb.cc:51]: (style)
Variable 'rec' is reassigned a value before the old one has been used.
[src/amf/amfnd/proxydb.cc:92] -> [src/amf/amfnd/proxydb.cc:98]: (style)
Variable 'rec' is reassigned a value before the old one has been used.
[src/amf/amfnd/proxydb.cc:126] -> [src/amf/amfnd/proxydb.cc:128]: (style)
Variable 'rec' is reassigned a value before the old one has been used.
[src/amf/amfnd/sidb.cc:851] -> [src/amf/amfnd/sidb.cc:857]: (style)
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfnd/su.cc:1005] -> [src/amf/amfnd/su.cc:1012]: (style) Variable
'comp' is reassigned a value before the old one has been used.
[src/amf/amfnd/sudb.cc:168] -> [src/amf/amfnd/sudb.cc:167]: (warning)
Either the condition '!su' is redundant or there is possible null pointer
dereference: su.
[src/amf/amfnd/susm.cc:544]: (warning) Comparison of a boolean expression
with an integer.
[src/amf/amfnd/susm.cc:3780] -> [src/amf/amfnd/susm.cc:3770]: (warning)
Either the condition 'csi' is redundant or there is possible null pointer
dereference: csi.
[src/amf/amfnd/susm.cc:959]: (style) The scope of the variable
'are_si_assigned' can be reduced.
[src/amf/amfnd/susm.cc:1556]: (style) The scope of the variable 'is_en' can
be reduced.
[src/amf/amfnd/susm.cc:2714]: (style) The scope of the variable 'is' can be
reduced.
[src/amf/amfnd/util.cc:191]: (style) The scope of the variable 'str' can be
reduced.
[src/amf/amfnd/sudb.cc:298]: (style) The function 'sudb_rec_comp_add' is
never used.
diff --git a/src/amf/amfnd/amfnd.cc b/src/amf/amfnd/amfnd.cc
--- a/src/amf/amfnd/amfnd.cc
+++ b/src/amf/amfnd/amfnd.cc
@@ -55,14 +55,12 @@ uint32_t avnd_evt_avnd_avnd_evh(AVND_CB
if (AVND_AVND_CBK_DEL == avnd_avnd_msg->type) {
/* This is a Callback Del message */
- AVSV_ND2ND_CBK_DEL *del_cbk = nullptr;
- AVND_COMP *o_comp = nullptr;
AVND_COMP_CBK *cbk_rec = nullptr;
std::string comp_name;
- del_cbk = &avnd_avnd_msg->info.cbk_del;
+ AVSV_ND2ND_CBK_DEL *del_cbk = &avnd_avnd_msg->info.cbk_del;
comp_name = Amf::to_string(&del_cbk->comp_name);
- o_comp =
m_AVND_INT_EXT_COMPDB_REC_GET(cb->internode_avail_comp_db, comp_name);
+ AVND_COMP *o_comp =
m_AVND_INT_EXT_COMPDB_REC_GET(cb->internode_avail_comp_db, comp_name);
if (nullptr == o_comp) {
LOG_ER("Comp not in Inter/Ext Comp DB: %s : opq_hdl=
%u", comp_name.c_str(), del_cbk->opq_hdl);
@@ -188,7 +186,6 @@ uint32_t avnd_evt_avnd_avnd_api_resp_msg
{
uint32_t res = NCSCC_RC_SUCCESS;
AVSV_ND2ND_AVND_MSG *avnd_msg = evt->info.avnd;
- AVND_COMP *o_comp = nullptr;
AVSV_AMF_API_RESP_INFO *resp_info =
&avnd_msg->info.msg->info.api_resp_info;
SaAmfHAStateT *ha_state = nullptr;
MDS_DEST reg_dest = 0;
@@ -196,7 +193,7 @@ uint32_t avnd_evt_avnd_avnd_api_resp_msg
TRACE_ENTER2("%s: Type =%u and rc = %u", comp_name.c_str(),
resp_info->type, resp_info->rc);
- o_comp = m_AVND_INT_EXT_COMPDB_REC_GET(cb->internode_avail_comp_db,
comp_name);
+ AVND_COMP *o_comp =
m_AVND_INT_EXT_COMPDB_REC_GET(cb->internode_avail_comp_db, comp_name);
if (nullptr == o_comp) {
LOG_ER("Couldn't find comp in Inter/Ext Comp DB");
res = NCSCC_RC_FAILURE;
@@ -247,7 +244,13 @@ uint32_t avnd_evt_avnd_avnd_api_resp_msg
}
reg_dest = o_comp->reg_dest;
res = avnd_comp_proxied_del(cb, o_comp,
o_comp->pxy_comp, false, nullptr);
+ if (NCSCC_RC_SUCCESS != res) {
+ TRACE("%s: avnd_comp_proxied_del Failed:
rc:%u", __FUNCTION__, res);
+ }
res = avnd_internode_comp_del(cb, o_comp->name);
+ if (NCSCC_RC_SUCCESS != res) {
+ TRACE("%s: avnd_internode_comp_del Failed:
rc:%u", __FUNCTION__, res);
+ }
}
}
diff --git a/src/amf/amfnd/cbq.cc b/src/amf/amfnd/cbq.cc
--- a/src/amf/amfnd/cbq.cc
+++ b/src/amf/amfnd/cbq.cc
@@ -438,8 +438,7 @@ uint32_t avnd_evt_ava_resp_evh(AVND_CB *
/* check, if the older assignment was overriden by new one, if
so trash this resp */
if (!csi) {
- AVND_COMP_CSI_REC *temp_csi = nullptr;
- temp_csi = m_AVND_COMPDB_REC_CSI_GET_FIRST(*comp);
+ AVND_COMP_CSI_REC *temp_csi =
m_AVND_COMPDB_REC_CSI_GET_FIRST(*comp);
if (cbk_rec->cbk_info->param.csi_set.ha !=
temp_csi->si->curr_state) {
@@ -731,7 +730,6 @@ uint32_t avnd_comp_cbq_send(AVND_CB *cb,
uint32_t avnd_comp_cbq_rec_send(AVND_CB *cb, AVND_COMP *comp,
AVND_COMP_CBK *rec, bool timer_start)
{
AVND_MSG msg;
- uint32_t rc = NCSCC_RC_SUCCESS;
AVSV_ND2ND_AVND_MSG *avnd_msg = nullptr;
AVSV_NDA_AVA_MSG *temp_ptr = nullptr;
@@ -745,7 +743,7 @@ uint32_t avnd_comp_cbq_rec_send(AVND_CB
/* populate the msg */
msg.type = AVND_MSG_AVA;
msg.info.ava->type = AVSV_AVND_AMF_CBK_MSG;
- rc = avsv_amf_cbk_copy(&msg.info.ava->info.cbk_info, rec->cbk_info);
+ uint32_t rc = avsv_amf_cbk_copy(&msg.info.ava->info.cbk_info,
rec->cbk_info);
if (NCSCC_RC_SUCCESS != rc)
goto done;
@@ -1129,8 +1127,7 @@ void avnd_comp_unreg_cbk_process(AVND_CB
/* check, if the older assignment was overriden
by new one, if so trash this resp */
if (!csi) {
- AVND_COMP_CSI_REC *temp_csi = nullptr;
- temp_csi =
m_AVND_COMPDB_REC_CSI_GET_FIRST(*comp);
+ AVND_COMP_CSI_REC *temp_csi =
m_AVND_COMPDB_REC_CSI_GET_FIRST(*comp);
if (cbk->cbk_info->param.csi_set.ha !=
temp_csi->si->curr_state) {
avnd_comp_cbq_rec_pop_and_del(cb, comp, cbk, true);
diff --git a/src/amf/amfnd/chc.cc b/src/amf/amfnd/chc.cc
--- a/src/amf/amfnd/chc.cc
+++ b/src/amf/amfnd/chc.cc
@@ -570,19 +570,22 @@ void avnd_comp_hc_rec_del(AVND_CB *cb, A
{
TRACE_ENTER();
/* remove the association with hdl-mngr */
- if (rec->opq_hdl)
- ncshm_destroy_hdl(NCS_SERVICE_ID_AVND, rec->opq_hdl);
+ if (rec) {
- /* stop the healthcheck timer */
- if (m_AVND_TMR_IS_ACTIVE(rec->tmr)) {
- m_AVND_TMR_COMP_HC_STOP(cb, *rec);
+ if (rec->opq_hdl)
+ ncshm_destroy_hdl(NCS_SERVICE_ID_AVND, rec->opq_hdl);
+
+ /* stop the healthcheck timer */
+ if (m_AVND_TMR_IS_ACTIVE(rec->tmr)) {
+ m_AVND_TMR_COMP_HC_STOP(cb, *rec);
+ }
+
+ /* unlink from the comp-hc list */
+ m_AVND_COMPDB_REC_HC_REM(*comp, *rec);
+ delete rec;
}
-
- /* unlink from the comp-hc list */
- m_AVND_COMPDB_REC_HC_REM(*comp, *rec);
TRACE_LEAVE();
/* free the record */
- delete rec;
}
/****************************************************************************
@@ -599,9 +602,8 @@ void avnd_comp_hc_rec_del(AVND_CB *cb, A
******************************************************************************/
void avnd_comp_hc_rec_del_all(AVND_CB *cb, AVND_COMP *comp)
{
- AVND_COMP_HC_REC *rec = 0;
TRACE_ENTER2("Comp '%s'", comp->name.c_str());
-
+ AVND_COMP_HC_REC *rec;
/* scan & delete each healthcheck record */
while (0 != (rec = (AVND_COMP_HC_REC
*)m_NCS_DBLIST_FIND_FIRST(&comp->hc_list))) {
avnd_comp_hc_rec_del(cb, comp, rec);
@@ -839,7 +841,6 @@ void avnd_comp_hc_cmd_stop(AVND_CB *cb,
******************************************************************************/
uint32_t avnd_comp_hc_rec_stop(AVND_CB *cb, AVND_COMP *comp,
AVND_COMP_HC_REC *rec)
{
- AVND_COMP_CBK *cbk_rec = 0;
uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
@@ -851,6 +852,7 @@ uint32_t avnd_comp_hc_rec_stop(AVND_CB *
* healthchecks.
*/
if (m_AVND_COMP_HC_REC_IS_AMF_INITIATED(rec)) {
+ AVND_COMP_CBK *cbk_rec = 0;
m_AVND_COMPDB_CBQ_HC_CBK_GET(comp, rec->key, cbk_rec);
if (cbk_rec)
/* pop & delete this record */
@@ -1014,13 +1016,12 @@ void avnd_comp_hc_finalize(AVND_CB *cb,
******************************************************************************/
uint32_t avnd_dblist_hc_rec_cmp(uint8_t *key1, uint8_t *key2)
{
- int i = 0;
AVND_COMP_HC_REC *rec1, *rec2;
rec1 = (AVND_COMP_HC_REC *)key1;
rec2 = (AVND_COMP_HC_REC *)key2;
- i = avsv_dblist_sahckey_cmp((uint8_t *)&rec1->key, (uint8_t
*)&rec2->key);
+ int i = avsv_dblist_sahckey_cmp((uint8_t *)&rec1->key, (uint8_t
*)&rec2->key);
if (i == 0)
return avsv_dblist_uns64_cmp((uint8_t *)&rec1->req_hdl,
(uint8_t *)&rec2->req_hdl);
diff --git a/src/amf/amfnd/clc.cc b/src/amf/amfnd/clc.cc
--- a/src/amf/amfnd/clc.cc
+++ b/src/amf/amfnd/clc.cc
@@ -607,19 +607,17 @@ done:
******************************************************************************/
static uint32_t comp_clc_resp_callback(NCS_OS_PROC_EXECUTE_TIMED_CB_INFO
*info)
{
- AVND_CLC_EVT *clc_evt = nullptr;
- AVND_EVT *evt = 0;
uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
assert(info != nullptr);
- clc_evt = (AVND_CLC_EVT *)info->i_usr_hdl;
+ AVND_CLC_EVT *clc_evt = (AVND_CLC_EVT *)info->i_usr_hdl;
/* fill the clc-evt param */
clc_evt->exec_stat = info->exec_stat;
/* create the event */
- evt = avnd_evt_create(avnd_cb, AVND_EVT_CLC_RESP, 0, 0, 0, clc_evt,
static_cast<AVND_COMP_FSM_EVT*>(0));
+ AVND_EVT *evt = avnd_evt_create(avnd_cb, AVND_EVT_CLC_RESP, 0, 0, 0,
clc_evt, static_cast<AVND_COMP_FSM_EVT*>(0));
if (!evt) {
rc = NCSCC_RC_FAILURE;
goto done;
@@ -1353,12 +1351,12 @@ uint32_t avnd_comp_clc_st_chng_prc(AVND_
if ((SA_AMF_PRESENCE_INSTANTIATED == prv_st)
&& (SA_AMF_PRESENCE_ORPHANED == final_st)) {
- AVND_COMP_CBK *rec = 0, *curr_rec = 0;
+ AVND_COMP_CBK *rec = 0;
rec = comp->cbk_list;
while (rec) {
/* manage the list ptr's */
- curr_rec = rec;
+ AVND_COMP_CBK *curr_rec = rec;
rec = rec->next;
/* flush out the cbk related to health check */
@@ -1381,7 +1379,6 @@ uint32_t avnd_comp_clc_st_chng_prc(AVND_
if ((SA_AMF_PRESENCE_ORPHANED == prv_st)
&& (SA_AMF_PRESENCE_INSTANTIATED == final_st)) {
- AVND_COMP_CBK *rec = 0, *curr_rec = 0;
if (comp->pend_evt == AVND_COMP_CLC_PRES_FSM_EV_TERM)
rc = avnd_comp_clc_fsm_trigger(cb, comp,
AVND_COMP_CLC_PRES_FSM_EV_TERM);
@@ -1392,10 +1389,10 @@ uint32_t avnd_comp_clc_st_chng_prc(AVND_
if ((comp->pend_evt != AVND_COMP_CLC_PRES_FSM_EV_TERM) &&
(comp->pend_evt != AVND_COMP_CLC_PRES_FSM_EV_RESTART)) {
/* There are no pending events, lets proccess the
callbacks */
- rec = comp->cbk_list;
+ AVND_COMP_CBK *rec = comp->cbk_list;
while (rec) {
/* manage the list ptr's */
- curr_rec = rec;
+ AVND_COMP_CBK *curr_rec = rec;
rec = rec->next;
/* mds dest & hdl might have changed */
@@ -1405,7 +1402,7 @@ uint32_t avnd_comp_clc_st_chng_prc(AVND_
/* send it */
rc = avnd_comp_cbq_rec_send(cb, comp, curr_rec,
true);
- if (NCSCC_RC_SUCCESS != rc && curr_rec) {
+ if (NCSCC_RC_SUCCESS != rc) {
avnd_comp_cbq_rec_pop_and_del(cb, comp,
curr_rec, true);
}
} /* while loop */
@@ -1705,11 +1702,10 @@ uint32_t avnd_comp_clc_xxxing_instfail_h
******************************************************************************/
uint32_t avnd_comp_clc_insting_term_hdler(AVND_CB *cb, AVND_COMP *comp)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER2("'%s': Terminate event in the Instantiating state",
comp->name.c_str());
/* as the comp has not fully instantiated, it is cleaned up */
- rc = avnd_comp_clc_cmd_execute(cb, comp,
AVND_COMP_CLC_CMD_TYPE_CLEANUP);
+ uint32_t rc = avnd_comp_clc_cmd_execute(cb, comp,
AVND_COMP_CLC_CMD_TYPE_CLEANUP);
if (NCSCC_RC_SUCCESS == rc) {
/* reset the comp-reg & instantiate params */
m_AVND_COMP_REG_PARAM_RESET(cb, comp);
@@ -1746,11 +1742,10 @@ uint32_t avnd_comp_clc_insting_term_hdle
******************************************************************************/
uint32_t avnd_comp_clc_insting_clean_hdler(AVND_CB *cb, AVND_COMP *comp)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER2("'%s': Cleanup event in the Instantiating state",
comp->name.c_str());
/* cleanup the comp */
- rc = avnd_comp_clc_cmd_execute(cb, comp,
AVND_COMP_CLC_CMD_TYPE_CLEANUP);
+ uint32_t rc = avnd_comp_clc_cmd_execute(cb, comp,
AVND_COMP_CLC_CMD_TYPE_CLEANUP);
if (NCSCC_RC_SUCCESS == rc) {
/* reset the comp-reg & instantiate params */
m_AVND_COMP_REG_PARAM_RESET(cb, comp);
@@ -1948,11 +1943,10 @@ uint32_t avnd_comp_clc_insting_cleanfail
******************************************************************************/
uint32_t avnd_comp_clc_insting_restart_hdler(AVND_CB *cb, AVND_COMP *comp)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER2("'%s': Restart event in the Instantiating state",
comp->name.c_str());
/* cleanup the comp */
- rc = avnd_comp_clc_cmd_execute(cb, comp,
AVND_COMP_CLC_CMD_TYPE_CLEANUP);
+ uint32_t rc = avnd_comp_clc_cmd_execute(cb, comp,
AVND_COMP_CLC_CMD_TYPE_CLEANUP);
if (NCSCC_RC_SUCCESS == rc) {
/* reset the comp-reg & instantiate params */
m_AVND_COMP_REG_PARAM_RESET(cb, comp);
@@ -2367,13 +2361,12 @@ uint32_t avnd_comp_clc_terming_cleansucc
if ((!comp->su->is_ncs) && (comp->csi_list.n_nodes > 0) &&
(!m_AVND_SU_IS_PREINSTANTIABLE(comp->su))) {
- AVND_COMP_CSI_REC *csi = nullptr;
/*
Explantion written above for PI SU case is valid
here also.
However for a NPI comp in NPI SU, mark it REMOVED
instead of
generating remove done indication.
*/
- csi =
m_AVND_CSI_REC_FROM_COMP_DLL_NODE_GET(m_NCS_DBLIST_FIND_FIRST(&comp->csi_list));
+ AVND_COMP_CSI_REC *csi =
m_AVND_CSI_REC_FROM_COMP_DLL_NODE_GET(m_NCS_DBLIST_FIND_FIRST(&comp->csi_list));
if (csi != nullptr)
m_AVND_COMP_CSI_CURR_ASSIGN_STATE_SET(csi,
AVND_COMP_CSI_ASSIGN_STATE_REMOVED);
}
@@ -3039,18 +3032,17 @@ uint32_t avnd_comp_clc_cmd_execute(AVND_
if (!m_AVND_COMP_TYPE_IS_PREINSTANTIABLE(comp) &&
!m_AVND_COMP_TYPE_IS_PROXIED(comp)) {
AVND_COMP_CSI_REC *csi;
AVSV_ATTR_NAME_VAL *csiattr;
- unsigned int i;
TRACE_1("Component is NPI, %u", comp->csi_list.n_nodes);
if (comp->csi_list.n_nodes == 1) {
+ unsigned int i;
csi =
m_AVND_CSI_REC_FROM_COMP_DLL_NODE_GET(m_NCS_DBLIST_FIND_FIRST(&comp->csi_list));
osafassert(csi);
/* allocate additional env_set memory for the CSI
attributes */
- NCS_OS_ENVIRON_SET_NODE* tmp = nullptr;
- tmp =
static_cast<NCS_OS_ENVIRON_SET_NODE*>(realloc(env_set,
sizeof(NCS_OS_ENVIRON_SET_NODE) * (env_set_nmemb +
+ NCS_OS_ENVIRON_SET_NODE *tmp =
static_cast<NCS_OS_ENVIRON_SET_NODE*>(realloc(env_set,
sizeof(NCS_OS_ENVIRON_SET_NODE) * (env_set_nmemb +
csi->attrs.number)));
osafassert(tmp);
env_set = tmp;
@@ -3169,7 +3161,6 @@ uint32_t avnd_comp_clc_cmd_execute(AVND_
******************************************************************************/
uint32_t avnd_instfail_su_failover(AVND_CB *cb, AVND_SU *su, AVND_COMP
*failed_comp)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER2("Executing Component Failover: Instantiation failed SU:
'%s' : Failed component: '%s'",
su->name.c_str(), failed_comp->name.c_str());
@@ -3178,7 +3169,7 @@ uint32_t avnd_instfail_su_failover(AVND_
/* update comp oper state */
m_AVND_COMP_OPER_STATE_SET(failed_comp, SA_AMF_OPERATIONAL_DISABLED);
- rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
+ uint32_t rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
if (NCSCC_RC_SUCCESS != rc)
goto done;
diff --git a/src/amf/amfnd/comp.cc b/src/amf/amfnd/comp.cc
--- a/src/amf/amfnd/comp.cc
+++ b/src/amf/amfnd/comp.cc
@@ -2234,7 +2234,6 @@ void avnd_pxied_list_init(AVND_COMP *com
******************************************************************************/
uint32_t avnd_comp_proxied_add(AVND_CB *cb, AVND_COMP *comp, AVND_COMP
*pxy_comp, bool avd_upd_needed)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
AVND_COMP_PXIED_REC *rec;
AVSV_PARAM_INFO param;
TRACE_ENTER2("'%s' : '%s'", comp->name.c_str(),
pxy_comp->name.c_str());
@@ -2247,7 +2246,7 @@ uint32_t avnd_comp_proxied_add(AVND_CB *
rec->comp_dll_node.key = (uint8_t *)comp->name.c_str();
/* add rec to link list */
- rc = ncs_db_link_list_add(&pxy_comp->pxied_list, &rec->comp_dll_node);
+ uint32_t rc = ncs_db_link_list_add(&pxy_comp->pxied_list,
&rec->comp_dll_node);
if (NCSCC_RC_SUCCESS != rc)
goto done;
@@ -2558,7 +2557,7 @@ void avnd_comp_cmplete_all_assignment(AV
/* if assignment was overriden by new one */
avnd_comp_cbq_rec_pop_and_del(cb, comp, cbk,
true);
continue;
- } else if (csi && m_AVND_COMP_IS_ALL_CSI(comp)) {
+ } else if (m_AVND_COMP_IS_ALL_CSI(comp)) {
/* if both target all and target one operation
are
* pending, we need not respond for target one
*/
@@ -2959,7 +2958,6 @@ uint32_t avnd_comp_oper_state_avd_sync(A
uint32_t avnd_comp_proxy_status_avd_sync(AVND_CB *cb, AVND_COMP *comp)
{
AVSV_PARAM_INFO param;
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
memset(¶m, 0, sizeof(AVSV_PARAM_INFO));
@@ -2969,7 +2967,7 @@ uint32_t avnd_comp_proxy_status_avd_sync
param.act = AVSV_OBJ_OPR_MOD;
*((uint32_t *)param.value) = m_NCS_OS_HTONL((comp)->proxy_status);
param.value_len = sizeof(uint32_t);
- rc = avnd_di_object_upd_send((cb), ¶m);
+ uint32_t rc = avnd_di_object_upd_send((cb), ¶m);
TRACE_LEAVE2("%u", rc);
return rc;
diff --git a/src/amf/amfnd/compdb.cc b/src/amf/amfnd/compdb.cc
--- a/src/amf/amfnd/compdb.cc
+++ b/src/amf/amfnd/compdb.cc
@@ -123,7 +123,6 @@ typedef struct amf_comp_type {
static SaAisErrorT avnd_compglobalattrs_config_get(SaImmHandleT
immOmHandle)
{
- SaAisErrorT rc = SA_AIS_ERR_FAILED_OPERATION;
const SaImmAttrValuesT_2 **attributes;
SaImmAccessorHandleT accessorHandle;
std::string dn = "safRdn=compGlobalAttributes,safApp=safAmfService";
@@ -131,7 +130,7 @@ static SaAisErrorT avnd_compglobalattrs_
TRACE_ENTER();
amf_saImmOmAccessorInitialize(immOmHandle, accessorHandle);
- rc = amf_saImmOmAccessorGet_o2(immOmHandle, accessorHandle, dn,
nullptr, (SaImmAttrValuesT_2 ***)&attributes);
+ SaAisErrorT rc = amf_saImmOmAccessorGet_o2(immOmHandle, accessorHandle,
dn, nullptr, (SaImmAttrValuesT_2 ***)&attributes);
if (rc != SA_AIS_OK) {
LOG_ER("saImmOmAccessorGet_2 FAILED %u", rc);
goto done;
@@ -482,8 +481,8 @@ uint32_t avnd_comp_oper_req(AVND_CB *cb,
uint32_t disable_restart;
osafassert(sizeof(uint32_t) ==
param->value_len);
disable_restart = ntohl(*(uint32_t
*)(param->value));
- osafassert(disable_restart <= true);
- comp->is_restart_en = (disable_restart == true)
? false : true;
+ osafassert(disable_restart <= 1);
+ comp->is_restart_en = (disable_restart == 1) ?
false : true;
LOG_NO("saAmfCompDisableRestart changed to %u
for '%s'",
disable_restart, comp->name.c_str());
break;
@@ -715,7 +714,7 @@ uint32_t avnd_comptype_oper_req(AVND_CB
goto done;
}
- rc = NCSCC_RC_SUCCESS;
+
done:
rc = NCSCC_RC_SUCCESS;
@@ -729,13 +728,14 @@ static void avnd_comptype_delete(amf_com
{
int arg_counter;
char *argv;
- TRACE_ENTER2("'%s'", compt->name.c_str());
+ TRACE_ENTER();
if (!compt) {
TRACE_LEAVE();
return;
}
-
+
+ TRACE("'%s'", compt->name.c_str());
/* Free saAmfCtDefCmdEnv[i] before freeing saAmfCtDefCmdEnv */
if (compt->saAmfCtDefCmdEnv != nullptr) {
arg_counter = 0;
@@ -1375,12 +1375,11 @@ done1:
*/
void avnd_comp_delete(AVND_COMP *comp)
{
- int env_counter;
SaStringT env;
/* Free saAmfCompCmdEnv[i] before freeing saAmfCompCmdEnv */
if (comp->saAmfCompCmdEnv != nullptr) {
- env_counter = 0;
+ int env_counter = 0;
while ((env = comp->saAmfCompCmdEnv[env_counter++]) != nullptr)
delete [] env;
delete [] comp->saAmfCompCmdEnv;
diff --git a/src/amf/amfnd/cpm.cc b/src/amf/amfnd/cpm.cc
--- a/src/amf/amfnd/cpm.cc
+++ b/src/amf/amfnd/cpm.cc
@@ -102,13 +102,11 @@ uint32_t avnd_pm_rec_free(NCS_DB_LINK_LI
******************************************************************************/
uint32_t avnd_comp_pm_rec_add(AVND_CB *cb, AVND_COMP *comp,
AVND_COMP_PM_REC *rec)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
-
/*update the key */
rec->comp_dll_node.key = (uint8_t *)&rec->pid;
/* add rec */
- rc = ncs_db_link_list_add(&comp->pm_list, &rec->comp_dll_node);
+ uint32_t rc = ncs_db_link_list_add(&comp->pm_list, &rec->comp_dll_node);
if (NCSCC_RC_SUCCESS != rc)
return rc;
@@ -138,16 +136,16 @@ uint32_t avnd_comp_pm_rec_add(AVND_CB *c
******************************************************************************/
void avnd_comp_pm_rec_del(AVND_CB *cb, AVND_COMP *comp, AVND_COMP_PM_REC
*rec)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
SaUint64T pid = rec->pid;
TRACE_ENTER2("Comp '%s'", comp->name.c_str());
/* delete the PM_REC from pm_list */
- rc = ncs_db_link_list_del(&comp->pm_list, (uint8_t *)&rec->pid);
+ uint32_t rc = ncs_db_link_list_del(&comp->pm_list, (uint8_t
*)&rec->pid);
if (NCSCC_RC_SUCCESS != rc) {
LOG_NO("PM Rec doesn't exist in Comp '%s' of pid %llu",
comp->name.c_str(), pid);
}
- rec = nullptr; /* rec is no more, dont use it */
+
+ delete rec; /* rec is no more, dont use it */
/* remove the corresponding element from mon_req list */
rc = avnd_mon_req_del(cb, pid);
@@ -328,7 +326,6 @@ AVND_COMP_PM_REC *avnd_comp_new_rsrc_mon
{
AVND_COMP_PM_REC *rec = 0;
- uint32_t rc = NCSCC_RC_SUCCESS;
*sa_err = SA_AIS_OK;
rec = new AVND_COMP_PM_REC();
@@ -343,7 +340,7 @@ AVND_COMP_PM_REC *avnd_comp_new_rsrc_mon
rec->comp = comp;
/* add the rec to comp's PM_REC */
- rc = avnd_comp_pm_rec_add(cb, comp, rec);
+ uint32_t rc = avnd_comp_pm_rec_add(cb, comp, rec);
if (NCSCC_RC_SUCCESS != rc) {
delete rec;
rec = 0;
diff --git a/src/amf/amfnd/di.cc b/src/amf/amfnd/di.cc
--- a/src/amf/amfnd/di.cc
+++ b/src/amf/amfnd/di.cc
@@ -996,7 +996,6 @@ void avnd_di_uns32_upd_send(int class_id
uint32_t avnd_di_pg_act_send(AVND_CB *cb, const std::string& csi_name,
AVSV_PG_TRACK_ACT actn, bool fover)
{
AVND_MSG msg;
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER2("Csi '%s'", csi_name.c_str());
memset(&msg, 0, sizeof(AVND_MSG));
@@ -1012,7 +1011,7 @@ uint32_t avnd_di_pg_act_send(AVND_CB *cb
msg.info.avd->msg_info.n2d_pg_trk_act.msg_on_fover = fover;
/* send the msg to AvD */
- rc = avnd_di_msg_send(cb, &msg);
+ uint32_t rc = avnd_di_msg_send(cb, &msg);
if (NCSCC_RC_SUCCESS == rc)
msg.info.avd = 0;
@@ -1038,12 +1037,13 @@ uint32_t avnd_di_msg_send(AVND_CB *cb, A
{
AVND_DND_MSG_LIST *rec = 0;
uint32_t rc = NCSCC_RC_SUCCESS;
- TRACE_ENTER2("Msg type '%u'", msg->info.avd->msg_type);
-
+ TRACE_ENTER();
/* nothing to send */
if (!msg)
goto done;
+ TRACE("Msg type '%u'", msg->info.avd->msg_type);
+
/* Verify Ack nack msgs are not buffered */
if (m_AVSV_N2D_MSG_IS_VER_ACK_NACK(msg->info.avd)) {
/*send the response to active AvD (In case MDS has not updated
its
@@ -1349,15 +1349,17 @@ void avnd_diq_rec_send_buffered_msg(AVND
pending_rec->msg.info.avd->msg_info.n2d_opr_state.msg_id == 0) {
found = true;
m_AVND_DIQ_REC_POP(cb,
pending_rec);
-
pending_rec->msg.info.avd->msg_info.n2d_opr_state.msg_id = ++(cb->snd_msg_id);
+ if (pending_rec != nullptr) {
+
pending_rec->msg.info.avd->msg_info.n2d_opr_state.msg_id = ++(cb->snd_msg_id);
- m_AVND_DIQ_REC_PUSH(cb,
pending_rec);
- LOG_NO("Found and resend
buffered oper_state msg for SU:'%s', "
-
"su_oper_state:'%u', node_oper_state:'%u', recovery:'%u'",
-
osaf_extended_name_borrow(&pending_rec->msg.info.avd->msg_info.n2d_opr_state.su_name),
-
pending_rec->msg.info.avd->msg_info.n2d_opr_state.su_oper_state,
-
pending_rec->msg.info.avd->msg_info.n2d_opr_state.node_oper_state,
-
pending_rec->msg.info.avd->msg_info.n2d_opr_state.rec_rcvr.raw);
+ m_AVND_DIQ_REC_PUSH(cb,
pending_rec);
+ LOG_NO("Found and
resend buffered oper_state msg for SU:'%s', "
+
"su_oper_state:'%u', node_oper_state:'%u', recovery:'%u'",
+
osaf_extended_name_borrow(&pending_rec->msg.info.avd->msg_info.n2d_opr_state.su_name),
+
pending_rec->msg.info.avd->msg_info.n2d_opr_state.su_oper_state,
+
pending_rec->msg.info.avd->msg_info.n2d_opr_state.node_oper_state,
+
pending_rec->msg.info.avd->msg_info.n2d_opr_state.rec_rcvr.raw);
+ }
}
}
}
@@ -1388,13 +1390,12 @@ void avnd_diq_rec_send_buffered_msg(AVND
uint32_t avnd_diq_rec_send(AVND_CB *cb, AVND_DND_MSG_LIST *rec)
{
AVND_MSG msg;
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
memset(&msg, 0, sizeof(AVND_MSG));
/* copy the contents from the record */
- rc = avnd_msg_copy(cb, &msg, &rec->msg);
+ uint32_t rc = avnd_msg_copy(cb, &msg, &rec->msg);
/* send the message to AvD */
if (NCSCC_RC_SUCCESS == rc)
@@ -1504,14 +1505,13 @@ uint32_t avnd_evt_tmr_avd_hb_duration_ev
uint32_t avnd_evt_avd_role_change_evh(AVND_CB *cb, AVND_EVT *evt)
{
uint32_t rc = NCSCC_RC_SUCCESS;
- AVSV_D2N_ROLE_CHANGE_INFO *info = nullptr;
V_DEST_RL mds_role;
SaAmfHAStateT prev_ha_state;
TRACE_ENTER();
/* Correct the counters first. */
- info = &evt->info.avd->msg_info.d2n_role_change_info;
+ AVSV_D2N_ROLE_CHANGE_INFO * info =
&evt->info.avd->msg_info.d2n_role_change_info;
TRACE("MsgId: %u,NodeId:%u, role rcvd:%u role present:%u",\
info->msg_id, info->node_id, info->role,
cb->avail_state_avnd);
@@ -1575,12 +1575,11 @@ uint32_t avnd_evt_avd_role_change_evh(AV
uint32_t avnd_di_resend_pg_start_track(AVND_CB *cb)
{
uint32_t rc = NCSCC_RC_SUCCESS;
- AVND_PG *pg = 0;
TRACE_ENTER();
for (const auto& pg_rec : cb->pgdb) {
- pg = pg_rec.second;
+ AVND_PG *pg = pg_rec.second;
rc = avnd_di_pg_act_send(cb, pg->csi_name,
AVSV_PG_TRACK_ACT_START, true);
if (NCSCC_RC_SUCCESS != rc)
diff --git a/src/amf/amfnd/err.cc b/src/amf/amfnd/err.cc
--- a/src/amf/amfnd/err.cc
+++ b/src/amf/amfnd/err.cc
@@ -311,14 +311,13 @@ uint32_t avnd_evt_ava_err_clear_evh(AVND
* @return NCSCC_RC_SUCCESS/NCSCC_RC_FAILURE.
*/
static uint32_t avnd_err_rcvr_cluster_reset(AVND_CB *cb, AVND_SU
*failed_su, AVND_COMP *failed_comp) {
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
m_AVND_COMP_FAILED_SET(failed_comp);
m_AVND_SU_FAILED_SET(failed_su);
m_AVND_COMP_OPER_STATE_SET(failed_comp, SA_AMF_OPERATIONAL_DISABLED);
- rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
+ uint32_t rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
if (NCSCC_RC_SUCCESS != rc)
goto done;
@@ -360,10 +359,14 @@ uint32_t avnd_err_process(AVND_CB *cb, A
{
uint32_t esc_rcvr = err_info->rec_rcvr.raw;
uint32_t rc = NCSCC_RC_SUCCESS;
- TRACE_ENTER2("Comp:'%s' esc_rcvr:'%u'", comp->name.c_str(), esc_rcvr);
+ const uint32_t previous_esc_rcvr = esc_rcvr;
+ TRACE_ENTER();
- const uint32_t previous_esc_rcvr = esc_rcvr;
+ if (!comp)
+ goto done;
+ TRACE("Comp:'%s' esc_rcvr:'%u'", comp->name.c_str(), esc_rcvr);
+
/* If Amf was waiting for down event to come regarding term cbq, but
error has occurred, so reset the variable (irrespective of Sa-Aware
PI or Proxied PI)*/
@@ -407,7 +410,7 @@ uint32_t avnd_err_process(AVND_CB *cb, A
}
/* We need not entertain errors when comp is not in shape. */
- if (comp && (m_AVND_COMP_PRES_STATE_IS_UNINSTANTIATED(comp) ||
+ if ((m_AVND_COMP_PRES_STATE_IS_UNINSTANTIATED(comp) ||
m_AVND_COMP_PRES_STATE_IS_INSTANTIATIONFAILED(comp) ||
m_AVND_COMP_PRES_STATE_IS_TERMINATIONFAILED(comp)))
goto done;
@@ -469,8 +472,6 @@ uint32_t avnd_err_process(AVND_CB *cb, A
/* execute the recovery */
rc = avnd_err_recover(cb, comp->su, comp, esc_rcvr);
- if (NCSCC_RC_SUCCESS != rc)
- goto done;
done:
TRACE_LEAVE2("Return value:'%u'", rc);
@@ -664,13 +665,11 @@ uint32_t avnd_err_recover(AVND_CB *cb, A
******************************************************************************/
static uint32_t avnd_err_rcvr_comp_restart(AVND_CB *cb, AVND_COMP *comp)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
-
/* mark the comp failed */
m_AVND_COMP_FAILED_SET(comp);
- rc = comp_restart_initiate(comp);
+ uint32_t rc = comp_restart_initiate(comp);
TRACE_LEAVE2("%u", rc);
return rc;
@@ -692,7 +691,6 @@ static uint32_t avnd_err_rcvr_comp_resta
******************************************************************************/
uint32_t avnd_err_rcvr_su_restart(AVND_CB *cb, AVND_SU *su, AVND_COMP
*failed_comp)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
/* mark the su & comp failed */
@@ -703,7 +701,7 @@ uint32_t avnd_err_rcvr_su_restart(AVND_C
/* change the comp & su oper state to disabled */
m_AVND_SU_OPER_STATE_SET(su, SA_AMF_OPERATIONAL_DISABLED);
m_AVND_COMP_OPER_STATE_SET(failed_comp, SA_AMF_OPERATIONAL_DISABLED);
- rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
+ uint32_t rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
if (NCSCC_RC_SUCCESS != rc)
goto done;
@@ -798,17 +796,14 @@ uint32_t avnd_err_rcvr_su_restart(AVND_C
*/
uint32_t avnd_err_rcvr_comp_failover(AVND_CB *cb, AVND_COMP *failed_comp)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
- AVND_SU *su;
-
TRACE_ENTER2("'%s'", failed_comp->name.c_str());
- su = failed_comp->su;
+ AVND_SU *su = failed_comp->su;
/* mark the comp failed */
m_AVND_COMP_FAILED_SET(failed_comp);
/* update comp oper state */
m_AVND_COMP_OPER_STATE_SET(failed_comp, SA_AMF_OPERATIONAL_DISABLED);
- rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
+ uint32_t rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
if (NCSCC_RC_SUCCESS != rc)
goto done;
@@ -935,7 +930,6 @@ done:
******************************************************************************/
uint32_t avnd_err_rcvr_node_switchover(AVND_CB *cb, AVND_SU *failed_su,
AVND_COMP *failed_comp)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
AVND_COMP *comp;
/* increase log level to info */
@@ -946,7 +940,7 @@ uint32_t avnd_err_rcvr_node_switchover(A
/* update comp oper state */
m_AVND_COMP_OPER_STATE_SET(failed_comp, SA_AMF_OPERATIONAL_DISABLED);
- rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
+ uint32_t rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
if (NCSCC_RC_SUCCESS != rc)
goto done;
@@ -1586,7 +1580,6 @@ uint32_t avnd_evt_tmr_node_err_esc_evh(A
******************************************************************************/
uint32_t avnd_err_rcvr_node_failfast(AVND_CB *cb, AVND_SU *failed_su,
AVND_COMP *failed_comp)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
/* mark the comp & su failed */
@@ -1595,7 +1588,7 @@ uint32_t avnd_err_rcvr_node_failfast(AVN
/* update comp oper state */
m_AVND_COMP_OPER_STATE_SET(failed_comp, SA_AMF_OPERATIONAL_DISABLED);
- rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
+ uint32_t rc = avnd_comp_oper_state_avd_sync(cb, failed_comp);
if (NCSCC_RC_SUCCESS != rc)
goto done;
diff --git a/src/amf/amfnd/evt.cc b/src/amf/amfnd/evt.cc
--- a/src/amf/amfnd/evt.cc
+++ b/src/amf/amfnd/evt.cc
@@ -365,12 +365,11 @@ uint32_t avnd_evt_send(AVND_CB *cb, AVND
\**************************************************************************/
uint32_t avnd_evt_ha_state_change_evh(AVND_CB *cb, AVND_EVT *evt)
{
- AVND_HA_STATE_CHANGE_EVT *ha_state_event = nullptr;
uint32_t rc = NCSCC_RC_FAILURE;
TRACE_ENTER();
- ha_state_event = &evt->info.ha_state_change;
+ AVND_HA_STATE_CHANGE_EVT *ha_state_event = &evt->info.ha_state_change;
if (nullptr == ha_state_event)
return rc;
diff --git a/src/amf/amfnd/hcdb.cc b/src/amf/amfnd/hcdb.cc
--- a/src/amf/amfnd/hcdb.cc
+++ b/src/amf/amfnd/hcdb.cc
@@ -70,9 +70,7 @@ AVND_HCTYPE *avnd_hctypedb_rec_get(AVND_
static AVND_HC *hc_create(AVND_CB *cb, const std::string &dn, const
SaImmAttrValuesT_2 **attributes)
{
int rc = -1;
- AVND_HC *hc = nullptr;
-
- hc = new AVND_HC();
+ AVND_HC *hc = new AVND_HC();
if
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfHealthcheckPeriod"),
attributes, 0, &hc->period) != SA_AIS_OK) {
LOG_ER("Get saAmfHealthcheckPeriod FAILED for '%s'",
dn.c_str());
@@ -101,7 +99,6 @@ static AVND_HC *hc_create(AVND_CB *cb, c
SaAisErrorT avnd_hc_config_get(AVND_COMP *comp)
{
- SaAisErrorT error = SA_AIS_ERR_FAILED_OPERATION;
SaImmSearchHandleT searchHandle;
SaImmSearchParametersT_2 searchParam;
SaNameT hc_name;
@@ -110,7 +107,7 @@ SaAisErrorT avnd_hc_config_get(AVND_COMP
SaImmHandleT immOmHandle;
SaVersionT immVersion = { 'A', 2, 15 };
- error = saImmOmInitialize_cond(&immOmHandle, nullptr, &immVersion);
+ SaAisErrorT error = saImmOmInitialize_cond(&immOmHandle, nullptr,
&immVersion);
if (error != SA_AIS_OK) {
LOG_CR("saImmOmInitialize failed: %u", error);
goto done;
@@ -185,7 +182,6 @@ static AVND_HCTYPE *hctype_create(AVND_C
SaAisErrorT avnd_hctype_config_get(SaImmHandleT immOmHandle, const
std::string &comptype_dn)
{
- SaAisErrorT error = SA_AIS_ERR_FAILED_OPERATION;
SaImmSearchHandleT searchHandle;
SaImmSearchParametersT_2 searchParam;
SaNameT hc_name;
@@ -198,7 +194,7 @@ SaAisErrorT avnd_hctype_config_get(SaImm
searchParam.searchOneAttr.attrValueType = SA_IMM_ATTR_SASTRINGT;
searchParam.searchOneAttr.attrValue = &className;
- error = amf_saImmOmSearchInitialize_o2(immOmHandle, comptype_dn,
+ SaAisErrorT error = amf_saImmOmSearchInitialize_o2(immOmHandle,
comptype_dn,
SA_IMM_SUBTREE, SA_IMM_SEARCH_ONE_ATTR |
SA_IMM_SEARCH_GET_ALL_ATTR,
&searchParam, nullptr, searchHandle);
@@ -441,11 +437,8 @@ uint32_t avnd_hctype_oper_req(AVND_CB *c
goto done;
}
- rc = NCSCC_RC_SUCCESS;
-
done:
rc = NCSCC_RC_SUCCESS;
-
TRACE_LEAVE();
return rc;
}
diff --git a/src/amf/amfnd/imm.cc b/src/amf/amfnd/imm.cc
--- a/src/amf/amfnd/imm.cc
+++ b/src/amf/amfnd/imm.cc
@@ -35,13 +35,12 @@ extern const AVND_EVT_HDLR g_avnd_func_l
* @return void*
*/
void ImmReader::imm_reader_thread() {
- uint32_t rc = SA_AIS_OK;
AVND_EVT *evt;
TRACE_ENTER();
NCS_SEL_OBJ mbx_fd;
/* create the mail box */
- rc = m_NCS_IPC_CREATE(&ir_cb.mbx);
+ uint32_t rc = m_NCS_IPC_CREATE(&ir_cb.mbx);
if (NCSCC_RC_SUCCESS != rc) {
LOG_CR("AvND Mailbox creation failed");
exit(EXIT_FAILURE);
@@ -137,7 +136,7 @@ void ImmReader::ir_process_event(AVND_EV
TRACE("Imm Read:'%d'", evt_ir->info.ir_evt.status);
/* if failure, free the event */
- if (NCSCC_RC_SUCCESS != res && evt_ir)
+ if (NCSCC_RC_SUCCESS != res)
avnd_evt_destroy(evt_ir);
}
done:
diff --git a/src/amf/amfnd/main.cc b/src/amf/amfnd/main.cc
--- a/src/amf/amfnd/main.cc
+++ b/src/amf/amfnd/main.cc
@@ -362,11 +362,10 @@ AVND_CB *avnd_cb_create()
******************************************************************************/
uint32_t avnd_mbx_create(AVND_CB *cb)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
/* create the mail box */
- rc = m_NCS_IPC_CREATE(&cb->mbx);
+ uint32_t rc = m_NCS_IPC_CREATE(&cb->mbx);
if (NCSCC_RC_SUCCESS != rc) {
LOG_CR("AvND Mailbox creation failed");
goto err;
@@ -402,14 +401,13 @@ uint32_t avnd_mbx_create(AVND_CB *cb)
******************************************************************************/
uint32_t avnd_ext_intf_create(AVND_CB *cb)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
EDU_ERR err = EDU_NORMAL;
TRACE_ENTER();
/* EDU initialisation */
m_NCS_EDU_HDL_INIT(&cb->edu_hdl);
- rc = m_NCS_EDU_COMPILE_EDP(&cb->edu_hdl, avsv_edp_dnd_msg, &err);
+ uint32_t rc = m_NCS_EDU_COMPILE_EDP(&cb->edu_hdl, avsv_edp_dnd_msg,
&err);
if (rc != NCSCC_RC_SUCCESS) {
LOG_ER("%u, EDU compilation failed",__LINE__);
@@ -504,9 +502,9 @@ static int open_amfd_fifo() {
const std::string fifo_dir = PKGLOCALSTATEDIR;
std::string fifo_file = fifo_dir + "/" + "osafamfd.fifo";
int fifo_fd = -1;
- int retry_cnt = 0;
if (access(fifo_file.c_str(), F_OK ) != -1 ) {
+ int retry_cnt = 0;
do {
if (retry_cnt > 0) {
osaf_nanosleep(&kHundredMilliseconds);
@@ -603,7 +601,7 @@ void avnd_main_process(void)
case SA_AIS_OK:
break;
case SA_AIS_ERR_BAD_HANDLE:
- usleep(100000);
+ osaf_nanosleep(&kHundredMilliseconds);
LOG_NO("saClmDispatch BAD_HANDLE");
rc = avnd_start_clm_init_bg();
osafassert(rc == SA_AIS_OK);
@@ -713,7 +711,6 @@ static uint32_t avnd_evt_invalid_evh(AVN
**************************************************************************/
static void hydra_config_get(AVND_CB *cb)
{
- SaAisErrorT rc = SA_AIS_OK;
SaImmHandleT immOmHandle;
SaVersionT immVersion = { 'A', 2, 15 };
const SaImmAttrValuesT_2 **attributes;
@@ -730,7 +727,7 @@ static void hydra_config_get(AVND_CB *cb
immutil_saImmOmInitialize(&immOmHandle, nullptr, &immVersion);
amf_saImmOmAccessorInitialize(immOmHandle, accessorHandle);
- rc = amf_saImmOmAccessorGet_o2(immOmHandle, accessorHandle, dn,
attributeNames,
+ SaAisErrorT rc = amf_saImmOmAccessorGet_o2(immOmHandle, accessorHandle,
dn, attributeNames,
(SaImmAttrValuesT_2 ***)&attributes);
if (rc != SA_AIS_OK) {
diff --git a/src/amf/amfnd/mds.cc b/src/amf/amfnd/mds.cc
--- a/src/amf/amfnd/mds.cc
+++ b/src/amf/amfnd/mds.cc
@@ -101,10 +101,8 @@ uint32_t avnd_mds_reg(AVND_CB *cb)
NCSMDS_INFO mds_info;
NCSADA_INFO ada_info;
MDS_SVC_ID svc_ids[2];
- uint32_t rc = NCSCC_RC_SUCCESS;
-
/* get the mds-hdl & avnd mds address */
- rc = avnd_mds_param_get(cb);
+ uint32_t rc = avnd_mds_param_get(cb);
if (NCSCC_RC_SUCCESS != rc) {
LOG_CR("MDS param get failed");
return NCSCC_RC_FAILURE;
@@ -872,14 +870,13 @@ done:
uint32_t avnd_mds_flat_ava_enc(AVND_CB *cb, MDS_CALLBACK_ENC_INFO
*enc_info)
{
AVSV_NDA_AVA_MSG *ava;
- uint32_t rc = NCSCC_RC_SUCCESS, i;
SaStringT value = nullptr;
ava = ((AVND_MSG *)enc_info->i_msg)->info.ava;
osafassert(ava);
/* encode top-level ava message structure into userbuf */
- rc = ncs_encode_n_octets_in_uba(enc_info->io_uba, (uint8_t *)ava,
sizeof(AVSV_NDA_AVA_MSG));
+ uint32_t rc = ncs_encode_n_octets_in_uba(enc_info->io_uba, (uint8_t
*)ava, sizeof(AVSV_NDA_AVA_MSG));
if (NCSCC_RC_SUCCESS != rc)
goto done;
@@ -910,7 +907,7 @@ uint32_t avnd_mds_flat_ava_enc(AVND_CB *
}
if (cbk_info->param.csi_set.attrs.number) {
- for(i=0;
i<cbk_info->param.csi_set.attrs.number; i++) {
+ for(uint32_t i=0;
i<cbk_info->param.csi_set.attrs.number; i++) {
rc =
ncs_encode_n_octets_in_uba(enc_info->io_uba,
(uint8_t
*)&cbk_info->param.csi_set.attrs.list[i].name,
sizeof(SaNameT));
@@ -975,7 +972,7 @@ uint32_t avnd_mds_flat_ava_enc(AVND_CB *
cbk_info->param.pg_track.buf.numberOfItems);
if (NCSCC_RC_SUCCESS != rc)
goto done;
- for (i = 0; i <
cbk_info->param.pg_track.buf.numberOfItems; i++) {
+ for (uint32_t i = 0; i <
cbk_info->param.pg_track.buf.numberOfItems; i++) {
if
(osaf_is_an_extended_name(&cbk_info->param.pg_track.buf.notification[i].member.compName))
{
osaf_encode_sanamet(enc_info->io_uba,
&cbk_info->param.pg_track.buf.notification[i].member.compName);
}
@@ -1546,14 +1543,13 @@ done:
uint32_t avnd_mds_param_get(AVND_CB *cb)
{
NCSADA_INFO ada_info;
- uint32_t rc = NCSCC_RC_SUCCESS;
memset(&ada_info, 0, sizeof(ada_info));
ada_info.req = NCSADA_GET_HDLS;
/* invoke ada request */
- rc = ncsada_api(&ada_info);
+ uint32_t rc = ncsada_api(&ada_info);
if (NCSCC_RC_SUCCESS != rc)
goto done;
@@ -1584,8 +1580,6 @@ uint32_t avnd_avnd_mds_send(AVND_CB *cb,
{
NCSMDS_INFO mds_info;
uint32_t rc = NCSCC_RC_SUCCESS;
- MDS_SEND_INFO *send_info = nullptr;
- MDS_SENDTYPE_SNDRSP_INFO *send = nullptr;
TRACE_ENTER();
memset(&mds_info, 0, sizeof(NCSMDS_INFO));
@@ -1596,8 +1590,8 @@ uint32_t avnd_avnd_mds_send(AVND_CB *cb,
mds_info.i_op = MDS_SEND;
- send_info = &mds_info.info.svc_send;
- send = &send_info->info.sndrsp;
+ MDS_SEND_INFO *send_info = &mds_info.info.svc_send;
+ MDS_SENDTYPE_SNDRSP_INFO *send = &send_info->info.sndrsp;
/* populate the send info */
send_info->i_msg = (NCSCONTEXT)i_msg;
diff --git a/src/amf/amfnd/pg.cc b/src/amf/amfnd/pg.cc
--- a/src/amf/amfnd/pg.cc
+++ b/src/amf/amfnd/pg.cc
@@ -63,7 +63,7 @@ static uint32_t avnd_pg_start_rsp_prc(AV
static uint32_t avnd_pg_start_rsp_prc(AVND_CB *cb, AVND_PG *pg,
AVSV_D2N_PG_TRACK_ACT_RSP_MSG_INFO *info)
{
AVND_PG_TRK *curr = 0, *prv = 0;
- uint32_t rc = NCSCC_RC_SUCCESS, i = 0;
+ uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
if (true == info->is_csi_exist) { /* => +ve resp */
@@ -72,7 +72,7 @@ static uint32_t avnd_pg_start_rsp_prc(AV
/* update the mem-list */
osafassert(!pg->mem_list.n_nodes);
- for (i = 0; i < info->mem_list.numberOfItems; i++)
+ for (uint32_t i = 0; i < info->mem_list.numberOfItems; i++)
avnd_pgdb_mem_rec_add(cb, pg,
&info->mem_list.notification[i]);
/* now send pending resp to all the appl */
@@ -298,14 +298,15 @@ static uint32_t avnd_process_pg_track_st
AVSV_D2N_PG_TRACK_ACT_RSP_MSG_INFO *info)
{
AVND_PG_TRK *curr = 0;
- uint32_t rc = NCSCC_RC_SUCCESS, i = 0;
- AVND_PG_MEM *pg_mem = 0, *mem_curr = 0, *mem_prv = 0;
+ uint32_t rc = NCSCC_RC_SUCCESS;
+ AVND_PG_MEM *mem_curr = 0, *mem_prv = 0;
SaAmfProtectionGroupNotificationT *mem_info;
TRACE_ENTER2("%u", info->is_csi_exist);
if (true == info->is_csi_exist) { /* => +ve resp */
+ AVND_PG_MEM *pg_mem;
/* Walk through the list */
- for (i = 0; i < info->mem_list.numberOfItems; i++) {
+ for (uint32_t i = 0; i < info->mem_list.numberOfItems; i++) {
mem_info = &info->mem_list.notification[i];
/* get the mem rec */
pg_mem = m_AVND_PGDB_MEM_REC_GET(*pg,
mem_info->member.compName);
@@ -397,7 +398,6 @@ static uint32_t avnd_process_pg_track_st
uint32_t avnd_evt_avd_pg_track_act_rsp_evh(AVND_CB *cb, AVND_EVT *evt)
{
AVSV_D2N_PG_TRACK_ACT_RSP_MSG_INFO *info =
&evt->info.avd->msg_info.d2n_pg_track_act_rsp;
- AVND_PG *pg = 0;
uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER2("Actn'%u'", info->actn);
@@ -413,7 +413,7 @@ uint32_t avnd_evt_avd_pg_track_act_rsp_e
avnd_di_msg_ack_process(cb, info->msg_id_ack);
/* get the pg rec */
- pg = cb->pgdb.find(Amf::to_string(&info->csi_name));
+ AVND_PG *pg =
cb->pgdb.find(Amf::to_string(&info->csi_name));
TRACE("pg '%p', msg_on_fover '%u'", pg,
info->msg_on_fover);
if (true == info->msg_on_fover) {
if (nullptr != pg) {
@@ -470,7 +470,6 @@ uint32_t avnd_evt_avd_pg_upd_evh(AVND_CB
AVSV_D2N_PG_UPD_MSG_INFO *info = &evt->info.avd->msg_info.d2n_pg_upd;
AVND_PG *pg = 0;
AVND_PG_TRK *curr = 0;
- AVND_PG_MEM *chg_mem = 0;
uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER2("is_csi_del=%u", info->is_csi_del);
@@ -502,6 +501,7 @@ uint32_t avnd_evt_avd_pg_upd_evh(AVND_CB
/* delete pg rec */
rc = avnd_pgdb_rec_del(cb, pg->csi_name);
} else {
+ AVND_PG_MEM *chg_mem = 0;
/* => this update is for csi updation */
/* update the pg mem-list */
@@ -563,7 +563,6 @@ uint32_t avnd_evt_avd_pg_upd_evh(AVND_CB
void avnd_pg_finalize(AVND_CB *cb, SaAmfHandleT hdl, MDS_DEST *dest)
{
AVND_PG_TRK_KEY key;
- AVND_PG *curr = 0;
AmfDb<std::string, AVND_PG>::iterator it, next_elem;
TRACE_ENTER();
@@ -579,8 +578,8 @@ void avnd_pg_finalize(AVND_CB *cb, SaAmf
// This is to avoid the case the an pgdb element is deleted
inside
// nested functions
next_elem = it;
- next_elem++;
- curr = it->second;
+ ++next_elem;
+ AVND_PG *curr = it->second;
/* delete the matching track recs, if any */
avnd_pg_trk_rmv(cb, curr, &key);
/* if no other appl tracks this pg, stop tracking it */
@@ -697,11 +696,10 @@ uint32_t avnd_pg_track_start(AVND_CB *cb
******************************************************************************/
uint32_t avnd_pg_track_stop(AVND_CB *cb, AVND_PG *pg)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER2("%s", pg->csi_name.c_str());
/* send pg-stop req to avd */
- rc = avnd_di_pg_act_send(cb, pg->csi_name, AVSV_PG_TRACK_ACT_STOP,
false);
+ uint32_t rc = avnd_di_pg_act_send(cb, pg->csi_name,
AVSV_PG_TRACK_ACT_STOP, false);
if (NCSCC_RC_SUCCESS != rc) {
TRACE("avnd_di_pg_act_send failed for = %s",
pg->csi_name.c_str());
}
@@ -735,7 +733,7 @@ uint32_t avnd_pg_cbk_send(AVND_CB *cb, A
AVND_PG_MEM *curr_mem = 0;
AVSV_AMF_CBK_INFO *cbk_info = 0;
AVSV_AMF_PG_TRACK_PARAM *pg_param = 0;
- uint32_t i = 0, rc = NCSCC_RC_SUCCESS;
+ uint32_t rc = NCSCC_RC_SUCCESS;
uint32_t number_of_items = 0;
TRACE_ENTER();
@@ -759,7 +757,7 @@ uint32_t avnd_pg_cbk_send(AVND_CB *cb, A
/* => this csi exists... invoke the cbk as per the track flags
*/
if ((m_AVND_PG_TRK_IS_CURRENT(trk) ||
m_AVND_PG_TRK_IS_CHANGES(trk))) {
/*** include all the current members ***/
-
+ uint32_t i;
/* we need to include the comp which just got removed
from group */
if (chg_mem && (chg_mem->info.change ==
SA_AMF_PROTECTION_GROUP_REMOVED)
&& m_AVND_PG_TRK_IS_CHANGES(trk))
@@ -767,7 +765,7 @@ uint32_t avnd_pg_cbk_send(AVND_CB *cb, A
/* allocate the buffer */
pg_param->buf.notification =
static_cast<SaAmfProtectionGroupNotificationT*>(calloc(number_of_items,
-
sizeof(SaAmfProtectionGroupNotificationT)));
+
sizeof(SaAmfProtectionGroupNotificationT)));
/* fill all the current members */
for (curr_mem = (AVND_PG_MEM
*)m_NCS_DBLIST_FIND_FIRST(&pg->mem_list), i = 0;
@@ -831,7 +829,6 @@ uint32_t avnd_pg_cbk_send(AVND_CB *cb, A
uint32_t avnd_pg_cbk_msg_send(AVND_CB *cb, AVND_PG_TRK *trk,
AVSV_AMF_CBK_INFO *cbk_info)
{
AVND_MSG msg;
- uint32_t rc = NCSCC_RC_SUCCESS;
TRACE_ENTER();
memset(&msg, 0, sizeof(AVND_MSG));
@@ -845,7 +842,7 @@ uint32_t avnd_pg_cbk_msg_send(AVND_CB *c
msg.info.ava->info.cbk_info = cbk_info;
/* send the message to AvA */
- rc = avnd_mds_send(cb, &msg, &trk->info.key.mds_dest,
+ uint32_t rc = avnd_mds_send(cb, &msg, &trk->info.key.mds_dest,
((m_AVND_PG_TRK_IS_CURRENT(trk)) && (true ==
trk->info.is_syn)) ? &trk->info.mds_ctxt : 0);
if (NCSCC_RC_SUCCESS == rc)
msg.info.ava = 0;
diff --git a/src/amf/amfnd/proxy.cc b/src/amf/amfnd/proxy.cc
--- a/src/amf/amfnd/proxy.cc
+++ b/src/amf/amfnd/proxy.cc
@@ -133,7 +133,7 @@ uint32_t avnd_evt_ava_comp_val_req(AVND_
/* send the message */
rc = avnd_diq_rec_send(cb, rec);
- if ((NCSCC_RC_SUCCESS != rc) && rec) {
+ if (NCSCC_RC_SUCCESS != rc) {
LOG_ER("avnd_diq_rec_send:failed:%s,Type:%u and
Hdl%llx",
comp_name.c_str(), api_info->type,
reg->hdl);
/* pop & delete */
@@ -329,7 +329,6 @@ uint32_t avnd_avnd_msg_send(AVND_CB *cb,
{
uint32_t rc = NCSCC_RC_SUCCESS;
AVND_MSG msg;
- AVSV_ND2ND_AVA_MSG *nd_nd_ava_msg = nullptr;
MDS_DEST i_to_dest = 0;
AVSV_AMF_API_INFO *info = (AVSV_AMF_API_INFO *)msg_info;
@@ -342,7 +341,7 @@ uint32_t avnd_avnd_msg_send(AVND_CB *cb,
msg.info.avnd = static_cast<AVSV_ND2ND_AVND_MSG*>(calloc(1,
sizeof(AVSV_ND2ND_AVND_MSG)));
msg.type = AVND_MSG_AVND;
- nd_nd_ava_msg = static_cast<AVSV_NDA_AVA_MSG*>(calloc(1,
sizeof(AVSV_NDA_AVA_MSG)));
+ AVSV_ND2ND_AVA_MSG *nd_nd_ava_msg =
static_cast<AVSV_NDA_AVA_MSG*>(calloc(1, sizeof(AVSV_NDA_AVA_MSG)));
msg.info.avnd->type = AVND_AVND_AVA_MSG;
msg.info.avnd->info.msg = nd_nd_ava_msg;
@@ -643,7 +642,6 @@ uint32_t avnd_int_ext_comp_val(AVND_CB *
******************************************************************************/
uint32_t avnd_avnd_cbk_del_send(AVND_CB *cb, const std::string &comp_name,
uint32_t *opq_hdl, NODE_ID *node_id)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
MDS_DEST i_to_dest = 0;
AVND_MSG msg;
SaNameT name;
@@ -664,7 +662,7 @@ uint32_t avnd_avnd_cbk_del_send(AVND_CB
i_to_dest = avnd_get_mds_dest_from_nodeid(cb, *node_id);
- rc = avnd_avnd_mds_send(cb, i_to_dest, &msg);
+ uint32_t rc = avnd_avnd_mds_send(cb, i_to_dest, &msg);
if (NCSCC_RC_SUCCESS != rc) {
LOG_ER("AvND Send Failure:%s:NodeID:%u,opq_hdl:%u,MdsDest:%"
PRId64,
diff --git a/src/amf/amfnd/proxydb.cc b/src/amf/amfnd/proxydb.cc
--- a/src/amf/amfnd/proxydb.cc
+++ b/src/amf/amfnd/proxydb.cc
@@ -42,13 +42,12 @@
******************************************************************************/
uint32_t avnd_nodeid_mdsdest_rec_add(AVND_CB *cb, MDS_DEST mds_dest)
{
- AVND_NODEID_TO_MDSDEST_MAP *rec = nullptr;
NODE_ID node_id = 0;
uint32_t res = NCSCC_RC_SUCCESS;
node_id = m_NCS_NODE_ID_FROM_MDS_DEST(mds_dest);
- rec = (AVND_NODEID_TO_MDSDEST_MAP *)cb->nodeid_mdsdest_db.find(node_id);
+ AVND_NODEID_TO_MDSDEST_MAP *rec = (AVND_NODEID_TO_MDSDEST_MAP
*)cb->nodeid_mdsdest_db.find(node_id);
if (rec != nullptr) {
LOG_ER("nodeid_mdsdest rec already exists, Rec Add Failed:
MdsDest:%" PRId64 ", NodeId:%u",
mds_dest, node_id);
@@ -89,13 +88,10 @@ uint32_t avnd_nodeid_mdsdest_rec_add(AVN
******************************************************************************/
uint32_t avnd_nodeid_mdsdest_rec_del(AVND_CB *cb, MDS_DEST mds_dest)
{
- AVND_NODEID_TO_MDSDEST_MAP *rec = nullptr;
- NODE_ID node_id = 0;
uint32_t res = NCSCC_RC_SUCCESS;
+ NODE_ID node_id = m_NCS_NODE_ID_FROM_MDS_DEST(mds_dest);
+ AVND_NODEID_TO_MDSDEST_MAP *rec = (AVND_NODEID_TO_MDSDEST_MAP
*)cb->nodeid_mdsdest_db.find(node_id);
- node_id = m_NCS_NODE_ID_FROM_MDS_DEST(mds_dest);
-
- rec = (AVND_NODEID_TO_MDSDEST_MAP *)cb->nodeid_mdsdest_db.find(node_id);
if (rec == nullptr) {
LOG_ER("nodeid_mdsdest rec doesn't exist, Rec del failed:
MdsDest:%" PRId64 " NodeId:%u",
mds_dest, node_id);
@@ -123,9 +119,7 @@ uint32_t avnd_nodeid_mdsdest_rec_del(AVN
******************************************************************************/
MDS_DEST avnd_get_mds_dest_from_nodeid(AVND_CB *cb, NODE_ID node_id)
{
- AVND_NODEID_TO_MDSDEST_MAP *rec = nullptr;
-
- rec = (AVND_NODEID_TO_MDSDEST_MAP *)cb->nodeid_mdsdest_db.find(node_id);
+ AVND_NODEID_TO_MDSDEST_MAP *rec = (AVND_NODEID_TO_MDSDEST_MAP
*)cb->nodeid_mdsdest_db.find(node_id);
if (rec == nullptr) {
LOG_ER("nodeid_mdsdest rec doesn't exist, Rec get failed:
NodeId:%u",node_id);
return 0;
@@ -266,8 +260,7 @@ uint32_t avnd_internode_comp_del(AVND_CB
cb->internode_avail_comp_db.erase(comp->name);
/* free the memory */
- if (comp)
- avnd_comp_delete(comp);
+ avnd_comp_delete(comp);
return rc;
err:
diff --git a/src/amf/amfnd/sidb.cc b/src/amf/amfnd/sidb.cc
--- a/src/amf/amfnd/sidb.cc
+++ b/src/amf/amfnd/sidb.cc
@@ -848,13 +848,12 @@ uint32_t avnd_su_si_csi_del(AVND_CB *cb,
******************************************************************************/
uint32_t avnd_su_si_csi_rec_del(AVND_CB *cb, AVND_SU *su, AVND_SU_SI_REC
*si_rec, AVND_COMP_CSI_REC *csi_rec)
{
- uint32_t rc = NCSCC_RC_SUCCESS;
uint16_t i;
TRACE_ENTER2("'%s' : '%s' : '%s'", su->name.c_str(),
si_rec->name.c_str(), csi_rec->name.c_str());
/* remove from the comp-csi list */
- rc = m_AVND_COMPDB_REC_CSI_REM(*(csi_rec->comp), *csi_rec);
+ uint32_t rc = m_AVND_COMPDB_REC_CSI_REM(*(csi_rec->comp), *csi_rec);
if (NCSCC_RC_SUCCESS != rc)
goto err;
diff --git a/src/amf/amfnd/su.cc b/src/amf/amfnd/su.cc
--- a/src/amf/amfnd/su.cc
+++ b/src/amf/amfnd/su.cc
@@ -1002,14 +1002,13 @@ done:
uint32_t avnd_evt_avd_compcsi_evh(AVND_CB *cb, AVND_EVT *evt) {
AVND_COMP_CSI_PARAMS_INFO *compcsi_info =
&evt->info.avd->msg_info.d2n_compcsi_assign_msg_info;
AVND_COMP_CSI_REC *csi_rec = nullptr;
- AVND_COMP *comp = nullptr;
//AVND_SU_SIQ_REC *siq = 0;
uint32_t rc = NCSCC_RC_SUCCESS;
const std::string comp_name = Amf::to_string(&compcsi_info->comp_name);
const std::string csi_name = Amf::to_string(&compcsi_info->csi_name);
TRACE_ENTER2("'%s', '%s', act:%u", comp_name.c_str(), csi_name.c_str(),
compcsi_info->msg_act);
- comp = avnd_compdb_rec_get(cb->compdb, comp_name);
+ AVND_COMP *comp = avnd_compdb_rec_get(cb->compdb, comp_name);
if (!comp) {
LOG_ER("compcsi_evh: '%s' not found, action:%u",
comp_name.c_str(), compcsi_info->msg_act);
diff --git a/src/amf/amfnd/sudb.cc b/src/amf/amfnd/sudb.cc
--- a/src/amf/amfnd/sudb.cc
+++ b/src/amf/amfnd/sudb.cc
@@ -156,16 +156,15 @@ AVND_SU *avnd_sudb_rec_add(AVND_CB *cb,
******************************************************************************/
uint32_t avnd_sudb_rec_del(AVND_CB *cb, const std::string& name)
{
- AVND_SU *su = 0;
uint32_t rc = NCSCC_RC_SUCCESS;
AVND_COMP *comp;
TRACE_ENTER2("%s", name.c_str());
/* get the su record */
- su = avnd_sudb_rec_get(cb->sudb, name);
+ AVND_SU *su = avnd_sudb_rec_get(cb->sudb, name);
if (!su) {
- LOG_NO("%s: %s not found", __FUNCTION__, su->name.c_str());
+ LOG_NO("%s: name: %s not found", __FUNCTION__, name.c_str());
rc = AVND_ERR_NO_SU;
goto done;
}
diff --git a/src/amf/amfnd/susm.cc b/src/amf/amfnd/susm.cc
--- a/src/amf/amfnd/susm.cc
+++ b/src/amf/amfnd/susm.cc
@@ -541,7 +541,7 @@ static uint32_t assign_si_to_su(const AV
if (!m_AVND_SU_IS_PREINSTANTIABLE(su)) {
TRACE("SU is NPI");
- if ((single_csi == true) && (si->single_csi_add_rem_in_si ==
AVSV_SUSI_ACT_ASGN)) {
+ if ((single_csi == 1) && (si->single_csi_add_rem_in_si ==
AVSV_SUSI_ACT_ASGN)) {
// we are adding a CSI to an unlocked SU
// first find the newly added unassigned CSI
@@ -956,10 +956,10 @@ static bool all_sis_atrank_removed(const
*/
static void su_finish_suRestart_escalation_or_admin_op(AVND_SU *su)
{
- bool are_si_assigned;
TRACE_ENTER2("'%s'", su->name.c_str());
if ((su_all_comps_restartable(*su) == true) ||
((is_any_non_restartable_comp_assigned(*su) == false)
&& (!m_AVND_SU_IS_FAILED(su)))) {
+ bool are_si_assigned;
TRACE("All the components restartable or non restartable comps
are not assigned.");
m_AVND_SU_ARE_ALL_SI_ASSIGNED(su, are_si_assigned);
if (true == are_si_assigned) {
@@ -1553,7 +1553,6 @@ static uint32_t npi_su_instantiating_to_
static uint32_t pi_su_instantiating_to_instantiated(AVND_SU *su)
{
uint32_t rc = NCSCC_RC_SUCCESS;
- bool is_en;
TRACE_ENTER();
/* A SU can be restarted because all components faulted with component
@@ -1580,7 +1579,7 @@ static uint32_t pi_su_instantiating_to_i
}
su->admin_op_Id = static_cast<SaAmfAdminOperationIdT>(0);
} else {
-
+ bool is_en;
/* determine the su oper state. if enabled, inform avd. */
m_AVND_SU_IS_ENABLED(su, is_en);
if (true == is_en) {
@@ -2711,13 +2710,13 @@ uint32_t avnd_su_pres_inst_compterming_h
******************************************************************************/
uint32_t avnd_su_pres_terming_compinst_hdler(AVND_CB *cb, AVND_SU *su,
AVND_COMP *comp)
{
- bool is;
uint32_t rc = NCSCC_RC_SUCCESS;
const std::string compname = comp ? comp->name: "none";
TRACE_ENTER2("ComponentInstantiate event in the terminating state:'%s'
: '%s'",
su->name.c_str(), compname.c_str());
if (m_AVND_SU_IS_PREINSTANTIABLE(su)) {
+ bool is;
if (m_AVND_COMP_IS_FAILED(comp)) {
m_AVND_COMP_FAILED_RESET(comp);
}
@@ -3767,7 +3766,7 @@ uint32_t avnd_su_pres_terming_suinst_hdl
osafassert(si);
csi = (AVND_COMP_CSI_REC
*)m_NCS_DBLIST_FIND_FIRST(&si->csi_list);
- if (csi) {
+ if ((csi) && (csi->comp)) {
/* mark the csi state assigning */
m_AVND_COMP_CSI_CURR_ASSIGN_STATE_SET(csi,
AVND_COMP_CSI_ASSIGN_STATE_ASSIGNING);
@@ -3776,13 +3775,13 @@ uint32_t avnd_su_pres_terming_suinst_hdl
rc = avnd_comp_clc_fsm_run(cb, csi->comp,
AVND_COMP_CLC_PRES_FSM_EV_INST);
if (NCSCC_RC_SUCCESS != rc)
goto done;
+ if ((csi->comp->pres == SA_AMF_PRESENCE_INSTANTIATING)
&&
+ (su->pres ==
SA_AMF_PRESENCE_TERMINATING))
+ avnd_su_pres_state_set(cb, su,
SA_AMF_PRESENCE_INSTANTIATING);
}
- if ((csi->comp) && (csi->comp->pres ==
SA_AMF_PRESENCE_INSTANTIATING) &&
- (su->pres == SA_AMF_PRESENCE_TERMINATING))
- avnd_su_pres_state_set(cb, su,
SA_AMF_PRESENCE_INSTANTIATING);
}
- done:
+done:
if (rc == NCSCC_RC_FAILURE)
avnd_su_pres_state_set(cb, su,
SA_AMF_PRESENCE_INSTANTIATION_FAILED);
TRACE_LEAVE2("%u", rc);
diff --git a/src/amf/amfnd/util.cc b/src/amf/amfnd/util.cc
--- a/src/amf/amfnd/util.cc
+++ b/src/amf/amfnd/util.cc
@@ -188,11 +188,11 @@ void avnd_msgid_assert(uint32_t rcv_msg_
*/
void avnd_comp_cleanup_launch(AVND_COMP *comp)
{
- char str[128];
uint32_t rc;
rc = avnd_comp_clc_fsm_run(avnd_cb, comp,
AVND_COMP_CLC_PRES_FSM_EV_CLEANUP);
if (rc != NCSCC_RC_SUCCESS) {
+ char str[128];
LOG_ER("Failed to launch cleanup of '%s'", comp->name.c_str());
snprintf(str, sizeof(str), "Stopping OpenSAF failed due to
'%s'", comp->name.c_str());
opensaf_reboot(avnd_cb->node_info.nodeId,
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel