src/amf/amfd/app.cc            |    4 +-
 src/amf/amfd/apptype.cc        |   21 ++----
 src/amf/amfd/chkop.cc          |    3 +-
 src/amf/amfd/ckpt_dec.cc       |   15 ++---
 src/amf/amfd/ckpt_edu.cc       |    4 +-
 src/amf/amfd/ckpt_enc.cc       |   60 ++++++++------------
 src/amf/amfd/clm.cc            |   12 +--
 src/amf/amfd/cluster.cc        |   17 ++---
 src/amf/amfd/comp.cc           |   11 +--
 src/amf/amfd/compcstype.cc     |    8 +-
 src/amf/amfd/comptype.cc       |    3 +-
 src/amf/amfd/csi.cc            |   27 +++-----
 src/amf/amfd/csiattr.cc        |   10 +--
 src/amf/amfd/ctcstype.cc       |   11 +---
 src/amf/amfd/dmsg.cc           |    5 +-
 src/amf/amfd/hlttype.cc        |    4 +-
 src/amf/amfd/imm.cc            |   56 +++++++------------
 src/amf/amfd/main.cc           |   19 +----
 src/amf/amfd/mds.cc            |    5 +-
 src/amf/amfd/ndfsm.cc          |   36 +++++-------
 src/amf/amfd/ndproc.cc         |   16 ++---
 src/amf/amfd/node.cc           |   25 +++-----
 src/amf/amfd/nodegroup.cc      |   16 ++--
 src/amf/amfd/ntf.cc            |    4 +-
 src/amf/amfd/role.cc           |   43 ++++++---------
 src/amf/amfd/sg.cc             |   23 +------
 src/amf/amfd/sg_2n_fsm.cc      |   10 +-
 src/amf/amfd/sg_nored_fsm.cc   |    4 +-
 src/amf/amfd/sg_npm_fsm.cc     |   33 ++++-------
 src/amf/amfd/sg_nway_fsm.cc    |   40 +++++--------
 src/amf/amfd/sg_nwayact_fsm.cc |    6 +-
 src/amf/amfd/sgproc.cc         |   19 ++----
 src/amf/amfd/sgtype.cc         |  115 ++++++++++++++++++++--------------------
 src/amf/amfd/si.cc             |   24 ++-----
 src/amf/amfd/si_dep.cc         |   80 ++++++++++------------------
 src/amf/amfd/siass.cc          |   19 ++---
 src/amf/amfd/sirankedsu.cc     |   18 ++---
 src/amf/amfd/su.cc             |   11 +--
 src/amf/amfd/sutype.cc         |   43 +++++++--------
 src/amf/amfd/util.cc           |   69 +++++++++---------------
 40 files changed, 379 insertions(+), 570 deletions(-)


V3 fixed review commets.

[src/amf/amfd/app.cc:285]: (style) The scope of the variable 'i' can be reduced.
[src/amf/amfd/apptype.cc:137]: (style) Condition 'rc!=0' is always false
[src/amf/amfd/apptype.cc:89] -> [src/amf/amfd/apptype.cc:84]: (warning, 
inconclusive) Either the condition '(attr=attributes[i++])!=nullptr' is 
redundant or there is possible null pointer dereference: attr.
[src/amf/amfd/apptype.cc:129] -> [src/amf/amfd/apptype.cc:124]: (warning, 
inconclusive) Either the condition '(attr=attributes[i++])!=nullptr' is 
redundant or there is possible null pointer dereference: attr.
[src/amf/amfd/apptype.cc:69]: (style) The scope of the variable 'sg_type' can 
be reduced.
[src/amf/amfd/chkop.cc:1297] -> [src/amf/amfd/chkop.cc:1302]: (style) Variable 
'uba' is reassigned a value before the old one has been used.
[src/amf/amfd/ckpt_dec.cc:374] -> [src/amf/amfd/ckpt_dec.cc:382]: (style) 
Variable 'status' is reassigned a value before the old one has been used.
[src/amf/amfd/ckpt_dec.cc:573] -> [src/amf/amfd/ckpt_dec.cc:577]: (style) 
Variable 'status' is reassigned a value before the old one has been used.
[src/amf/amfd/ckpt_dec.cc:1109]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_edu.cc:51] -> [src/amf/amfd/ckpt_edu.cc:56]: (style) 
Variable 'rc' is reassigned a value before the old one has been used.
[src/amf/amfd/ckpt_enc.cc:2281] -> [src/amf/amfd/ckpt_enc.cc:2288]: (style) 
Variable 'status' is reassigned a value before the old one has been used.
[src/amf/amfd/ckpt_enc.cc:2314] -> [src/amf/amfd/ckpt_enc.cc:2322]: (style) 
Variable 'status' is reassigned a value before the old one has been used.
[src/amf/amfd/ckpt_enc.cc:1951]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_enc.cc:1982]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_enc.cc:2015]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_enc.cc:2044]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_enc.cc:2076]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_enc.cc:2111]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_enc.cc:2151]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_enc.cc:2176]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_enc.cc:2216]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_enc.cc:2252]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ckpt_enc.cc:2470]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/clm.cc:452] -> [src/amf/amfd/clm.cc:456]: (style, inconclusive) 
Variable 'error' is reassigned a value before the old one has been used if 
variable is no semaphore variable.
[src/amf/amfd/clm.cc:473] -> [src/amf/amfd/clm.cc:475]: (style, inconclusive) 
Variable 'error' is reassigned a value before the old one has been used if 
variable is no semaphore variable.
[src/amf/amfd/clm.cc:344]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/cluster.cc:82]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/cluster.cc:95]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/cluster.cc:116]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/comp.cc:1270] -> [src/amf/amfd/comp.cc:1285]: (style) Variable 
'su_node_ptr' is reassigned a value before the old one has been used.
[src/amf/amfd/comp.cc:49]: (style) The scope of the variable 'rc' can be 
reduced.
[src/amf/amfd/comp.cc:947]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/compcstype.cc:92] -> [src/amf/amfd/compcstype.cc:99]: (style) 
Variable 'cst' is reassigned a value before the old one has been used.
[src/amf/amfd/compcstype.cc:46]: (style) The scope of the variable 'rc' can be 
reduced.
[src/amf/amfd/comptype.cc:417]: (style) The scope of the variable 'i' can be 
reduced.
[src/amf/amfd/csi.cc:626]: (warning) Comparison of a boolean expression with an 
integer.
[src/amf/amfd/csi.cc:1418] -> [src/amf/amfd/csi.cc:1410]: (warning) Either the 
condition 'ptr!=nullptr' is redundant or there is possible null pointer 
dereference: ptr.
[src/amf/amfd/csi.cc:921] -> [src/amf/amfd/csi.cc:925]: (style) Variable 'csi' 
is reassigned a value before the old one has been used.
[src/amf/amfd/csi.cc:1370] -> [src/amf/amfd/csi.cc:1375]: (style) Variable 
'i_attr' is reassigned a value before the old one has been used.
[src/amf/amfd/csi.cc:1491]: (style) The scope of the variable 'susi' can be 
reduced.
[src/amf/amfd/csi.cc:1492]: (style) The scope of the variable 'si' can be 
reduced.
[src/amf/amfd/csiattr.cc:541]: (style) The scope of the variable 'attribute' 
can be reduced.
[src/amf/amfd/ctcstype.cc:120]: (style) Condition 'rc!=0' is always false
[src/amf/amfd/ctcstype.cc:231] -> [src/amf/amfd/ctcstype.cc:234]: (style) 
Variable 'ctcs_type' is reassigned a value before the old one has been used.
[src/amf/amfd/dmsg.cc:236]: (warning) Assignment of function parameter has no 
effect outside the function. Did you forget dereferencing it?
[src/amf/amfd/dmsg.cc:61] -> [src/amf/amfd/dmsg.cc:66]: (style) Variable 'uba' 
is reassigned a value before the old one has been used.
[src/amf/amfd/hlttype.cc:64]: (style) The scope of the variable 'i' can be 
reduced.
[src/amf/amfd/imm.cc:1122] -> [src/amf/amfd/imm.cc:1128]: (style) Variable 
'temp' is reassigned a value before the old one has been used.
[src/amf/amfd/imm.cc:1343] -> [src/amf/amfd/imm.cc:1354]: (style, inconclusive) 
Variable 'rc' is reassigned a value before the old one has been used if 
variable is no semaphore variable.
[src/amf/amfd/imm.cc:1771] -> [src/amf/amfd/imm.cc:1772]: (style, inconclusive) 
Variable 'class_type' is reassigned a value before the old one has been used if 
variable is no semaphore variable.
[src/amf/amfd/imm.cc:2299] -> [src/amf/amfd/imm.cc:2300]: (style) Variable 'su' 
is reassigned a value before the old one has been used.
[src/amf/amfd/imm.cc:2354] -> [src/amf/amfd/imm.cc:2359]: (style) Variable 
'csi' is reassigned a value before the old one has been used.
[src/amf/amfd/imm.cc:2355] -> [src/amf/amfd/imm.cc:2360]: (style) Variable 
'comp' is reassigned a value before the old one has been used.
[src/amf/amfd/imm.cc:2387] -> [src/amf/amfd/imm.cc:2388]: (style) Variable 
'comp' is reassigned a value before the old one has been used.
[src/amf/amfd/imm.cc:2478] -> [src/amf/amfd/imm.cc:2487]: (style) Variable 
'csi' is reassigned a value before the old one has been used.
[src/amf/amfd/imm.cc:2479] -> [src/amf/amfd/imm.cc:2488]: (style) Variable 
'comp' is reassigned a value before the old one has been used.
[src/amf/amfd/imm.cc:1644]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/imm.cc:1891]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/imm.cc:1916]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/imm.cc:1934]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/imm.cc:1942]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/main.cc:257]: (style) The scope of the variable 'n2d_msg' can be 
reduced.
[src/amf/amfd/main.cc:290]: (style) The scope of the variable 'n2d_msg' can be 
reduced.
[src/amf/amfd/main.cc:323]: (style) The scope of the variable 'n2d_msg' can be 
reduced.
[src/amf/amfd/main.cc:405]: (style) The scope of the variable 'queue_evt' can 
be reduced.
[src/amf/amfd/main.cc:429]: (style) The scope of the variable 'fover_done' can 
be reduced.
[src/amf/amfd/mds.cc:505] -> [src/amf/amfd/mds.cc:510]: (style) Variable 'evt' 
is reassigned a value before the old one has been used.
[src/amf/amfd/ndfsm.cc:116]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/ndfsm.cc:125]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/ndfsm.cc:177]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/ndfsm.cc:225]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/ndfsm.cc:741]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/ndfsm.cc:777]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/ndfsm.cc:865]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/ndproc.cc:1101] -> [src/amf/amfd/ndproc.cc:1103]: (style) 
Variable 'valid_info' is reassigned a value before the old one has been used.
[src/amf/amfd/ndproc.cc:317]: (style) The scope of the variable 
'state_info_evt' can be reduced.
[src/amf/amfd/ndproc.cc:361]: (style) The scope of the variable 
'state_info_evt' can be reduced.
[src/amf/amfd/ndproc.cc:735]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/node.cc:49]: (style) The scope of the variable 'rc' can be 
reduced.
[src/amf/amfd/node.cc:68]: (style) The scope of the variable 'rc' can be 
reduced.
[src/amf/amfd/node.cc:200]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/node.cc:582]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/node.cc:1555]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/node.cc:1571]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/nodegroup.cc:77] -> [src/amf/amfd/nodegroup.cc:72]: (warning, 
inconclusive) Either the condition '(attr=attributes[i++])!=nullptr' is 
redundant or there is possible null pointer dereference: attr.
[src/amf/amfd/nodegroup.cc:224]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/nodegroup.cc:1407]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/ntf.cc:900] -> [src/amf/amfd/ntf.cc:904]: (style, inconclusive) 
Variable 'rc' is reassigned a value before the old one has been used if 
variable is no semaphore variable.
[src/amf/amfd/role.cc:865] -> [src/amf/amfd/role.cc:874]: (style) Variable 
'avnd' is reassigned a value before the old one has been used.
[src/amf/amfd/role.cc:913] -> [src/amf/amfd/role.cc:924]: (style) Variable 'rc' 
is reassigned a value before the old one has been used.
[src/amf/amfd/role.cc:699]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/role.cc:713]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/role.cc:720]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/role.cc:726]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/role.cc:733]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/role.cc:1134]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/role.cc:1285]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/sg.cc:640]: (warning) Comparison of a boolean expression with an 
integer.
[src/amf/amfd/sg.cc:640]: (warning) Comparison of a boolean value using 
relational operator (<, >, <= or >=).
[src/amf/amfd/sg.cc:929]: (style) Expression is always false because 'else if' 
condition matches previous condition at line 922.
[src/amf/amfd/sg.cc:394]: (style) Condition 'rc!=0' is always false
[src/amf/amfd/sg.cc:42]: (style) The scope of the variable 'rc' can be reduced.
[src/amf/amfd/sg.cc:1145]: (style) The scope of the variable 'su' can be 
reduced.
[src/amf/amfd/sg.cc:2203]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/sg_2n_fsm.cc:3968] -> [src/amf/amfd/sg_2n_fsm.cc:3969]: (style) 
Variable 'a_susi' is reassigned a value before the old one has been used.
[src/amf/amfd/sg_2n_fsm.cc:2789]: (style) The scope of the variable 'a_susi' 
can be reduced.
[src/amf/amfd/sg_2n_fsm.cc:2790]: (style) The scope of the variable 'o_su' can 
be reduced.
[src/amf/amfd/sg_nored_fsm.cc:111]: (style) The scope of the variable 'flag' 
can be reduced.
[src/amf/amfd/sg_npm_fsm.cc:2225] -> [src/amf/amfd/sg_npm_fsm.cc:2233]: (style) 
Variable 'susi' is reassigned a value before the old one has been used.
[src/amf/amfd/sg_npm_fsm.cc:1071]: (style) The scope of the variable 'l_flag' 
can be reduced.
[src/amf/amfd/sg_npm_fsm.cc:1263]: (style) The scope of the variable 'l_flag' 
can be reduced.
[src/amf/amfd/sg_npm_fsm.cc:1391]: (style) The scope of the variable 'a_susi' 
can be reduced.
[src/amf/amfd/sg_npm_fsm.cc:1557]: (style) The scope of the variable 'flag' can 
be reduced.
[src/amf/amfd/sg_npm_fsm.cc:1557]: (style) The scope of the variable 
'fover_progress' can be reduced.
[src/amf/amfd/sg_npm_fsm.cc:2460]: (style) The scope of the variable 
'susi_assgn_failed' can be reduced.
[src/amf/amfd/sg_npm_fsm.cc:2831]: (style) The scope of the variable 'o_susi' 
can be reduced.
[src/amf/amfd/sg_npm_fsm.cc:3786]: (style) The scope of the variable 'ot_susi' 
can be reduced.
[src/amf/amfd/sg_npm_fsm.cc:4064]: (style) The scope of the variable 'o_su' can 
be reduced.
[src/amf/amfd/sg_npm_fsm.cc:4065]: (style) The scope of the variable 'o_susi' 
can be reduced.
[src/amf/amfd/sg_npm_fsm.cc:4189]: (style) The scope of the variable 'rc' can 
be reduced.
[src/amf/amfd/sg_nway_fsm.cc:1139]: (warning) Assignment of function parameter 
has no effect outside the function. Did you forget dereferencing it?
[src/amf/amfd/sg_nway_fsm.cc:147] -> [src/amf/amfd/sg_nway_fsm.cc:146]: 
(warning) Either the condition '!curr_susi' is redundant or there is possible 
null pointer dereference: curr_susi.
[src/amf/amfd/sg_nway_fsm.cc:148] -> [src/amf/amfd/sg_nway_fsm.cc:146]: 
(warning) Either the condition '!curr_susi' is redundant or there is possible 
null pointer dereference: curr_susi.
[src/amf/amfd/sg_nway_fsm.cc:640] -> [src/amf/amfd/sg_nway_fsm.cc:639]: 
(warning) Either the condition '!curr_susi' is redundant or there is possible 
null pointer dereference: curr_susi.
[src/amf/amfd/sg_nway_fsm.cc:641] -> [src/amf/amfd/sg_nway_fsm.cc:639]: 
(warning) Either the condition '!curr_susi' is redundant or there is possible 
null pointer dereference: curr_susi.
[src/amf/amfd/sg_nway_fsm.cc:666] -> [src/amf/amfd/sg_nway_fsm.cc:665]: 
(warning) Either the condition '!curr_susi' is redundant or there is possible 
null pointer dereference: curr_susi.
[src/amf/amfd/sg_nway_fsm.cc:667] -> [src/amf/amfd/sg_nway_fsm.cc:665]: 
(warning) Either the condition '!curr_susi' is redundant or there is possible 
null pointer dereference: curr_susi.
[src/amf/amfd/sg_nway_fsm.cc:350] -> [src/amf/amfd/sg_nway_fsm.cc:355]: (style) 
Variable 't_susi' is reassigned a value before the old one has been used.
[src/amf/amfd/sg_nway_fsm.cc:791] -> [src/amf/amfd/sg_nway_fsm.cc:803]: (style) 
Variable 'susi' is reassigned a value before the old one has been used.
[src/amf/amfd/sg_nway_fsm.cc:1255] -> [src/amf/amfd/sg_nway_fsm.cc:1257]: 
(style) Variable 'preferred_su' is reassigned a value before the old one has 
been used.
[src/amf/amfd/sg_nway_fsm.cc:2785] -> [src/amf/amfd/sg_nway_fsm.cc:2786]: 
(style) Variable 't_susi' is reassigned a value before the old one has been 
used.
[src/amf/amfd/sg_nway_fsm.cc:2864] -> [src/amf/amfd/sg_nway_fsm.cc:2872]: 
(style) Variable 't_susi' is reassigned a value before the old one has been 
used.
[src/amf/amfd/sg_nway_fsm.cc:3479]: (style) The scope of the variable 
'is_su_present' can be reduced.
[src/amf/amfd/sg_nway_fsm.cc:1285]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/sg_nway_fsm.cc:1410]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/sg_nwayact_fsm.cc:92]: (performance) Prefer prefix ++/-- 
operators for non-primitive types.
[src/amf/amfd/sgproc.cc:663] -> [src/amf/amfd/sgproc.cc:664]: (style) Variable 
'node' is reassigned a value before the old one has been used.
[src/amf/amfd/sgproc.cc:672] -> [src/amf/amfd/sgproc.cc:673]: (style) Variable 
'node' is reassigned a value before the old one has been used.
[src/amf/amfd/sgproc.cc:1795] -> [src/amf/amfd/sgproc.cc:1796]: (style, 
inconclusive) Variable 'su_rank' is reassigned a value before the old one has 
been used if variable is no semaphore variable.
[src/amf/amfd/sgproc.cc:1887]: (style) Variable 'num_su' is modified but its 
new value is never used.
[src/amf/amfd/sgproc.cc:650]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/sgproc.cc:1501]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/sgtype.cc:114] -> [src/amf/amfd/sgtype.cc:109]: (warning, 
inconclusive) Either the condition '(attr=attributes[i++])!=nullptr' is 
redundant or there is possible null pointer dereference: attr.
[src/amf/amfd/sgtype.cc:187] -> [src/amf/amfd/sgtype.cc:182]: (warning, 
inconclusive) Either the condition '(attr=attributes[i++])!=nullptr' is 
redundant or there is possible null pointer dereference: attr.
[src/amf/amfd/sgtype.cc:189] -> [src/amf/amfd/sgtype.cc:182]: (warning, 
inconclusive) Either the condition '(attr=attributes[i++])!=nullptr' is 
redundant or there is possible null pointer dereference: attr.
[src/amf/amfd/sgtype.cc:252] -> [src/amf/amfd/sgtype.cc:266]: (style, 
inconclusive) Variable 'error' is reassigned a value before the old one has 
been used if variable is no semaphore variable.
[src/amf/amfd/sgtype.cc:86]: (style) The scope of the variable 'sut' can be 
reduced.
[src/amf/amfd/si.cc:165] -> [src/amf/amfd/si.cc:172]: (style) Variable 'i_csi' 
is reassigned a value before the old one has been used.
[src/amf/amfd/si.cc:250] -> [src/amf/amfd/si.cc:255]: (style) Variable 
'prev_csi' is reassigned a value before the old one has been used.
[src/amf/amfd/si.cc:249] -> [src/amf/amfd/si.cc:256]: (style) Variable 'i_csi' 
is reassigned a value before the old one has been used.
[src/amf/amfd/si.cc:1110] -> [src/amf/amfd/si.cc:1111]: (style) Variable 
'no_of_sisus_to_delete' is reassigned a value before the old one has been used.
[src/amf/amfd/si.cc:325]: (style) The scope of the variable 'temp' can be 
reduced.
[src/amf/amfd/si.cc:385]: (style) The scope of the variable 'rc' can be reduced.
[src/amf/amfd/si.cc:1490]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/si_dep.cc:301] -> [src/amf/amfd/si_dep.cc:308]: (style) Variable 
'dep_si' is reassigned a value before the old one has been used.
[src/amf/amfd/si_dep.cc:302] -> [src/amf/amfd/si_dep.cc:314]: (style) Variable 
'spons_si_node' is reassigned a value before the old one has been used.
[src/amf/amfd/si_dep.cc:442] -> [src/amf/amfd/si_dep.cc:447]: (style) Variable 
'susi' is reassigned a value before the old one has been used.
[src/amf/amfd/si_dep.cc:532] -> [src/amf/amfd/si_dep.cc:537]: (style) Variable 
'evt' is reassigned a value before the old one has been used.
[src/amf/amfd/si_dep.cc:598] -> [src/amf/amfd/si_dep.cc:605]: (style) Variable 
'si' is reassigned a value before the old one has been used.
[src/amf/amfd/si_dep.cc:599] -> [src/amf/amfd/si_dep.cc:606]: (style) Variable 
'spons_si' is reassigned a value before the old one has been used.
[src/amf/amfd/si_dep.cc:856] -> [src/amf/amfd/si_dep.cc:860]: (style) Variable 
'si' is reassigned a value before the old one has been used.
[src/amf/amfd/si_dep.cc:915] -> [src/amf/amfd/si_dep.cc:919]: (style) Variable 
'spons_si' is reassigned a value before the old one has been used.
[src/amf/amfd/si_dep.cc:1617] -> [src/amf/amfd/si_dep.cc:1621]: (style) 
Variable 'assignmemt_status' is reassigned a value before the old one has been 
used.
[src/amf/amfd/si_dep.cc:978]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/si_dep.cc:1023]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/si_dep.cc:1075]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/si_dep.cc:1470]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/si_dep.cc:1799]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/si_dep.cc:2058]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/si_dep.cc:2130]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/si_dep.cc:2194]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/si_dep.cc:2270]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/si_dep.cc:2524]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/siass.cc:1077] -> [src/amf/amfd/siass.cc:1082]: (style) Variable 
'node' is reassigned a value before the old one has been used.
[src/amf/amfd/siass.cc:452]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/siass.cc:473]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/siass.cc:1042]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/sirankedsu.cc:45] -> [src/amf/amfd/sirankedsu.cc:51]: (style) 
Variable 'avd_si' is reassigned a value before the old one has been used.
[src/amf/amfd/sirankedsu.cc:107] -> [src/amf/amfd/sirankedsu.cc:113]: (style) 
Variable 'ranked_su_per_si' is reassigned a value before the old one has been 
used.
[src/amf/amfd/sirankedsu.cc:163] -> [src/amf/amfd/sirankedsu.cc:176]: (style) 
Variable 'avd_sus_per_si_rank' is reassigned a value before the old one has 
been used.
[src/amf/amfd/sirankedsu.cc:235] -> [src/amf/amfd/sirankedsu.cc:245]: (style) 
Variable 'avd_si' is reassigned a value before the old one has been used.
[src/amf/amfd/sirankedsu.cc:354]: (performance) Prefer prefix ++/-- operators 
for non-primitive types.
[src/amf/amfd/su.cc:1347] -> [src/amf/amfd/su.cc:1348]: (style, inconclusive) 
Variable 'rc' is reassigned a value before the old one has been used if 
variable is no semaphore variable.
[src/amf/amfd/su.cc:518]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/su.cc:1948]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/sutype.cc:103]: (style) Condition 'rc!=0' is always false
[src/amf/amfd/sutype.cc:86] -> [src/amf/amfd/sutype.cc:81]: (warning, 
inconclusive) Either the condition '(attr=attributes[i++])!=nullptr' is 
redundant or there is possible null pointer dereference: attr.
[src/amf/amfd/sutype.cc:88] -> [src/amf/amfd/sutype.cc:81]: (warning, 
inconclusive) Either the condition '(attr=attributes[i++])!=nullptr' is 
redundant or there is possible null pointer dereference: attr.
[src/amf/amfd/util.cc:2022]: (warning) Possible null pointer dereference: avnd
[src/amf/amfd/util.cc:1272] -> [src/amf/amfd/util.cc:1278]: (style) Variable 
'd2n_msg' is reassigned a value before the old one has been used.
[src/amf/amfd/util.cc:1566] -> [src/amf/amfd/util.cc:1581]: (style) Variable 
'rc' is reassigned a value before the old one has been used.
[src/amf/amfd/util.cc:2078]: (style) Consecutive return, break, continue, goto 
or throw statements are unnecessary.
[src/amf/amfd/util.cc:1032]: (style) The scope of the variable 'i' can be 
reduced.
[src/amf/amfd/util.cc:533]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/util.cc:541]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/util.cc:1392]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/util.cc:1408]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/util.cc:1419]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/util.cc:1446]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/util.cc:1465]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/util.cc:1482]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/util.cc:1510]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/util.cc:1526]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/util.cc:1542]: (performance) Prefer prefix ++/-- operators for 
non-primitive types.
[src/amf/amfd/tests/test_amfdb.cc:29]: (style) The function 'SetUp' is never 
used.
[src/amf/amfd/tests/test_amfdb.cc:33]: (style) The function 'TearDown' is never 
used.
[src/amf/amfd/mds.cc:534]: (style) The function 'avd_avnd_mds_send' is never 
used.
[src/amf/amfd/ndmsg.cc:177]: (style) The function 'avd_mds_dec_flat' is never 
used.
[src/amf/amfd/ndmsg.cc:90]: (style) The function 'avd_mds_enc_flat' is never 
used.
[src/amf/amfd/ndfsm.cc:1000]: (style) The function 'avd_node_down' is never 
used.
[src/amf/amfd/ntf.cc:130]: (style) The function 'avd_send_cluster_reset_alarm' 
is never used.
[src/amf/amfd/ntf.cc:367]: (style) The function 
'avd_send_su_ha_readiness_state_chg_ntf' is never used.
[src/amf/amfd/util.cc:296]: (style) The function 'avd_snd_oper_state_msg' is 
never used.
[src/amf/amfd/chkop.cc:132]: (style) The function 'avsv_mbcsv_deregister' is 
never used.
[src/amf/amfd/chkop.cc:1147]: (style) The function 'avsv_mbcsv_obj_set' is 
never used.
[src/amf/amfd/chkop.cc:865]: (style) The function 'avsv_send_ckpt_data' is 
never used.
[src/amf/amfd/node.cc:35]: (style) The function 'operator<' is never used.

diff --git a/src/amf/amfd/app.cc b/src/amf/amfd/app.cc
--- a/src/amf/amfd/app.cc
+++ b/src/amf/amfd/app.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -282,7 +283,6 @@ done:
 static void app_ccb_apply_cb(CcbUtilOperationData_t *opdata)
 {
        AVD_APP *app;
-       int i = 0;
 
        TRACE_ENTER2("CCB ID %llu, '%s'", opdata->ccbId, 
osaf_extended_name_borrow(&opdata->objectName));
 
@@ -295,7 +295,7 @@ static void app_ccb_apply_cb(CcbUtilOper
        case CCBUTIL_MODIFY: {
                const SaImmAttrModificationT_2 *attr_mod;
                app = app_db->find(Amf::to_string(&opdata->objectName));
-
+               int i = 0;
                while ((attr_mod = opdata->param.modify.attrMods[i++]) != 
nullptr) {
                        const SaImmAttrValuesT_2 *attribute = 
&attr_mod->modAttr;
 
diff --git a/src/amf/amfd/apptype.cc b/src/amf/amfd/apptype.cc
--- a/src/amf/amfd/apptype.cc
+++ b/src/amf/amfd/apptype.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -66,7 +67,6 @@ static int is_config_valid(const std::st
        int i = 0;
        unsigned j;
        std::string::size_type parent;
-       AVD_AMF_SG_TYPE *sg_type;
        const SaImmAttrValuesT_2 *attr;
 
        parent = dn.find(',');
@@ -82,15 +82,15 @@ static int is_config_valid(const std::st
        }
 
        while ((attr = attributes[i++]) != nullptr)
-               if (!strcmp(attr->attrName, "saAmfApptSGTypes"))
+               if (!strcmp(attr->attrName, "saAmfApptSGTypes")) {
+                       osafassert(attr->attrValuesNumber > 0);
                        break;
-
+               }
        osafassert(attr);
-       osafassert(attr->attrValuesNumber > 0);
 
        for (j = 0; j < attr->attrValuesNumber; j++) {
                SaNameT *name = (SaNameT *)attr->attrValues[j];
-               sg_type = sgtype_db->find(Amf::to_string(name));
+               AVD_AMF_SG_TYPE *sg_type = 
sgtype_db->find(Amf::to_string(name));
                if (sg_type == nullptr) {
                        if (opdata == nullptr) {
                                report_ccb_validation_error(opdata, "'%s' does 
not exist in model", osaf_extended_name_borrow(name));
@@ -113,7 +113,6 @@ static AVD_APP_TYPE *apptype_create(cons
 {
        int i = 0;
        unsigned int j;
-       int rc = -1;
        AVD_APP_TYPE *app_type;
        const SaImmAttrValuesT_2 *attr;
 
@@ -122,21 +121,17 @@ static AVD_APP_TYPE *apptype_create(cons
        app_type = new AVD_APP_TYPE(dn);
 
        while ((attr = attributes[i++]) != nullptr)
-               if (!strcmp(attr->attrName, "saAmfApptSGTypes"))
+               if (!strcmp(attr->attrName, "saAmfApptSGTypes")) {
+                       osafassert(attr->attrValuesNumber > 0);
                        break;
+               }
 
        osafassert(attr);
-       osafassert(attr->attrValuesNumber > 0);
 
        for (j = 0; j < attr->attrValuesNumber; j++) {
                
app_type->sgAmfApptSGTypes.push_back(Amf::to_string(static_cast<SaNameT*>(attr->attrValues[j])));
        }
 
-       rc = 0;
-
-       if (rc != 0)
-               apptype_delete(&app_type);
-
        TRACE_LEAVE();
 
        return app_type;
diff --git a/src/amf/amfd/chkop.cc b/src/amf/amfd/chkop.cc
--- a/src/amf/amfd/chkop.cc
+++ b/src/amf/amfd/chkop.cc
@@ -1294,12 +1294,11 @@ free_msg:
 uint32_t avsv_send_data_req(AVD_CL_CB *cb)
 {
        NCS_MBCSV_ARG mbcsv_arg = {};
-       NCS_UBAID *uba = nullptr;
 
        mbcsv_arg.i_op = NCS_MBCSV_OP_SEND_DATA_REQ;
        mbcsv_arg.i_mbcsv_hdl = cb->mbcsv_hdl;
 
-       uba = &mbcsv_arg.info.send_data_req.i_uba;
+       NCS_UBAID *uba = &mbcsv_arg.info.send_data_req.i_uba;
 
        memset(uba, '\0', sizeof(NCS_UBAID));
 
diff --git a/src/amf/amfd/ckpt_dec.cc b/src/amf/amfd/ckpt_dec.cc
--- a/src/amf/amfd/ckpt_dec.cc
+++ b/src/amf/amfd/ckpt_dec.cc
@@ -371,7 +371,6 @@ void decode_app(NCS_UBAID *ub, AVD_APP *
 \**************************************************************************/
 static uint32_t dec_app_config(AVD_CL_CB *cb, NCS_MBCSV_CB_DEC *dec)
 {
-       uint32_t status = NCSCC_RC_SUCCESS;
        AVD_APP app;
        
        TRACE_ENTER();
@@ -379,7 +378,7 @@ static uint32_t dec_app_config(AVD_CL_CB
        osafassert(dec->i_action == NCS_MBCSV_ACT_UPDATE);
        decode_app(&dec->i_uba, &app);
        
-       status = avd_ckpt_app(cb, &app, dec->i_action);
+       uint32_t status = avd_ckpt_app(cb, &app, dec->i_action);
 
        if (NCSCC_RC_SUCCESS == status)
                cb->async_updt_cnt.app_updt++;
@@ -570,11 +569,9 @@ static uint32_t dec_si_config(AVD_CL_CB 
 \**************************************************************************/
 static uint32_t dec_sg_admin_si(AVD_CL_CB *cb, NCS_MBCSV_CB_DEC *dec)
 {
-       uint32_t status = NCSCC_RC_SUCCESS;
-
        TRACE_ENTER2("i_action '%u'", dec->i_action);
 
-       status = avd_ckpt_sg_admin_si(cb, &dec->i_uba, dec->i_action);
+       uint32_t status = avd_ckpt_sg_admin_si(cb, &dec->i_uba, dec->i_action);
 
        /* If update is successful, update async update count */
        if (NCSCC_RC_SUCCESS == status)
@@ -1104,10 +1101,10 @@ static uint32_t dec_sg_admin_state(AVD_C
        if ((sg->sg_ncs_spec == false) && (sg->sg_redundancy_model == 
SA_AMF_2N_REDUNDANCY_MODEL)) {
                if (((sg->saAmfSGAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) ||
                         (sg->saAmfSGAdminState == SA_AMF_ADMIN_LOCKED)) &&
-                        (sg->ng_using_saAmfSGAdminState == false)) { 
-                       for (std::map<std::string, AVD_AMF_NG*>::const_iterator 
it = nodegroup_db->begin();
-                                       it != nodegroup_db->end(); it++) {
-                               AVD_AMF_NG *ng = it->second;
+                        (sg->ng_using_saAmfSGAdminState == false)) {
+
+                       for (const auto& value : *nodegroup_db) {
+                               AVD_AMF_NG *ng = value.second;
                                if ((sg->is_sg_assigned_only_in_ng(ng) == true) 
&&
                                                ((ng->saAmfNGAdminState == 
SA_AMF_ADMIN_SHUTTING_DOWN) ||
                                                 (ng->saAmfNGAdminState == 
SA_AMF_ADMIN_LOCKED)) &&
diff --git a/src/amf/amfd/ckpt_edu.cc b/src/amf/amfd/ckpt_edu.cc
--- a/src/amf/amfd/ckpt_edu.cc
+++ b/src/amf/amfd/ckpt_edu.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -48,12 +49,11 @@
 *****************************************************************************/
 uint32_t avd_compile_ckpt_edp(AVD_CL_CB *cb)
 {
-       uint32_t rc = NCSCC_RC_SUCCESS;
        EDU_ERR err = EDU_NORMAL;
 
        m_NCS_EDU_HDL_INIT(&cb->edu_hdl);
 
-       rc = m_NCS_EDU_COMPILE_EDP(&cb->edu_hdl, 
avsv_edp_ckpt_msg_async_updt_cnt, &err);
+       uint32_t rc = m_NCS_EDU_COMPILE_EDP(&cb->edu_hdl, 
avsv_edp_ckpt_msg_async_updt_cnt, &err);
        if (rc != NCSCC_RC_SUCCESS)
                goto error;
 
diff --git a/src/amf/amfd/ckpt_enc.cc b/src/amf/amfd/ckpt_enc.cc
--- a/src/amf/amfd/ckpt_enc.cc
+++ b/src/amf/amfd/ckpt_enc.cc
@@ -1947,9 +1947,8 @@ static uint32_t enc_cs_node_config(AVD_C
        /* 
         * Walk through the entire list and send the entire list data.
         */
-       for (std::map<std::string, AVD_AVND *>::const_iterator it = 
node_name_db->begin();
-                       it != node_name_db->end(); it++) {
-               AVD_AVND *avnd_node = it->second;
+       for (const auto& value : *node_name_db) {
+               AVD_AVND *avnd_node = value.second;
                encode_node_config(&enc->io_uba, avnd_node, 
enc->i_peer_version);
                (*num_of_obj)++;
        }
@@ -1979,8 +1978,8 @@ static uint32_t enc_cs_app_config(AVD_CL
        /* Walk through all application instances and encode. */
        // If use std=c++11 in Makefile.common the following syntax can be used 
instead:
        // for (auto it = app_db->begin()
-       for (std::map<std::string, AVD_APP*>::const_iterator it = 
app_db->begin(); it != app_db->end(); it++) {
-               AVD_APP *app = it->second;
+       for (const auto& value : *app_db) {
+               AVD_APP *app = value.second;
                encode_app(&enc->io_uba, app);
                (*num_of_obj)++;
        }
@@ -2011,9 +2010,8 @@ static uint32_t enc_cs_sg_config(AVD_CL_
        /* 
         * Walk through the entire list and send the entire list data.
         */
-       for (std::map<std::string, AVD_SG*>::const_iterator it = sg_db->begin();
-                       it != sg_db->end(); it++) {
-               AVD_SG *sg = it->second;
+       for (const auto& value : *sg_db) {
+               AVD_SG *sg = value.second;
                encode_sg(&enc->io_uba, sg);
                (*num_of_obj)++;
        }
@@ -2040,9 +2038,8 @@ static uint32_t enc_cs_su_config(AVD_CL_
 {
        TRACE_ENTER();
 
-       for (std::map<std::string, AVD_SU*>::const_iterator it = su_db->begin();
-                       it != su_db->end(); it++) {
-               encode_su(&enc->io_uba, it->second, enc->i_peer_version);
+       for (const auto& value : *su_db) {
+               encode_su(&enc->io_uba, value.second, enc->i_peer_version);
                (*num_of_obj)++;
        }
 
@@ -2072,9 +2069,8 @@ static uint32_t enc_cs_si_config(AVD_CL_
        /* 
         * Walk through the entire list and send the entire list data.
         */
-       for (std::map<std::string, AVD_SI*>::const_iterator it = si_db->begin();
-                       it != si_db->end(); it++) {
-               const AVD_SI *si = it->second;
+       for (const auto& value : *si_db) {
+               const AVD_SI *si = value.second;
                encode_si(cb, &enc->io_uba, si, enc->i_peer_version);
 
                (*num_of_obj)++;
@@ -2107,9 +2103,8 @@ static uint32_t enc_cs_sg_su_oper_list(A
         * Walk through the entire SG list and send the SU operation list
         * for that SG and then move to next SG.
         */
-       for (std::map<std::string, AVD_SG*>::const_iterator it = sg_db->begin();
-                       it != sg_db->end(); it++) {
-               AVD_SG *sg = it->second;
+       for (const auto& value : *sg_db) {
+               AVD_SG *sg = value.second;
                status = enc_su_oper_list(cb, sg, enc);
 
                if (status != NCSCC_RC_SUCCESS) {
@@ -2147,9 +2142,8 @@ static uint32_t enc_cs_sg_admin_si(AVD_C
        /* 
         * Walk through the entire list and send the entire list data.
         */
-       for (std::map<std::string, AVD_SG*>::const_iterator it = sg_db->begin();
-                       it != sg_db->end(); it++) {
-               AVD_SG *sg = it->second;
+       for (const auto& value : *sg_db) {
+               AVD_SG *sg = value.second;
                if (nullptr == sg->admin_si) 
                        continue;
 
@@ -2172,9 +2166,8 @@ static uint32_t enc_cs_si_trans(AVD_CL_C
 {
        TRACE_ENTER();
 
-       for (std::map<std::string, AVD_SG*>::const_iterator it = sg_db->begin();
-                       it != sg_db->end(); it++) {
-               AVD_SG *sg = it->second;
+       for (const auto& value : *sg_db) {
+               AVD_SG *sg = value.second;
                if (sg->si_tobe_redistributed != nullptr) {
                        encode_si_trans(&enc->io_uba, sg, enc->i_peer_version);
                        (*num_of_obj)++;
@@ -2212,9 +2205,8 @@ static uint32_t enc_cs_siass(AVD_CL_CB *
         * are sent.We will send the corresponding COMP_CSI relationship for 
that SU_SI
         * in the same update.
         */
-       for (std::map<std::string, AVD_SU*>::const_iterator it = su_db->begin();
-                       it != su_db->end(); it++) {
-               su = it->second;
+       for (const auto& value : *su_db) {
+               su = value.second;
 
                for (rel = su->list_of_susi; rel != nullptr; rel = 
rel->su_next) {
                        copy = *rel;
@@ -2248,9 +2240,8 @@ static uint32_t enc_cs_comp_config(AVD_C
        /* 
         * Walk through the entire list and send the entire list data.
         */
-       for (std::map<std::string, AVD_COMP*>::const_iterator it = 
comp_db->begin();
-                       it != comp_db->end(); it++) {
-               AVD_COMP *comp  = it->second;
+       for (const auto& value : *comp_db) {
+               AVD_COMP *comp  = value.second;
 
                 encode_comp(&enc->io_uba, comp);
 
@@ -2278,14 +2269,13 @@ static uint32_t enc_cs_comp_config(AVD_C
 \**************************************************************************/
 static uint32_t enc_cs_async_updt_cnt(AVD_CL_CB *cb, NCS_MBCSV_CB_ENC *enc, 
uint32_t *num_of_obj)
 {
-       uint32_t status = NCSCC_RC_SUCCESS;
        EDU_ERR ederror = static_cast<EDU_ERR>(0);
        TRACE_ENTER();
 
        /* 
         * Encode and send async update counts for all the data structures.
         */
-       status = m_NCS_EDU_VER_EXEC(&cb->edu_hdl, 
avsv_edp_ckpt_msg_async_updt_cnt,
+       uint32_t status = m_NCS_EDU_VER_EXEC(&cb->edu_hdl, 
avsv_edp_ckpt_msg_async_updt_cnt,
                                    &enc->io_uba, EDP_OP_TYPE_ENC, 
&cb->async_updt_cnt, &ederror, enc->i_peer_version);
 
        if (status != NCSCC_RC_SUCCESS)
@@ -2311,7 +2301,6 @@ static uint32_t enc_cs_async_updt_cnt(AV
 \**************************************************************************/
 uint32_t avd_enc_warm_sync_rsp(AVD_CL_CB *cb, NCS_MBCSV_CB_ENC *enc)
 {
-       uint32_t status = NCSCC_RC_SUCCESS;
        EDU_ERR ederror = static_cast<EDU_ERR>(0);
        TRACE_ENTER();
 
@@ -2319,7 +2308,7 @@ uint32_t avd_enc_warm_sync_rsp(AVD_CL_CB
         * Encode and send latest async update counts. (In the same manner we 
sent
         * in the last message of the cold sync response.
         */
-       status = m_NCS_EDU_VER_EXEC(&cb->edu_hdl, 
avsv_edp_ckpt_msg_async_updt_cnt,
+       uint32_t status = m_NCS_EDU_VER_EXEC(&cb->edu_hdl, 
avsv_edp_ckpt_msg_async_updt_cnt,
                                    &enc->io_uba, EDP_OP_TYPE_ENC, 
&cb->async_updt_cnt, &ederror, enc->i_peer_version);
 
        if (status != NCSCC_RC_SUCCESS)
@@ -2466,9 +2455,8 @@ static uint32_t enc_cs_comp_cs_type_conf
        /*
         * Walk through the entire list and send the entire list data.
         */
-       for (std::map<std::string, AVD_COMPCS_TYPE*>::const_iterator it = 
compcstype_db->begin();
-                       it != compcstype_db->end(); it++) {
-               AVD_COMPCS_TYPE *compcstype = it->second;
+       for (const auto& value : *compcstype_db) {
+               AVD_COMPCS_TYPE *compcstype = value.second;
                encode_comp_cs_type_config(&enc->io_uba, compcstype, 
enc->i_peer_version);
 
                (*num_of_obj)++;
diff --git a/src/amf/amfd/clm.cc b/src/amf/amfd/clm.cc
--- a/src/amf/amfd/clm.cc
+++ b/src/amf/amfd/clm.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2010 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -340,9 +341,8 @@ static void clm_track_cb(const SaClmClus
                                   in saClmClusterTrack call so update the 
local database */
                                /* get the first node */
                                node = nullptr;
-                               for (std::map<std::string, AVD_AVND 
*>::const_iterator it = node_name_db->begin();
-                                               it != node_name_db->end(); 
it++) {
-                                       node = it->second;
+                               for (const auto& value : *node_name_db) {
+                                       node = value.second;
                                        if 
(node->saAmfNodeClmNode.compare(node_name) == 0) {
                                                break;
                                        }
@@ -449,11 +449,10 @@ done:
 
 SaAisErrorT avd_clm_track_start(void)
 {
-        SaAisErrorT error = SA_AIS_OK;
        SaUint8T trackFlags = 
SA_TRACK_CURRENT|SA_TRACK_CHANGES_ONLY|SA_TRACK_VALIDATE_STEP|SA_TRACK_START_STEP;
 
         
        TRACE_ENTER();
-       error = saClmClusterTrack_4(avd_cb->clmHandle, trackFlags, nullptr);
+       SaAisErrorT error = saClmClusterTrack_4(avd_cb->clmHandle, trackFlags, 
nullptr);
        if (error != SA_AIS_OK) {
                if (error == SA_AIS_ERR_TRY_AGAIN || error == 
SA_AIS_ERR_TIMEOUT ||
                        error == SA_AIS_ERR_UNAVAILABLE) {
@@ -470,9 +469,8 @@ SaAisErrorT avd_clm_track_start(void)
 
 SaAisErrorT avd_clm_track_stop(void)
 {
-       SaAisErrorT error = SA_AIS_OK;
        TRACE_ENTER();
-       error = saClmClusterTrackStop(avd_cb->clmHandle);
+       SaAisErrorT error = saClmClusterTrackStop(avd_cb->clmHandle);
        if (error != SA_AIS_OK) {
                if (error == SA_AIS_ERR_TRY_AGAIN || error == 
SA_AIS_ERR_TIMEOUT ||
                                error == SA_AIS_ERR_UNAVAILABLE) {
diff --git a/src/amf/amfd/cluster.cc b/src/amf/amfd/cluster.cc
--- a/src/amf/amfd/cluster.cc
+++ b/src/amf/amfd/cluster.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -78,9 +79,8 @@ void avd_cluster_tmr_init_evh(AVD_CL_CB 
        // to waits for all veteran nodes becoming ENABLED
        // This set_leds message will enables AMFND starting sending susi 
assignment
        // message to AMFD
-       for (std::map<std::string, AVD_AVND *>::const_iterator it = 
node_name_db->begin();
-                       it != node_name_db->end(); it++) {
-               node = it->second;
+       for (const auto& value : *node_name_db) {
+               node = value.second;
                if (node->node_state == AVD_AVND_STATE_PRESENT &&
                        node->node_info.nodeId != cb->node_id_avd &&
                        node->node_info.nodeId != cb->node_id_avd_other)
@@ -91,9 +91,8 @@ void avd_cluster_tmr_init_evh(AVD_CL_CB 
         * system that are not NCS specific.
         */
 
-       for (std::map<std::string, AVD_SG*>::const_iterator it = sg_db->begin();
-                       it != sg_db->end(); it++) {
-               AVD_SG *i_sg = it->second;
+       for (const auto& value : *sg_db) {
+               AVD_SG *i_sg = value.second;
                if ((i_sg->list_of_su.empty() == true) || (i_sg->sg_ncs_spec == 
true)) {
                        continue;
                }
@@ -112,10 +111,8 @@ void avd_cluster_tmr_init_evh(AVD_CL_CB 
        if (cb->scs_absence_max_duration > 0) {
                TRACE("check if any SU is auto repair enabled");
 
-               for (std::map<std::string, AVD_SU*>::const_iterator it = 
su_db->begin();
-                       it != su_db->end(); it++) {
-
-                       su = it->second;
+               for (const auto& value : *su_db) {
+                       su = value.second;
 
                        if (su->list_of_susi == nullptr &&
                                su->su_on_node != nullptr &&
diff --git a/src/amf/amfd/comp.cc b/src/amf/amfd/comp.cc
--- a/src/amf/amfd/comp.cc
+++ b/src/amf/amfd/comp.cc
@@ -46,11 +46,10 @@ AmfDb<std::string, AVD_COMP> *comp_db = 
 
 void avd_comp_db_add(AVD_COMP *comp)
 {
-       unsigned int rc;
        const std::string comp_name(Amf::to_string(&comp->comp_info.name));
 
        if (comp_db->find(comp_name) == nullptr) {
-               rc = comp_db->insert(comp_name, comp);
+               unsigned int rc = comp_db->insert(comp_name, comp);
                osafassert(rc == NCSCC_RC_SUCCESS);
        }
 }
@@ -943,9 +942,8 @@ static SaAisErrorT ccb_completed_modify_
                           ctcstype does not exist with any cstypes supported 
by this component via compcstype.
                         */ 
 
-                       for (std::map<std::string, 
AVD_COMPCS_TYPE*>::const_iterator it = compcstype_db->begin();
-                                       it != compcstype_db->end(); it++) {
-                               AVD_COMPCS_TYPE *compcstype = it->second;
+                       for (const auto& value : *compcstype_db) {
+                               AVD_COMPCS_TYPE *compcstype = value.second;
                                if (compcstype->comp == comp) {
                                        std::string cstype_name;
                                        AVD_CTCS_TYPE *ctcstype = nullptr;
@@ -1267,7 +1265,6 @@ static void comp_ccb_apply_modify_hdlr(s
        int i = 0;
        AVD_COMP *comp;
        bool node_present = false;
-       AVD_AVND *su_node_ptr = nullptr;
        AVD_COMP_TYPE *comp_type;
        AVSV_PARAM_INFO param;
        bool value_is_deleted;
@@ -1282,7 +1279,7 @@ static void comp_ccb_apply_modify_hdlr(s
        param.name = comp->comp_info.name;
        comp_type = comptype_db->find(comp->saAmfCompType);
 
-       su_node_ptr = comp->su->get_node_ptr();
+       AVD_AVND *su_node_ptr = comp->su->get_node_ptr();
 
        if ((su_node_ptr->node_state == AVD_AVND_STATE_PRESENT) ||
            (su_node_ptr->node_state == AVD_AVND_STATE_NO_CONFIG) ||
diff --git a/src/amf/amfd/compcstype.cc b/src/amf/amfd/compcstype.cc
--- a/src/amf/amfd/compcstype.cc
+++ b/src/amf/amfd/compcstype.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -43,10 +44,8 @@ AVD_COMPCS_TYPE::AVD_COMPCS_TYPE(const s
 
 void avd_compcstype_db_add(AVD_COMPCS_TYPE *cst)
 {
-       unsigned int rc;
-
        if (compcstype_db->find(cst->name) == nullptr) {
-               rc = compcstype_db->insert(cst->name, cst); 
+               unsigned int rc = compcstype_db->insert(cst->name, cst); 
                osafassert(rc == NCSCC_RC_SUCCESS);
        }
 }
@@ -89,14 +88,13 @@ static void compcstype_add_to_model(AVD_
 
 AVD_COMPCS_TYPE * avd_compcstype_find_match(const std::string& cstype_name, 
const AVD_COMP *comp)
 {
-       AVD_COMPCS_TYPE *cst = nullptr;
        SaNameT dn;
        const SaNameTWrapper cstype(cstype_name);
 
        TRACE_ENTER();
        avsv_create_association_class_dn(cstype, &comp->comp_info.name, 
"safSupportedCsType", &dn);
        TRACE("'%s'", osaf_extended_name_borrow(&dn));
-       cst = compcstype_db->find(Amf::to_string(&dn));
+       AVD_COMPCS_TYPE *cst = compcstype_db->find(Amf::to_string(&dn));
        osaf_extended_name_free(&dn);
        TRACE_LEAVE();
        return cst;
diff --git a/src/amf/amfd/comptype.cc b/src/amf/amfd/comptype.cc
--- a/src/amf/amfd/comptype.cc
+++ b/src/amf/amfd/comptype.cc
@@ -414,7 +414,6 @@ done1:
 static void ccb_apply_modify_hdlr(const CcbUtilOperationData_t *opdata)
 {
        const SaImmAttrModificationT_2 *attr_mod;
-       int i;
        AVD_COMP_TYPE *comp_type;
        SaNameT comp_type_name;
 
@@ -442,7 +441,7 @@ static void ccb_apply_modify_hdlr(const 
                
        std::set<AVD_AVND*>::iterator it;
        for (it = node_set.begin(); it != node_set.end(); ++it) {
-               i = 0;
+               int i = 0;
                while ((attr_mod = opdata->param.modify.attrMods[i++]) != 
nullptr) {
                        AVSV_PARAM_INFO param;
                        memset(&param, 0, sizeof(param));
diff --git a/src/amf/amfd/csi.cc b/src/amf/amfd/csi.cc
--- a/src/amf/amfd/csi.cc
+++ b/src/amf/amfd/csi.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -623,7 +624,7 @@ static SaAisErrorT csi_ccb_completed_mod
                                 goto done;
                        }
                         uint32_t val = 
static_cast<uint32_t>(*(uint32_t*)attr_mod->modAttr.attrValues[0]);
-                        if ((val != true) && (val != false)) {
+                        if (val > 1) {
                                 report_ccb_validation_error(opdata,
                                       "Modification of 
osafAmfCSICommunicateCsiAttributeChange fails," 
                                      " Invalid Input %d",val);
@@ -918,11 +919,10 @@ static void csi_ccb_apply_modify_hdlr(st
 {               
        const SaImmAttrModificationT_2 *attr_mod;
        int i = 0;
-       AVD_CSI *csi = nullptr;
 
        TRACE_ENTER2("CCB ID %llu, '%s'", opdata->ccbId, 
osaf_extended_name_borrow(&opdata->objectName));
  
-       csi = csi_db->find(Amf::to_string(&opdata->objectName));
+       AVD_CSI *csi = csi_db->find(Amf::to_string(&opdata->objectName));
        assert(csi != nullptr);
        AVD_SI *si = csi->si;
        assert(si != nullptr);
@@ -1367,12 +1367,11 @@ void avd_compcsi_from_csi_and_susi_delet
 
 void avd_csi_remove_csiattr(AVD_CSI *csi, AVD_CSI_ATTR *attr)
 {
-       AVD_CSI_ATTR *i_attr = nullptr;
        AVD_CSI_ATTR *p_attr = nullptr;
 
        TRACE_ENTER();
        /* remove ATTR from CSI list */
-       i_attr = csi->list_attributes;
+       AVD_CSI_ATTR *i_attr = csi->list_attributes;
 
        while ((i_attr != nullptr) && (i_attr != attr)) {
                p_attr = i_attr;
@@ -1401,18 +1400,16 @@ void avd_csi_remove_csiattr(AVD_CSI *csi
 
 void avd_csi_add_csiattr(AVD_CSI *csi, AVD_CSI_ATTR *csiattr)
 {
-       int cnt = 0;
+       int cnt = 1;
        AVD_CSI_ATTR *ptr;
 
        TRACE_ENTER();
        /* Count number of attributes (multivalue) */
        ptr = csiattr;
-       while (ptr != nullptr) {
+       osafassert(ptr != nullptr);
+       while (ptr->attr_next != nullptr) {
                cnt++;
-               if (ptr->attr_next != nullptr)
-                       ptr = ptr->attr_next;
-               else
-                       break;
+               ptr = ptr->attr_next;
        }
 
        ptr->attr_next = csi->list_attributes;
@@ -1488,10 +1485,8 @@ bool are_sponsor_csis_assigned_in_su(AVD
  */
 SaAisErrorT avd_compcsi_recreate(AVSV_N2D_ND_CSICOMP_STATE_MSG_INFO *info)
 {
-       AVD_SU_SI_REL *susi;
-       const AVD_SI *si;
+       AVD_COMP *comp;
        AVD_CSI *csi;
-       AVD_COMP *comp;
        const AVSV_CSICOMP_STATE_MSG *csicomp;
        const AVSV_COMP_STATE_MSG *comp_state;
 
@@ -1507,10 +1502,10 @@ SaAisErrorT avd_compcsi_recreate(AVSV_N2
                TRACE("Received CSICOMP state msg: csi %s, comp %s",
                        osaf_extended_name_borrow(&csicomp->safCSI), 
osaf_extended_name_borrow(&csicomp->safComp));
 
-               si = csi->si;
+               const AVD_SI *si = csi->si;
                osafassert(si);
 
-               susi = avd_susi_find(avd_cb, comp->su->name, si->name);
+               AVD_SU_SI_REL *susi = avd_susi_find(avd_cb, comp->su->name, 
si->name);
                if (susi == 0) {
                        LOG_ER("SU_SI_REL record for SU '%s' and SI '%s' was 
not found",
                          comp->su->name.c_str(), si->name.c_str());
diff --git a/src/amf/amfd/csiattr.cc b/src/amf/amfd/csiattr.cc
--- a/src/amf/amfd/csiattr.cc
+++ b/src/amf/amfd/csiattr.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -538,25 +539,22 @@ static void csiattr_change_send_msg(AVD_
 static void csiattr_modify_apply(CcbUtilOperationData_t *opdata)
 {
        const SaImmAttrModificationT_2 *attr_mod;
-       const SaImmAttrValuesT_2 *attribute;
        AVD_CSI_ATTR *csiattr = nullptr, *i_attr, *tmp_csi_attr = nullptr;
        std::string csi_attr_name;
-       std::string csi_dn;
        int counter = 0;
        unsigned int i = 0;
-       AVD_CSI *csi;
 
        const std::string object_name(Amf::to_string(&opdata->objectName));
 
         /* extract the parent csi dn */
-       csi_dn = object_name.substr(object_name.find("safCsi="));
+       std::string csi_dn = object_name.substr(object_name.find("safCsi="));
 
-       csi = csi_db->find(csi_dn);
+       AVD_CSI *csi = csi_db->find(csi_dn);
 
        csiattr_dn_to_csiattr_name(object_name, csi_attr_name);
        /* create new name-value pairs for the modified csi attribute */
        while ((attr_mod = opdata->param.modify.attrMods[counter++]) != 
nullptr) {
-               attribute = &attr_mod->modAttr;
+               const SaImmAttrValuesT_2 *attribute = &attr_mod->modAttr;
                if (SA_IMM_ATTR_VALUES_ADD == attr_mod->modType) {
                        tmp_csi_attr = csi_name_value_pair_find_last_entry(csi, 
csi_attr_name);
                        if((nullptr != tmp_csi_attr)&&  
(osaf_extended_name_length(&tmp_csi_attr->name_value.value) == 0)) {
diff --git a/src/amf/amfd/ctcstype.cc b/src/amf/amfd/ctcstype.cc
--- a/src/amf/amfd/ctcstype.cc
+++ b/src/amf/amfd/ctcstype.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -97,7 +98,6 @@ AVD_CTCS_TYPE::AVD_CTCS_TYPE(const std::
 static AVD_CTCS_TYPE *ctcstype_create(const std::string& dn, const 
SaImmAttrValuesT_2 **attributes)
 {
        AVD_CTCS_TYPE *ctcstype;
-       int rc = -1;
        SaAisErrorT error;
 
        TRACE_ENTER2("'%s'", dn.c_str());
@@ -115,12 +115,6 @@ static AVD_CTCS_TYPE *ctcstype_create(co
            SA_AIS_OK)
                ctcstype->saAmfCtDefNumMaxStandbyCSIs = -1;     /* no limit */
 
-       rc = 0;
-
-       if (rc != 0) {
-               delete ctcstype;
-               ctcstype = nullptr;
-       }
        TRACE_LEAVE();
        return ctcstype;
 }
@@ -228,10 +222,9 @@ AVD_CTCS_TYPE *get_ctcstype(const std::s
        SaNameT dn;
        const SaNameTWrapper comptype(comptype_name);
        const SaNameTWrapper cstype(cstype_name);
-       AVD_CTCS_TYPE *ctcs_type = nullptr;
        avsv_create_association_class_dn(cstype, comptype,
                        "safSupportedCsType", &dn);
-       ctcs_type = ctcstype_db->find(Amf::to_string(&dn));
+       AVD_CTCS_TYPE *ctcs_type = ctcstype_db->find(Amf::to_string(&dn));
        osaf_extended_name_free(&dn);
        return ctcs_type;
 }
diff --git a/src/amf/amfd/dmsg.cc b/src/amf/amfd/dmsg.cc
--- a/src/amf/amfd/dmsg.cc
+++ b/src/amf/amfd/dmsg.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -58,12 +59,11 @@
 
 void avd_mds_d_enc(MDS_CALLBACK_ENC_INFO *enc_info)
 {
-       NCS_UBAID *uba = nullptr;
        uint8_t *data;
        AVD_D2D_MSG *msg = 0;
 
        msg = (AVD_D2D_MSG *)enc_info->i_msg;
-       uba = enc_info->io_uba;
+       NCS_UBAID *uba = enc_info->io_uba;
 
        data = ncs_enc_reserve_space(uba, 3 * sizeof(uint32_t));
        ncs_encode_32bit(&data, msg->msg_type);
@@ -233,5 +233,4 @@ uint32_t avd_d2d_msg_rcv(AVD_D2D_MSG *rc
 void avsv_d2d_msg_free(AVD_D2D_MSG *d2d_msg)
 {
        delete d2d_msg;
-       d2d_msg = nullptr;
 }
diff --git a/src/amf/amfd/hlttype.cc b/src/amf/amfd/hlttype.cc
--- a/src/amf/amfd/hlttype.cc
+++ b/src/amf/amfd/hlttype.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -61,7 +62,6 @@ done:
 static void ccb_apply_modify_hdlr(const CcbUtilOperationData_t *opdata)
 {
        const SaImmAttrModificationT_2 *attr_mod;
-       int i;
        const AVD_COMP_TYPE *comp_type;
        std::string comp_type_name;
        const std::string object_name(Amf::to_string(&opdata->objectName));
@@ -90,7 +90,7 @@ static void ccb_apply_modify_hdlr(const 
                
        std::set<AVD_AVND*>::iterator it;
        for (it = node_set.begin(); it != node_set.end(); ++it) {
-               i = 0;
+               int i = 0;
                while ((attr_mod = opdata->param.modify.attrMods[i++]) != 
nullptr) {
                        AVSV_PARAM_INFO param;
                        const SaImmAttrValuesT_2 *attribute = 
&attr_mod->modAttr;
diff --git a/src/amf/amfd/imm.cc b/src/amf/amfd/imm.cc
--- a/src/amf/amfd/imm.cc
+++ b/src/amf/amfd/imm.cc
@@ -1119,13 +1119,12 @@ static void ccb_abort_cb(SaImmOiHandleT 
 static void ccb_insert_ordered_list(AvdImmOiCcbApplyCallbackT ccb_apply_cb,
                CcbUtilOperationData_t *opdata, AVSV_AMF_CLASS_ID type)
 {
-       AvdCcbApplyOrderedListT *temp = nullptr;
        AvdCcbApplyOrderedListT *prev = nullptr;
        AvdCcbApplyOrderedListT *next = nullptr;
 
        /* allocate memory */
 
-       temp = new AvdCcbApplyOrderedListT;
+       AvdCcbApplyOrderedListT *temp = new AvdCcbApplyOrderedListT;
 
        temp->ccb_apply_cb = ccb_apply_cb;
        temp->opdata = opdata;
@@ -1340,7 +1339,6 @@ static const SaImmOiCallbacksT_2 avd_cal
  **************************************************************************/
 static SaAisErrorT hydra_config_get(void)
 {
-       SaAisErrorT rc = SA_AIS_OK;
        const SaImmAttrValuesT_2 **attributes;
        SaImmAccessorHandleT accessorHandle;
        const std::string dn = "opensafImm=opensafImm,safApp=safImmService";
@@ -1351,7 +1349,7 @@ static SaAisErrorT hydra_config_get(void
        TRACE_ENTER();
 
        immutil_saImmOmAccessorInitialize(avd_cb->immOmHandle, &accessorHandle);
-       rc = immutil_saImmOmAccessorGet_o2(accessorHandle, dn.c_str(), 
attributeNames,
+       SaAisErrorT rc = immutil_saImmOmAccessorGet_o2(accessorHandle, 
dn.c_str(), attributeNames,
                                (SaImmAttrValuesT_2 ***)&attributes);
 
        if (rc != SA_AIS_OK) {
@@ -1640,9 +1638,8 @@ unsigned int avd_imm_config_get(void)
 
        // SGs needs to adjust configuration once all instances have been added
        {
-               for (std::map<std::string, AVD_SG*>::const_iterator it = 
sg_db->begin();
-                               it != sg_db->end(); it++) {
-                       AVD_SG *sg = it->second;
+               for (const auto& value : *sg_db) {
+                       AVD_SG *sg = value.second;
                        avd_sg_adjust_config(sg);
                }
        }
@@ -1767,9 +1764,7 @@ SaAisErrorT avd_saImmOiRtObjectUpdate_re
  */
 bool check_to_create_immjob_at_standby_amfd(const std::string& dn)
 {
-
-       AVSV_AMF_CLASS_ID class_type = AVSV_SA_AMF_CLASS_INVALID;
-       class_type = object_name_to_class_type(dn);
+       AVSV_AMF_CLASS_ID class_type = object_name_to_class_type(dn);
        /*
         SI and CSI are config classes, so AMFD will not create any object for 
them
          in IMM. But for creation of runtime objects of classes SUSI and 
CSICOMP, parent
@@ -1887,9 +1882,8 @@ void avd_saImmOiRtObjectDelete(const std
 void avd_imm_update_runtime_attrs(void)
 {
        /* Update SU Class runtime cached attributes. */
-       for (std::map<std::string, AVD_SU*>::const_iterator it = su_db->begin();
-                       it != su_db->end(); it++) {
-               AVD_SU *su = it->second;
+       for (const auto& value : *su_db) {
+               AVD_SU *su = value.second;
                avd_saImmOiRtObjectUpdate(su->name, "saAmfSUPreInstantiable",
                        SA_IMM_ATTR_SAUINT32T,  &su->saAmfSUPreInstantiable);
 
@@ -1912,9 +1906,8 @@ void avd_imm_update_runtime_attrs(void)
        }
 
        /* Update Component Class runtime cached attributes. */
-       for (std::map<std::string, AVD_COMP*>::const_iterator it = 
comp_db->begin();
-                       it != comp_db->end(); it++) {
-               AVD_COMP *comp  = it->second;
+       for (const auto& value : *comp_db) {
+               AVD_COMP *comp  = value.second;
                avd_saImmOiRtObjectUpdate(Amf::to_string(&comp->comp_info.name),
                        "saAmfCompReadinessState", SA_IMM_ATTR_SAUINT32T,
                        &comp->saAmfCompReadinessState);
@@ -1930,17 +1923,15 @@ void avd_imm_update_runtime_attrs(void)
        }
 
        /* Update Node Class runtime cached attributes. */
-       for (std::map<std::string, AVD_AVND *>::const_iterator it = 
node_name_db->begin();
-                       it != node_name_db->end(); it++) {
-               AVD_AVND *node = it->second;
+       for (const auto& value : *node_name_db) {
+               AVD_AVND *node = value.second;
                avd_saImmOiRtObjectUpdate(node->name, "saAmfNodeOperState",
                                SA_IMM_ATTR_SAUINT32T, 
&node->saAmfNodeOperState);
        }
 
        /* Update Node Class runtime cached attributes. */
-       for (std::map<std::string, AVD_SI*>::const_iterator it = si_db->begin();
-                       it != si_db->end(); it++) {
-               AVD_SI *si = it->second;
+       for (const auto& value : *si_db) {
+               AVD_SI *si = value.second;
                avd_saImmOiRtObjectUpdate(si->name, "saAmfSIAssignmentState",
                        SA_IMM_ATTR_SAUINT32T, &si->saAmfSIAssignmentState);
        }
@@ -2296,8 +2287,7 @@ done:
 //Imm Object atrribute update related member functions.
 bool ImmObjUpdate::su_get_attr_value() {       
   bool ret = true;
-  AVD_SU *su = nullptr;
-  su = su_db->find(dn);
+  AVD_SU *su = su_db->find(dn);
   if (su == nullptr) {
     TRACE_1("su not found");
     ret = false;
@@ -2351,13 +2341,10 @@ bool ImmObjUpdate::siass_get_attr_value(
 bool ImmObjUpdate::csiass_get_attr_value() {
   std::string comp_name;
   std::string csi_name;
-  AVD_CSI *csi = nullptr;
-  AVD_COMP *comp = nullptr;
-  AVD_COMP_CSI_REL *compcsi = nullptr;
   
//dn:safCSIComp=safComp=AmfDemo\,safSu=SU1\,safSg=AmfDemo\,safApp=AmfDemo1,safCsi=AmfDemo,safSi=AmfDemo,safApp=AmfDemo1
   avd_association_namet_init(dn, comp_name, csi_name, AVSV_SA_AMF_CSI);
-  csi =  csi_db->find(csi_name);
-  comp = comp_db->find(comp_name);
+  AVD_CSI *csi =  csi_db->find(csi_name);
+  AVD_COMP *comp = comp_db->find(comp_name);
   if ((csi == nullptr) || (comp == nullptr)) {
     TRACE_1("comp or csi not found");
     return false;
@@ -2367,6 +2354,8 @@ bool ImmObjUpdate::csiass_get_attr_value
     TRACE_1("susi not found");
     return false;
   }
+
+  AVD_COMP_CSI_REL *compcsi;
   for (compcsi = susi->list_of_csicomp; compcsi; compcsi = 
compcsi->susi_csicomp_next) {
     if ((compcsi->comp == comp) && (compcsi->csi == csi))
       break;
@@ -2384,8 +2373,7 @@ bool ImmObjUpdate::csiass_get_attr_value
   return true;
 }
 bool ImmObjUpdate::comp_get_attr_value() {
-  AVD_COMP *comp = nullptr;
-  comp = comp_db->find(dn);    
+  AVD_COMP *comp = comp_db->find(dn); 
   if (comp == nullptr) {
     TRACE_1("comp not found");
     return false;
@@ -2475,8 +2463,6 @@ bool ImmObjDelete::is_csiass_exist() {
   bool ret = true;
   std::string comp_name;
   std::string csi_name;
-  AVD_CSI *csi = nullptr;
-  AVD_COMP *comp = nullptr;
   AVD_COMP_CSI_REL *compcsi = nullptr; 
   AVD_SU_SI_REL *susi = nullptr;
   
//dn:safCSIComp=safComp=AmfDemo\,safSu=SU1\,safSg=AmfDemo\,safApp=AmfDemo1,safCsi=AmfDemo,safSi=AmfDemo,safApp=AmfDemo1
@@ -2484,8 +2470,8 @@ bool ImmObjDelete::is_csiass_exist() {
   avd_association_namet_init(dn, comp_name, csi_name, AVSV_SA_AMF_CSI);
   TRACE("csi:%s",csi_name.c_str());
   TRACE("comp:%s",comp_name.c_str());
-  csi =  csi_db->find(csi_name);
-  comp = comp_db->find(comp_name);     
+  AVD_CSI *csi =  csi_db->find(csi_name);
+  AVD_COMP *comp = comp_db->find(comp_name);   
   if ((csi == nullptr) || (comp == nullptr)) {
     TRACE_1("comp or csi not found");
     goto done;
diff --git a/src/amf/amfd/main.cc b/src/amf/amfd/main.cc
--- a/src/amf/amfd/main.cc
+++ b/src/amf/amfd/main.cc
@@ -254,8 +254,6 @@ static void standby_invalid_evh(AVD_CL_C
        /* This function should generally never be called
         * log the event to the debug log at information level and return
         */
-       AVD_DND_MSG *n2d_msg;
-
        LOG_IN("avd_standby_invalid_evh: %u", evt->rcv_evt);
 
        if ((evt->rcv_evt >= AVD_EVT_NODE_UP_MSG) && (evt->rcv_evt <= 
AVD_EVT_VERIFY_ACK_NACK_MSG)) {
@@ -264,7 +262,7 @@ static void standby_invalid_evh(AVD_CL_C
                        return;
                }
 
-               n2d_msg = evt->info.avnd_msg;
+               AVD_DND_MSG *n2d_msg = evt->info.avnd_msg;
                avsv_dnd_msg_free(n2d_msg);
                evt->info.avnd_msg = nullptr;
        }
@@ -287,8 +285,6 @@ static void qsd_invalid_evh(AVD_CL_CB *c
        /* This function should generally never be called
         * log the event to the debug log at information level and return
         */
-       AVD_DND_MSG *n2d_msg;
-
        LOG_IN("avd_qsd_invalid_evh: %u", evt->rcv_evt);
 
        /* we need not send sync update to stanby */
@@ -300,7 +296,7 @@ static void qsd_invalid_evh(AVD_CL_CB *c
                        return;
                }
 
-               n2d_msg = evt->info.avnd_msg;
+               AVD_DND_MSG *n2d_msg = evt->info.avnd_msg;
                avsv_dnd_msg_free(n2d_msg);
                evt->info.avnd_msg = nullptr;
        }
@@ -320,10 +316,7 @@ static void qsd_invalid_evh(AVD_CL_CB *c
 static void qsd_ignore_evh(AVD_CL_CB *cb, AVD_EVT *evt)
 {
        /* Ignore this Event. Free this msg */
-       AVD_DND_MSG *n2d_msg;
-
        LOG_IN("avd_qsd_ignore_evh: %u", evt->rcv_evt);
-
        /* we need not send sync update to stanby */
        cb->sync_required = false;
 
@@ -333,7 +326,7 @@ static void qsd_ignore_evh(AVD_CL_CB *cb
                        return;
                }
 
-               n2d_msg = evt->info.avnd_msg;
+               AVD_DND_MSG *n2d_msg = evt->info.avnd_msg;
                avsv_dnd_msg_free(n2d_msg);
                evt->info.avnd_msg = nullptr;
        }
@@ -402,8 +395,6 @@ static void handle_event_in_failover_sta
 
        std::map<uint32_t, AVD_FAIL_OVER_NODE *>::const_iterator it = 
node_list_db->begin();
        if (it == node_list_db->end()) {
-               AVD_EVT_QUEUE *queue_evt;
-
                /* We have received the info from all the nodes. */
                cb->avd_fover_state = false;
 
@@ -411,7 +402,7 @@ static void handle_event_in_failover_sta
                   and process them now */
 
                while (!cb->evt_queue.empty()) {
-                       queue_evt = cb->evt_queue.front();
+                       AVD_EVT_QUEUE *queue_evt = cb->evt_queue.front();
                        cb->evt_queue.pop();
                        process_event(cb, queue_evt->evt);
                        delete queue_evt;
@@ -426,8 +417,8 @@ static void handle_event_in_failover_sta
                                it != node_id_db->end();) {
                        AVD_AVND *node = it->second;
                        ++it;
-                       bool fover_done = false;
                        if (AVD_AVND_STATE_ABSENT == node->node_state) {
+                               bool fover_done = false;
                                /* Check whether this node failover has been
                                   performed or not. */
                                for (const auto& i_su : node->list_of_ncs_su) {
diff --git a/src/amf/amfd/mds.cc b/src/amf/amfd/mds.cc
--- a/src/amf/amfd/mds.cc
+++ b/src/amf/amfd/mds.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -502,12 +503,10 @@ static uint32_t avd_mds_svc_evt(MDS_CALL
 ******************************************************************************/
 static uint32_t avd_mds_qsd_ack_evt(MDS_CALLBACK_QUIESCED_ACK_INFO *evt_info)
 {
-       AVD_EVT *evt = AVD_EVT_NULL;
        AVD_CL_CB *cb = avd_cb;
-
        TRACE_ENTER();
 
-       evt = new AVD_EVT();
+       AVD_EVT *evt = new AVD_EVT();
 
        evt->rcv_evt = AVD_EVT_MDS_QSD_ACK;
 
diff --git a/src/amf/amfd/ndfsm.cc b/src/amf/amfd/ndfsm.cc
--- a/src/amf/amfd/ndfsm.cc
+++ b/src/amf/amfd/ndfsm.cc
@@ -2,6 +2,7 @@
  *
  * (C) Copyright 2008 The OpenSAF Foundation
  * (C) Copyright 2017 Ericsson AB - All Rights Reserved.
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -112,18 +113,16 @@ void avd_process_state_info_queue(AVD_CL
        // Otherwise, amfd is coming from SC recovery from headless, SI alarm 
state
        // should be re-evalutated and raise the alarm in case it's still 
unassigned.
        if (queue_size == 0) {
-               for (std::map<std::string, AVD_SI*>::const_iterator it = 
si_db->begin();
-                               it != si_db->end(); it++) {
-                       AVD_SI *si = it->second;
+               for (const auto& value : *si_db) {
+                       AVD_SI *si = value.second;
                        if (si->alarm_sent == true) {
                                si->update_alarm_state(false, false);
                        }
                }
        }
        else {
-               for (std::map<std::string, AVD_SI*>::const_iterator it = 
si_db->begin();
-                               it != si_db->end(); it++) {
-                       AVD_SI *si = it->second;
+               for (const auto& value : *si_db) {
+                       AVD_SI *si = value.second;
                        if (si->alarm_sent == false &&
                                        si->saAmfSIAssignmentState == 
SA_AMF_ASSIGNMENT_UNASSIGNED) {
                                si->update_alarm_state(true);
@@ -173,9 +172,8 @@ uint32_t avd_count_sync_node_size(AVD_CL
        uint32_t count = 0;
        TRACE_ENTER();
 
-       for (std::map<std::string, AVD_AVND *>::const_iterator it = 
node_name_db->begin();
-                       it != node_name_db->end(); it++) {
-               AVD_AVND *avnd = it->second;
+       for (const auto& value : *node_name_db) {
+               AVD_AVND *avnd = value.second;
                osafassert(avnd);
                for (const auto& su :avnd->list_of_ncs_su) {
                        if (su->sg_of_su->sg_redundancy_model == 
SA_AMF_2N_REDUNDANCY_MODEL) {
@@ -221,9 +219,8 @@ uint32_t avd_count_node_up(AVD_CL_CB *cb
 
        TRACE_ENTER();
 
-       for (std::map<std::string, AVD_AVND *>::const_iterator it = 
node_name_db->begin();
-                       it != node_name_db->end(); it++) {
-               node = it->second;
+for (const auto& value : *node_name_db) {
+               node = value.second;
                if (node->node_up_msg_count > 0
                                && node->node_info.nodeId != cb->node_id_avd
                                && node->node_info.nodeId != 
cb->node_id_avd_other)
@@ -737,9 +734,8 @@ void avd_mds_avnd_down_evh(AVD_CL_CB *cb
                /* Find if node is there in the f-over node list.
                 * If yes then remove entry
                 */
-               for (std::map<uint32_t, AVD_FAIL_OVER_NODE *>::const_iterator 
it = node_list_db->begin();
-                               it != node_list_db->end(); it++) {
-                       AVD_FAIL_OVER_NODE *node_fovr = it->second;
+               for (const auto& value : *node_list_db) {
+                       AVD_FAIL_OVER_NODE *node_fovr = value.second;
                        if (node_fovr->node_id == evt->info.node_id) {
                                node_list_db->erase(node_fovr->node_id);
                                delete node_fovr;
@@ -773,9 +769,8 @@ void avd_fail_over_event(AVD_CL_CB *cb)
        cb->avd_fover_state = true;
 
        /* Walk through all the nodes and send verify message to them. */
-       for (std::map<uint32_t, AVD_AVND *>::const_iterator it = 
node_id_db->begin();
-                       it != node_id_db->end(); it++) {
-               AVD_AVND *avnd = it->second;
+       for (const auto& value : *node_id_db) {
+               AVD_AVND *avnd = value.second;
                node_id = avnd->node_info.nodeId;
 
                /*
@@ -861,9 +856,8 @@ void avd_ack_nack_evh(AVD_CL_CB *cb, AVD
        /* Find if node is there in the f-over node list. If yes then remove 
entry
         * and process the message. Else just return.
         */
-       for (std::map<uint32_t, AVD_FAIL_OVER_NODE *>::const_iterator it = 
node_list_db->begin();
-                       it != node_list_db->end(); it++) {
-               AVD_FAIL_OVER_NODE *node_fovr = it->second;
+       for (const auto& value : *node_list_db) {
+               AVD_FAIL_OVER_NODE *node_fovr = value.second;
                if (node_fovr->node_id == evt->info.avnd_msg->msg_info.
                                n2d_ack_nack_info.node_id) {
                        node_found = true;
diff --git a/src/amf/amfd/ndproc.cc b/src/amf/amfd/ndproc.cc
--- a/src/amf/amfd/ndproc.cc
+++ b/src/amf/amfd/ndproc.cc
@@ -2,6 +2,7 @@
  *
  * (C) Copyright 2008 The OpenSAF Foundation
  * (C) Copyright 2017 Ericsson AB - All Rights Reserved.
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -314,7 +315,6 @@ void avd_oper_req_evh(AVD_CL_CB *cb, AVD
 void avd_nd_sisu_state_info_evh(AVD_CL_CB *cb, AVD_EVT *evt)
 {
        AVD_DND_MSG *n2d_msg = evt->info.avnd_msg;
-       AVD_EVT_QUEUE* state_info_evt;
 
        TRACE_ENTER();
        LOG_NO("Receive message with event type:%u, msg_type:%u, from node:%x, 
msg_id:%u",
@@ -324,7 +324,7 @@ void avd_nd_sisu_state_info_evh(AVD_CL_C
                        
evt->info.avnd_msg->msg_info.n2d_nd_sisu_state_info.msg_id);
 
        if (cb->node_sync_window_closed == false) {
-               state_info_evt = new AVD_EVT_QUEUE();
+               AVD_EVT_QUEUE *state_info_evt = new AVD_EVT_QUEUE();
                state_info_evt->evt = new AVD_EVT{};
                state_info_evt->evt->rcv_evt = evt->rcv_evt;
                state_info_evt->evt->info.avnd_msg = n2d_msg;
@@ -358,7 +358,6 @@ void avd_nd_sisu_state_info_evh(AVD_CL_C
 void avd_nd_compcsi_state_info_evh(AVD_CL_CB *cb, AVD_EVT *evt)
 {
        AVD_DND_MSG *n2d_msg = evt->info.avnd_msg;
-       AVD_EVT_QUEUE* state_info_evt;
 
        TRACE_ENTER();
        LOG_NO("Receive message with event type:%u, msg_type:%u, from node:%x, 
msg_id:%u",
@@ -368,7 +367,7 @@ void avd_nd_compcsi_state_info_evh(AVD_C
                        
evt->info.avnd_msg->msg_info.n2d_nd_csicomp_state_info.msg_id);
 
        if (cb->node_sync_window_closed == false) {
-               state_info_evt = new AVD_EVT_QUEUE();
+               AVD_EVT_QUEUE *state_info_evt = new AVD_EVT_QUEUE();
                state_info_evt->evt = new AVD_EVT{};
                state_info_evt->evt->rcv_evt = evt->rcv_evt;
                state_info_evt->evt->info.avnd_msg = n2d_msg;
@@ -731,9 +730,8 @@ bool cluster_su_instantiation_done(AVD_C
 
 node_walk:
 
-       for (std::map<std::string, AVD_AVND *>::const_iterator it = 
node_name_db->begin();
-                       it != node_name_db->end(); it++) {
-               node = it->second;
+       for (const auto& value : *node_name_db) {
+               node = value.second;
                TRACE("node name '%s', Oper'%u'", node->name.c_str(), 
node->saAmfNodeOperState);
                if (node->saAmfNodeOperState == SA_AMF_OPERATIONAL_ENABLED)
                {
@@ -1098,9 +1096,7 @@ void avd_comp_validation_evh(AVD_CL_CB *
        AVD_DND_MSG *n2d_msg = evt->info.avnd_msg;
        uint32_t res = NCSCC_RC_SUCCESS;
        AVD_AVND *node;
-       AVSV_N2D_COMP_VALIDATION_INFO *valid_info = nullptr;
-
-       valid_info = &n2d_msg->msg_info.n2d_comp_valid_info;
+       AVSV_N2D_COMP_VALIDATION_INFO *valid_info = 
&n2d_msg->msg_info.n2d_comp_valid_info;
 
        TRACE_ENTER2("%s", osaf_extended_name_borrow(&valid_info->comp_name));
 
diff --git a/src/amf/amfd/node.cc b/src/amf/amfd/node.cc
--- a/src/amf/amfd/node.cc
+++ b/src/amf/amfd/node.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -46,12 +47,10 @@ bool NodeNameCompare::operator() (const 
 
 uint32_t avd_node_add_nodeid(AVD_AVND *node)
 {
-       unsigned int rc;
-
        if ((node_id_db->find(node->node_info.nodeId) == nullptr) &&
                        (node->node_info.nodeId != 0)) {
                TRACE("added node %d", node->node_info.nodeId);
-               rc = node_id_db->insert(node->node_info.nodeId, node);
+               unsigned int rc = node_id_db->insert(node->node_info.nodeId, 
node);
                osafassert(rc == NCSCC_RC_SUCCESS);
        }
 
@@ -65,12 +64,11 @@ void avd_node_delete_nodeid(AVD_AVND *no
 
 void avd_node_db_add(AVD_AVND *node)
 {
-       unsigned int rc;
        TRACE_ENTER();
 
        if (node_name_db->find(node->name) == nullptr) {
                TRACE("add %s", node->name.c_str());
-               rc = node_name_db->insert(node->name, node);
+               unsigned int rc = node_name_db->insert(node->name, node);
                osafassert(rc == NCSCC_RC_SUCCESS);
        }
        TRACE_LEAVE();
@@ -197,7 +195,7 @@ void avd_node_delete(AVD_AVND *node)
                                                        delete compcstype;
                                                }
                                                else
-                                                       it++;
+                                                       ++it;
                                        }
 
 
@@ -578,9 +576,8 @@ static SaAisErrorT node_ccb_completed_de
 
        /* This node shouldn't be part of any nodegroup. First this node has to 
be deleted from
           node group. */
-       for (std::map<std::string, AVD_AMF_NG*>::const_iterator it = 
nodegroup_db->begin();
-                       it != nodegroup_db->end(); it++) {
-               AVD_AMF_NG *ng = it->second;
+       for (const auto& value : *nodegroup_db) {
+               AVD_AMF_NG *ng = value.second;
 
                if (node_in_nodegroup(Amf::to_string(&(opdata->objectName)), 
ng) == true) {
                        // if the node is being removed from nodegroup too, 
then it's OK
@@ -1551,9 +1548,8 @@ void node_reset_su_try_inst_counter(cons
  */
 bool are_all_ngs_in_unlocked_state(const AVD_AVND *node)
 {
-        for (std::map<std::string, AVD_AMF_NG*>::const_iterator it = 
nodegroup_db->begin();
-                        it != nodegroup_db->end(); it++) {
-                AVD_AMF_NG *ng = it->second;
+       for (const auto& value : *nodegroup_db) {
+               AVD_AMF_NG *ng = value.second;
                 if ((node_in_nodegroup(node->name, ng) == true) &&
                                 (ng->saAmfNGAdminState != 
SA_AMF_ADMIN_UNLOCKED))
                         return false;
@@ -1567,9 +1563,8 @@ bool are_all_ngs_in_unlocked_state(const
  */
 bool any_ng_in_locked_in_state(const AVD_AVND *node)
 {
-       for (std::map<std::string, AVD_AMF_NG*>::const_iterator it = 
nodegroup_db->begin();
-                       it != nodegroup_db->end(); it++) {
-               AVD_AMF_NG *ng = it->second;
+       for (const auto& value : *nodegroup_db) {
+               AVD_AMF_NG *ng = value.second;
                if ((node_in_nodegroup(node->name, ng) == true) &&
                                (ng->saAmfNGAdminState == 
SA_AMF_ADMIN_LOCKED_INSTANTIATION)) {
                        TRACE("Nodegroup '%s' is in locked-in", 
ng->name.c_str());
diff --git a/src/amf/amfd/nodegroup.cc b/src/amf/amfd/nodegroup.cc
--- a/src/amf/amfd/nodegroup.cc
+++ b/src/amf/amfd/nodegroup.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -70,11 +71,12 @@ static int is_config_valid(const std::st
        }
 
        while ((attr = attributes[i++]) != nullptr)
-               if (!strcmp(attr->attrName, "saAmfNGNodeList"))
+               if (!strcmp(attr->attrName, "saAmfNGNodeList")) {
+                       osafassert(attr->attrValuesNumber > 0);
                        break;
+               }
 
        osafassert(attr);
-       osafassert(attr->attrValuesNumber > 0);
 
        for (j = 0; j < attr->attrValuesNumber; j++) {
                SaNameT *name = static_cast<SaNameT *>(attr->attrValues[j]);
@@ -220,9 +222,8 @@ SaAisErrorT avd_ng_config_get(void)
 
        /* Could be here as a consequence of a fail/switch-over. Delete the DB
        ** since it is anyway not synced and needs to be rebuilt. */
-       for (std::map<std::string, AVD_AMF_NG*>::const_iterator it = 
nodegroup_db->begin();
-                       it != nodegroup_db->end(); it++) {
-               AVD_AMF_NG *ng = it->second;
+       for (const auto& value : *nodegroup_db) {
+               AVD_AMF_NG *ng = value.second;
                ng_delete(ng);
        }
 
@@ -1403,9 +1404,8 @@ void avd_ng_restore_headless_states(AVD_
                if (susi->state == SA_AMF_HA_QUIESCED || susi->state == 
SA_AMF_HA_QUIESCING ||
                                susi->fsm == AVD_SU_SI_STATE_UNASGN) {
 
-               for (std::map<std::string, AVD_AMF_NG*>::const_iterator it = 
nodegroup_db->begin();
-                       it != nodegroup_db->end(); it++) {
-                       AVD_AMF_NG *ng = it->second;
+                       for (const auto& value : *nodegroup_db) {
+                               AVD_AMF_NG *ng = value.second;
                        for (std::set<std::string>::const_iterator iter = 
ng->saAmfNGNodeList.begin();
                                        iter != ng->saAmfNGNodeList.end(); 
++iter) {
                                AVD_AVND *node = avd_node_get(*iter);
diff --git a/src/amf/amfd/ntf.cc b/src/amf/amfd/ntf.cc
--- a/src/amf/amfd/ntf.cc
+++ b/src/amf/amfd/ntf.cc
@@ -2,6 +2,7 @@
  *
  * (C) Copyright 2010 The OpenSAF Foundation
  * (C) Copyright 2017 Ericsson AB - All Rights Reserved.
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -897,11 +898,10 @@ SaAisErrorT avd_start_ntf_init_bg(void)
 
 AvdJobDequeueResultT NtfSend::exec(const AVD_CL_CB *cb) {
   AvdJobDequeueResultT res;
-  SaAisErrorT rc = SA_AIS_OK;
   TRACE_ENTER2("Ntf Type:%x, sent status:%u", myntf.notificationType,
     already_sent); 
 
-  rc = avd_try_send_notification(this);
+  SaAisErrorT rc = avd_try_send_notification(this);
   if (rc == SA_AIS_OK) {
     delete Fifo::dequeue();
     res = JOB_EXECUTED;
diff --git a/src/amf/amfd/role.cc b/src/amf/amfd/role.cc
--- a/src/amf/amfd/role.cc
+++ b/src/amf/amfd/role.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -695,9 +696,8 @@ static void reset_admin_op_params_after_
 {
        TRACE_ENTER();
        //For ng.
-       for (std::map<std::string, AVD_AMF_NG*>::const_iterator it = 
nodegroup_db->begin();
-                       it != nodegroup_db->end(); it++) {
-               AVD_AMF_NG *ng = it->second;
+       for (const auto& value : *nodegroup_db) {
+               AVD_AMF_NG *ng = value.second;
                if (ng->admin_ng_pend_cbk.invocation != 0) {
                        ng->admin_ng_pend_cbk.invocation = 0;
                        ng->admin_ng_pend_cbk.admin_oper = 
static_cast<SaAmfAdminOperationIdT>(0);
@@ -709,29 +709,25 @@ static void reset_admin_op_params_after_
                }
        }
        //For Node.
-       for (std::map<uint32_t, AVD_AVND *>::const_iterator it = 
node_id_db->begin();
-                       it != node_id_db->end(); it++) {
-               AVD_AVND *node = it->second;
+       for (const auto& value : *node_id_db) {
+               AVD_AVND *node = value.second;
                node->admin_node_pend_cbk.invocation = 0;
                node->admin_node_pend_cbk.admin_oper = 
static_cast<SaAmfAdminOperationIdT>(0);
        }
        //For SI.
-       for (std::map<std::string, AVD_SI*>::const_iterator it = si_db->begin();
-                       it != si_db->end(); it++) {
-               AVD_SI *si = it->second;
+       for (const auto& value : *si_db) {
+               AVD_SI *si = value.second;
                si->invocation = 0;
        }
        //For SG.
-       for (std::map<std::string, AVD_SG*>::const_iterator it = sg_db->begin();
-                       it != sg_db->end(); it++) {
-               AVD_SG *sg = it->second;
+       for (const auto& value : *sg_db) {
+               AVD_SG *sg = value.second;
                sg->adminOp_invocationId = 0;
                sg->adminOp = static_cast<SaAmfAdminOperationIdT>(0);
        }
        //For SU.
-       for (std::map<std::string, AVD_SU*>::const_iterator it = su_db->begin();
-                       it != su_db->end(); it++) {
-               AVD_SU *su = it->second;
+       for (const auto& value : *su_db) {
+               AVD_SU *su = value.second;
                su->pend_cbk.invocation = 0;
                 su->pend_cbk.admin_oper = 
static_cast<SaAmfAdminOperationIdT>(0);
 
@@ -862,8 +858,6 @@ try_again:
 
 void amfd_switch(AVD_CL_CB *cb)
 {
-       AVD_AVND *avnd = nullptr;  
-
        TRACE_ENTER();
 
        LOG_NO("Controller switch over initiated");
@@ -871,7 +865,7 @@ void amfd_switch(AVD_CL_CB *cb)
 
        /* First check if there are any other SI's that are any other active */
        /* get the avnd from node_id */
-       avnd = avd_node_find_nodeid(cb->node_id_avd);
+       AVD_AVND *avnd = avd_node_find_nodeid(cb->node_id_avd);
 
        for (const auto& i_su : avnd->list_of_ncs_su) {
                if ((i_su->list_of_susi != 0) &&
@@ -910,7 +904,6 @@ void amfd_switch(AVD_CL_CB *cb)
 
 uint32_t avd_post_amfd_switch_role_change_evt(AVD_CL_CB *cb, SaAmfHAStateT 
role)
 {
-       uint32_t rc = NCSCC_RC_SUCCESS;
        AVD_EVT *evt;
 
        evt = new AVD_EVT;
@@ -921,7 +914,7 @@ uint32_t avd_post_amfd_switch_role_chang
        evt->info.avd_msg->msg_info.d2d_chg_role_req.cause = AVD_SWITCH_OVER;
        evt->info.avd_msg->msg_info.d2d_chg_role_req.role =  role; 
 
-       rc = ncs_ipc_send(&avd_cb->avd_mbx, (NCS_IPC_MSG *)evt, 
static_cast<NCS_IPC_PRIORITY>(MDS_SEND_PRIORITY_HIGH));
+       uint32_t rc = ncs_ipc_send(&avd_cb->avd_mbx, (NCS_IPC_MSG *)evt, 
static_cast<NCS_IPC_PRIORITY>(MDS_SEND_PRIORITY_HIGH));
        osafassert(rc == NCSCC_RC_SUCCESS);
        return rc;
 }
@@ -1130,9 +1123,8 @@ uint32_t amfd_switch_qsd_stdby(AVD_CL_CB
        }
 
        /* Walk through all the nodes and  free PG records. */
-       for (std::map<uint32_t, AVD_AVND *>::const_iterator it = 
node_id_db->begin();
-                       it != node_id_db->end(); it++) {
-               AVD_AVND *avnd = it->second;
+       for (const auto& value : *node_id_db) {
+               AVD_AVND *avnd = value.second;
                avd_pg_node_csi_del_all(cb, avnd);
        }
 
@@ -1281,9 +1273,8 @@ uint32_t amfd_switch_stdby_actv(AVD_CL_C
 
        avd_act_on_sis_in_tol_timer_state();
        /* Screen through all the SG's in the sg database and update si's 
si_dep_state */
-       for (std::map<std::string, AVD_SG*>::const_iterator it = sg_db->begin();
-                       it != sg_db->end(); it++) {
-               AVD_SG *sg = it->second;
+       for (const auto& value : *sg_db) {
+               AVD_SG *sg = value.second;
                if (sg->sg_fsm_state == AVD_SG_FSM_STABLE) {
                        avd_sidep_update_si_dep_state_for_all_sis(sg);
                        avd_sidep_sg_take_action(sg);
diff --git a/src/amf/amfd/sg.cc b/src/amf/amfd/sg.cc
--- a/src/amf/amfd/sg.cc
+++ b/src/amf/amfd/sg.cc
@@ -39,10 +39,8 @@ static void avd_verify_equal_ranked_su(A
 
 void avd_sg_db_add(AVD_SG *sg)
 {
-       unsigned int rc;
-
        if (sg_db->find(sg->name) == nullptr) {
-               rc = sg_db->insert(sg->name,sg);
+               unsigned int rc = sg_db->insert(sg->name,sg);
                osafassert(rc == NCSCC_RC_SUCCESS);
        }
 }
@@ -262,7 +260,6 @@ static int is_config_valid(const std::st
 
 static AVD_SG *sg_create(const std::string& sg_name, const SaImmAttrValuesT_2 
**attributes)
 {
-       int rc = -1;
        AVD_SG *sg;
        AVD_AMF_SG_TYPE *sgt;
        SaAisErrorT error;
@@ -389,13 +386,6 @@ static AVD_SG *sg_create(const std::stri
        /*  TODO use value in type instead? */
        sg->sg_redundancy_model = sgt->saAmfSgtRedundancyModel;
 
-       rc = 0;
-
-       if (rc != 0) {
-               avd_sg_delete(sg);
-               sg = nullptr;
-       }
-
        TRACE_LEAVE();
        return sg;
 }
@@ -637,7 +627,7 @@ static SaAisErrorT ccb_completed_modify_
                                if (value_is_deleted == true)
                                        continue;
                                uint32_t sg_autorepair = *((SaUint32T 
*)attribute->attrValues[0]);
-                               if (sg_autorepair > true ) {
+                               if (sg_autorepair > 1) {
                                        report_ccb_validation_error(opdata,
                                                "Invalid saAmfSGAutoRepair 
SG:'%s'", sg->name.c_str());
                                        rc = SA_AIS_ERR_BAD_OPERATION;
@@ -926,7 +916,6 @@ static void ccb_apply_modify_hdlr(CcbUti
                                else
                                        sg->saAmfSGAutoAdjust = 
static_cast<SaBoolT>(*((SaUint32T *)value));
                                TRACE("Modified saAmfSGAutoAdjust is '%u'", 
sg->saAmfSGAutoAdjust);
-                       } else if (!strcmp(attribute->attrName, 
"saAmfSGAutoAdjust")) {
                        } else if (!strcmp(attribute->attrName, 
"saAmfSGNumPrefActiveSUs")) {
                                if (value_is_deleted)
                                        sg->saAmfSGNumPrefActiveSUs = 1;
@@ -1142,11 +1131,10 @@ static void ccb_apply_modify_hdlr(CcbUti
 uint32_t AVD_SG::term_su_list_in_reverse()
 {
        uint32_t rc = NCSCC_RC_SUCCESS;
-       AVD_SU *su;
 
        TRACE_ENTER2("sg: %s", this->name.c_str());
        for (auto iter = list_of_su.rbegin(); iter != list_of_su.rend(); 
++iter) {
-               su = *iter;
+               AVD_SU *su = *iter;
                TRACE("terminate su:'%s'", su ? su->name.c_str() : nullptr);
 
                if ((su->saAmfSUPreInstantiable == true) &&
@@ -2199,9 +2187,8 @@ done:
 bool avd_sg_validate_headless_cached_rta(AVD_CL_CB *cb) {
        TRACE_ENTER();
        bool valid = true;
-       for (std::map<std::string, AVD_SG*>::const_iterator it = sg_db->begin();
-                       it != sg_db->end(); it++) {
-               AVD_SG *i_sg = it->second;
+       for (const auto& value : *sg_db) {
+               AVD_SG *i_sg = value.second;
                if (i_sg->sg_ncs_spec == true) {
                        continue;
                }
diff --git a/src/amf/amfd/sg_2n_fsm.cc b/src/amf/amfd/sg_2n_fsm.cc
--- a/src/amf/amfd/sg_2n_fsm.cc
+++ b/src/amf/amfd/sg_2n_fsm.cc
@@ -2786,8 +2786,7 @@ uint32_t SG_2N::realign(AVD_CL_CB *cb, A
 }
 
 void SG_2N::node_fail_su_oper(AVD_SU *su) {
-       AVD_SU_SI_REL *a_susi, *s_susi, *s_susi_temp;
-       AVD_SU *o_su;
+       AVD_SU_SI_REL *s_susi, *s_susi_temp;
        AVD_AVND *su_node_ptr = nullptr;
        AVD_CL_CB *cb = avd_cb;
 
@@ -2796,7 +2795,7 @@ void SG_2N::node_fail_su_oper(AVD_SU *su
 
        if (su_oper_list_front() == su) {
                /* the SU is same as the SU in the list */
-               a_susi = avd_sg_2n_act_susi(cb, su->sg_of_su, &s_susi);
+               AVD_SU_SI_REL *a_susi = avd_sg_2n_act_susi(cb, su->sg_of_su, 
&s_susi);
                /* If node fail happens while quiesced or qioescing role 
modification is in progress
                 * there is possibility that all the susi wont be in quiesced 
or quiescing state
                 * so when checking whether SU is in quiesced or quiescing 
assignment processing
@@ -2835,6 +2834,7 @@ void SG_2N::node_fail_su_oper(AVD_SU *su
                                avd_sg_su_oper_list_del(cb, su, false);
                                su->delete_all_susis();
                                su->sg_of_su->set_fsm_state(AVD_SG_FSM_STABLE);
+                               AVD_SU *o_su;
                                if ((o_su = avd_sg_2n_su_chose_asgn(cb, 
su->sg_of_su)) != nullptr) {
                                        /* add the SU to the operation list and 
change the SG FSM to SG realign. */
                                        avd_sg_su_oper_list_add(cb, o_su, 
false);
@@ -3965,8 +3965,8 @@ void SG_2N::ng_admin(AVD_SU *su, AVD_AMF
                avd_sg_app_su_inst_func(avd_cb, su->sg_of_su);
                return;
        }
-       AVD_SU_SI_REL *s_susi = nullptr, *a_susi = nullptr;
-       a_susi = avd_sg_2n_act_susi(avd_cb, sg, &s_susi);
+       AVD_SU_SI_REL *s_susi = nullptr;
+       AVD_SU_SI_REL *a_susi = avd_sg_2n_act_susi(avd_cb, sg, &s_susi);
 
        if ((sg->is_sg_assigned_only_in_ng(ng) == true) && (s_susi != nullptr)) 
{
                AVD_AVND *actv_node = a_susi->su->su_on_node;
diff --git a/src/amf/amfd/sg_nored_fsm.cc b/src/amf/amfd/sg_nored_fsm.cc
--- a/src/amf/amfd/sg_nored_fsm.cc
+++ b/src/amf/amfd/sg_nored_fsm.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -108,7 +109,6 @@ uint32_t SG_NORED::si_assign(AVD_CL_CB *
 }
 
 uint32_t SG_NORED::su_fault(AVD_CL_CB *cb, AVD_SU *su) {
-       bool flag;
        AVD_AVND *su_node_ptr = nullptr;
 
        TRACE_ENTER2("%u", su->sg_of_su->sg_fsm_state);
@@ -145,7 +145,7 @@ uint32_t SG_NORED::su_fault(AVD_CL_CB *c
                        su_oper_list_add(su);
                        m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                } else {        /* if (su->list_of_susi->si == 
su->sg_of_su->admin_si) */
-
+                       bool flag;
                        m_AVD_CHK_OPLIST(su, flag);
                        if (flag == true) {
                                /* The SU is same as the SU in the list. If the 
HA state assignment
diff --git a/src/amf/amfd/sg_npm_fsm.cc b/src/amf/amfd/sg_npm_fsm.cc
--- a/src/amf/amfd/sg_npm_fsm.cc
+++ b/src/amf/amfd/sg_npm_fsm.cc
@@ -1068,11 +1068,11 @@ uint32_t SG_NPM::su_fault_su_oper(AVD_CL
 uint32_t SG_NPM::su_fault_si_oper(AVD_CL_CB *cb, AVD_SU *su)
 {
        AVD_SU_SI_REL *l_susi;
-       bool l_flag;
        AVD_SU *o_su;
 
        if ((l_susi = avd_su_susi_find(cb, su, su->sg_of_su->admin_si->name))
            == AVD_SU_SI_REL_NULL) {
+               bool l_flag;
                /* SI doesn't have any assignment with the SU */
                m_AVD_CHK_OPLIST(su, l_flag);
                if (l_flag == true) {
@@ -1260,7 +1260,6 @@ uint32_t SG_NPM::su_fault_si_oper(AVD_CL
 
 uint32_t SG_NPM::su_fault_sg_relgn(AVD_CL_CB *cb, AVD_SU *su)
 {
-       bool l_flag = false;
        AVD_AVND *su_node_ptr = nullptr;
 
        if (su->sg_of_su->admin_si != AVD_SI_NULL) {
@@ -1290,7 +1289,7 @@ uint32_t SG_NPM::su_fault_sg_relgn(AVD_C
                                m_AVSV_SEND_CKPT_UPDT_ASYNC_RMV(cb, 
su->sg_of_su, AVSV_CKPT_AVD_SI_TRANS);
                        }
                }
-
+               bool l_flag = false;
                m_AVD_CHK_OPLIST(su, l_flag);
                if (l_flag == true) {
                        /* If the fault happened while role failover is under 
progress,then for all the dependent SI's
@@ -1388,7 +1387,6 @@ uint32_t SG_NPM::su_fault_sg_relgn(AVD_C
 }
 
 uint32_t SG_NPM::su_fault(AVD_CL_CB *cb, AVD_SU *su) {
-       AVD_SU_SI_REL *a_susi;
 
        TRACE_ENTER2("%u", su->sg_of_su->sg_fsm_state);
 
@@ -1454,6 +1452,7 @@ uint32_t SG_NPM::su_fault(AVD_CL_CB *cb,
                         * SU and add it to the SU operlist. 
                         */
                        if (su->list_of_susi->state == SA_AMF_HA_QUIESCING) {
+                               AVD_SU_SI_REL *a_susi;
                                a_susi = avd_sg_npm_su_othr(cb, su);
                                if (avd_sg_su_si_mod_snd(cb, su, 
SA_AMF_HA_QUIESCED) == NCSCC_RC_FAILURE) {
                                        LOG_ER("%s:%u: %s (%zu)", __FILE__, 
__LINE__, su->name.c_str(), su->name.length());
@@ -1554,7 +1553,6 @@ uint32_t SG_NPM::susi_sucss_sg_reln(AVD_
                                           AVSV_SUSI_ACT act, SaAmfHAStateT 
state)
 {
        AVD_SU_SI_REL *i_susi, *o_susi;
-       bool flag, fover_progress = false;
        AVD_AVND *su_node_ptr = nullptr;
 
        TRACE_ENTER();
@@ -1563,7 +1561,7 @@ uint32_t SG_NPM::susi_sucss_sg_reln(AVD_
                /* assign all */
                if ((act == AVSV_SUSI_ACT_MOD) && (state == 
SA_AMF_HA_QUIESCED)) {
                        /* quiesced all */
-
+                       bool flag;
                        if (su->sg_of_su->admin_si != AVD_SI_NULL) {
                                /* SI in admin pointer */
                                if ((su->sg_of_su->admin_si->si_switch == 
AVSV_SI_TOGGLE_SWITCH)
@@ -1702,6 +1700,7 @@ uint32_t SG_NPM::susi_sucss_sg_reln(AVD_
 
                } /* if ((act == AVSV_SUSI_ACT_MOD) && (state == 
SA_AMF_HA_QUIESCED)) */
                else if (act == AVSV_SUSI_ACT_DEL) {
+                       bool fover_progress = false;
                        /* remove all */
                        if (su->list_of_susi->state == SA_AMF_HA_QUIESCED) {
                                o_susi = avd_sg_npm_su_othr(cb, su);
@@ -2222,15 +2221,12 @@ static void avd_sg_npm_screening_for_si_
  */
 static void avd_sg_npm_si_transfer_for_redistr(AVD_SG *avd_sg)
 {
-        AVD_SU_SI_REL *susi = nullptr;
-
        TRACE_ENTER2("SG name:%s SI name:%s", 
avd_sg->name.c_str(),avd_sg->si_tobe_redistributed->name.c_str());
-
        /* checkpoint the SI transfer parameters with STANDBY*/
        m_AVSV_SEND_CKPT_UPDT_ASYNC_ADD(avd_cb, avd_sg, AVSV_CKPT_AVD_SI_TRANS);
 
         /* Find the su_si corresponding to max_assign_su & 
si_tobe_redistributed */
-        susi = avd_su_susi_find(avd_cb, avd_sg->max_assigned_su, 
avd_sg->si_tobe_redistributed->name);
+        AVD_SU_SI_REL *susi = avd_su_susi_find(avd_cb, 
avd_sg->max_assigned_su, avd_sg->si_tobe_redistributed->name);
         if( susi == AVD_SU_SI_REL_NULL ) {
                 /* No assignments for this SU corresponding to the SI to be 
swapped*/
                 LOG_ER("Failed to find the susi %s:%u: SU:%s SI:%s", 
__FILE__,__LINE__,
@@ -2457,7 +2453,6 @@ uint32_t SG_NPM::susi_success_su_oper(AV
        AVD_SU_SI_REL *i_susi;
        AVD_SU_SI_REL *o_susi;
        AVD_SU_SI_REL *tmp_susi;
-       bool susi_assgn_failed = false;
        
        AVD_AVND *su_node_ptr = nullptr;
 
@@ -2473,6 +2468,7 @@ uint32_t SG_NPM::susi_success_su_oper(AV
                                /* SI Transfer flow, got response for 
max_assigned_su quiesced opr, if min_assigned_su
                                   is in in_service send Active assignment to 
it else revert back Active assignment to
                                   max_assigned_su */
+                               bool susi_assgn_failed = false;
                                if 
(su->sg_of_su->min_assigned_su->saAmfSuReadinessState == 
                                                                
SA_AMF_READINESS_IN_SERVICE) {
                                        TRACE("Assigning active for SI:%s to 
SU:%s",
@@ -2828,7 +2824,6 @@ static uint32_t avd_sg_npm_susi_sucss_si
 
 uint32_t SG_NPM::susi_success(AVD_CL_CB *cb, AVD_SU *su, AVD_SU_SI_REL *susi,
                AVSV_SUSI_ACT act, SaAmfHAStateT state) {
-       AVD_SU_SI_REL *o_susi;
 
        TRACE_ENTER2("%u", su->sg_of_su->sg_fsm_state);
 
@@ -2879,7 +2874,7 @@ uint32_t SG_NPM::susi_success(AVD_CL_CB 
                                 * standby and send a D2N-INFO_SU_SI_ASSIGN 
with remove all for 
                                 * that SU and add it to the SU oper list.
                                 */
-                               o_susi = avd_sg_npm_su_othr(cb, su);
+                               AVD_SU_SI_REL *o_susi = avd_sg_npm_su_othr(cb, 
su);
                                if ((o_susi != AVD_SU_SI_REL_NULL) && 
(o_susi->fsm != AVD_SU_SI_STATE_UNASGN)) {
                                        avd_sg_su_si_del_snd(cb, o_susi->su);
                                        avd_sg_su_oper_list_add(cb, o_susi->su, 
false);
@@ -3783,7 +3778,7 @@ void SG_NPM::node_fail_su_oper(AVD_CL_CB
 
 void SG_NPM::node_fail_si_oper(AVD_CL_CB *cb, AVD_SU *su)
 {
-       AVD_SU_SI_REL *l_susi, *o_susi, *ot_susi;
+       AVD_SU_SI_REL *l_susi, *o_susi;
        
        osafassert(this == su->sg_of_su);
 
@@ -3804,7 +3799,7 @@ void SG_NPM::node_fail_si_oper(AVD_CL_CB
                if (su->list_of_susi->state == SA_AMF_HA_ACTIVE) {
                        /* The SU is active SU, identify the inservice standby 
SU for this SU.
                         */
-
+                       AVD_SU_SI_REL *ot_susi;
                        ot_susi = avd_sg_npm_su_othr(cb, su);
 
                        if ((ot_susi != AVD_SU_SI_REL_NULL) &&
@@ -4061,8 +4056,6 @@ void SG_NPM::node_fail_si_oper(AVD_CL_CB
 }
 
 void SG_NPM::node_fail(AVD_CL_CB *cb, AVD_SU *su) {
-       AVD_SU *o_su;
-       AVD_SU_SI_REL *o_susi;
 
        TRACE_ENTER2("%u", su->sg_of_su->sg_fsm_state);
 
@@ -4106,6 +4099,7 @@ void SG_NPM::node_fail(AVD_CL_CB *cb, AV
                         */
 
                        su->delete_all_susis();
+                       AVD_SU *o_su;
                        if ((o_su = avd_sg_npm_su_chose_asgn(cb, su->sg_of_su)) 
!= nullptr) {
                                /* add the SU to the operation list and change 
the SG FSM to SG realign. */
                                avd_sg_su_oper_list_add(cb, o_su, false);
@@ -4133,7 +4127,7 @@ void SG_NPM::node_fail(AVD_CL_CB *cb, AV
        case AVD_SG_FSM_SG_ADMIN:
                if (su->list_of_susi->state == SA_AMF_HA_QUIESCING) {
                        /* The SU is quiescing.  */
-                       o_susi = avd_sg_npm_su_othr(cb, su);
+                       AVD_SU_SI_REL *o_susi = avd_sg_npm_su_othr(cb, su);
                        if (o_susi != AVD_SU_SI_REL_NULL) {
                                /* if the other SU w.r.t to SIs of this SU is 
not unassigning, 
                                 * send a D2N-INFO_SU_SI_ASSIGN with a remove 
all for that SU if it
@@ -4186,7 +4180,6 @@ void SG_NPM::node_fail(AVD_CL_CB *cb, AV
 }
 
 uint32_t SG_NPM::su_admin_down(AVD_CL_CB *cb, AVD_SU *su, AVD_AVND *avnd) {
-       uint32_t rc;
 
        TRACE_ENTER2("%u", su->sg_of_su->sg_fsm_state);
 
@@ -4197,7 +4190,7 @@ uint32_t SG_NPM::su_admin_down(AVD_CL_CB
        switch (su->sg_of_su->sg_fsm_state) {
        case AVD_SG_FSM_STABLE:
                if (su->list_of_susi->state == SA_AMF_HA_ACTIVE) {
-                       rc = NCSCC_RC_FAILURE;
+                       uint32_t rc = NCSCC_RC_FAILURE;
 
                        /* this is a active SU. */
                        if ((su->saAmfSUAdminState == SA_AMF_ADMIN_LOCKED) ||
diff --git a/src/amf/amfd/sg_nway_fsm.cc b/src/amf/amfd/sg_nway_fsm.cc
--- a/src/amf/amfd/sg_nway_fsm.cc
+++ b/src/amf/amfd/sg_nway_fsm.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -144,8 +145,7 @@ uint32_t avd_sg_nway_siswitch_func(AVD_C
             curr_susi && (curr_susi->state != SA_AMF_HA_ACTIVE); curr_susi = 
curr_susi->si_next) ;
 
        if (!curr_susi) {
-               LOG_ER("%s:%u: %s (%zu)", __FILE__, __LINE__, 
curr_susi->su->name.c_str(), curr_susi->su->name.length());
-               LOG_ER("%s:%u: %s (%zu)", __FILE__, __LINE__, 
curr_susi->si->name.c_str(), curr_susi->si->name.length());
+               LOG_ER("No sisu active for '%s'", si->name.c_str());
                rc = NCSCC_RC_FAILURE;
                goto done;
        }
@@ -347,12 +347,11 @@ uint32_t SG_NWAY::susi_failed(AVD_CL_CB 
                                }
                        }
                        else if ((susi->state == SA_AMF_HA_ACTIVE) && (susi->su 
== sg->min_assigned_su)) {
-                               AVD_SU_SI_REL *t_susi = nullptr;
                                /* if the si is assigned active on min su in SI 
transfer */
                                /* delete the quiesced assignment on the max su 
 and let su failure
                                 * handling take care of assigning the standby 
to active */
                                /* find the susi with max assigned su which 
should be by now quiesced */
-                               t_susi = avd_su_susi_find(avd_cb, 
susi->si->sg_of_si->max_assigned_su, susi->si->name);
+                               AVD_SU_SI_REL *t_susi = 
avd_su_susi_find(avd_cb, susi->si->sg_of_si->max_assigned_su, susi->si->name);
                                osafassert(t_susi->state == SA_AMF_HA_QUIESCED);
 
                                if (avd_susi_del_send(t_susi) == 
NCSCC_RC_SUCCESS) {
@@ -637,8 +636,7 @@ uint32_t SG_NWAY::si_admin_down(AVD_CL_C
                             curr_susi && (curr_susi->state != 
SA_AMF_HA_ACTIVE); curr_susi = curr_susi->si_next) ;
 
                        if (!curr_susi) {
-                               LOG_ER("%s:%u: %s (%zu)", __FILE__, __LINE__, 
curr_susi->su->name.c_str(), curr_susi->su->name.length());
-                               LOG_ER("%s:%u: %s (%zu)", __FILE__, __LINE__, 
curr_susi->si->name.c_str(), curr_susi->si->name.length());
+                               LOG_ER("No sisu active for '%s'", 
si->name.c_str());
                                rc = NCSCC_RC_FAILURE;
                                goto done;
                        }
@@ -663,8 +661,7 @@ uint32_t SG_NWAY::si_admin_down(AVD_CL_C
                             curr_susi && (curr_susi->state != 
SA_AMF_HA_QUIESCING); curr_susi = curr_susi->si_next) ;
 
                        if (!curr_susi) {
-                               LOG_ER("%s:%u: %s (%zu)", __FILE__, __LINE__, 
curr_susi->su->name.c_str(), curr_susi->su->name.length());
-                               LOG_ER("%s:%u: %s (%zu)", __FILE__, __LINE__, 
curr_susi->si->name.c_str(), curr_susi->si->name.length());
+                               LOG_ER("No sisu active for '%s'", 
si->name.c_str());
                                rc = NCSCC_RC_FAILURE;
                                goto done;
                        }
@@ -788,8 +785,6 @@ done:
  */
 static void avd_sg_nway_swap_si_redistr(AVD_SG *sg)
 {
-       AVD_SU_SI_REL *susi = nullptr;
-
        osafassert(sg->si_tobe_redistributed != nullptr);
        osafassert(sg->max_assigned_su != nullptr);
        osafassert(sg->min_assigned_su != nullptr);
@@ -800,7 +795,7 @@ static void avd_sg_nway_swap_si_redistr(
        m_AVSV_SEND_CKPT_UPDT_ASYNC_ADD(avd_cb, sg, AVSV_CKPT_AVD_SI_TRANS);
 
        /* get the susi that is to be transferred */
-       susi = avd_su_susi_find(avd_cb, sg->max_assigned_su, 
sg->si_tobe_redistributed->name); 
+       AVD_SU_SI_REL *susi = avd_su_susi_find(avd_cb, sg->max_assigned_su, 
sg->si_tobe_redistributed->name); 
        osafassert(susi != nullptr);
 
 
@@ -1136,7 +1131,7 @@ AVD_SU *avd_sg_nway_get_su_std_equal(AVD
        }
        /* no more SIs can be assigned */
        if (l_flag == false)
-               curr_si = nullptr;
+               free(curr_si); 
 
        return pref_su;
 }
@@ -1252,9 +1247,8 @@ uint32_t avd_sg_nway_si_assign(AVD_CL_CB
                        /* The SI has sirankedsu configured and auto adjust 
enabled, make
                         *sure the highest ranked SU has the active assignment
                         */
-                       AVD_SU *preferred_su = nullptr;
                        AVD_SU *assigned_su = nullptr;
-                       preferred_su  = 
avd_sg_nway_si_find_highest_sirankedsu(cb, curr_si, &assigned_su);
+                       AVD_SU *preferred_su  = 
avd_sg_nway_si_find_highest_sirankedsu(cb, curr_si, &assigned_su);
                        if ((preferred_su && assigned_su) && preferred_su != 
assigned_su) {
                                TRACE("Move SI '%s' to su 
'%s'",curr_si->name.c_str(), preferred_su->name.c_str());
                                sg->si_tobe_redistributed = curr_si;
@@ -1281,9 +1275,8 @@ uint32_t avd_sg_nway_si_assign(AVD_CL_CB
 
                /* we've an unassigned si.. find su for active assignment */
                /* first, scan based on su rank for this si */
-               for (std::map<std::pair<std::string, uint32_t>, 
AVD_SUS_PER_SI_RANK*>::const_iterator
-                               it = sirankedsu_db->begin(); it != 
sirankedsu_db->end(); it++) {
-                       AVD_SUS_PER_SI_RANK *su_rank_rec = it->second;
+               for (const auto& value : *sirankedsu_db) {
+                       AVD_SUS_PER_SI_RANK *su_rank_rec = value.second;
                        {
                                if 
(su_rank_rec->indx.si_name.compare(curr_si->name) != 0) {
                                        continue;
@@ -1406,9 +1399,8 @@ uint32_t avd_sg_nway_si_assign(AVD_CL_CB
                /* we've a not-so-fully-assigned si.. find sus for standby 
assignment */
 
                /* first, scan based on su rank for this si */
-               for (std::map<std::pair<std::string, uint32_t>, 
AVD_SUS_PER_SI_RANK*>::const_iterator
-                               it = sirankedsu_db->begin(); it != 
sirankedsu_db->end(); it++) {
-                       AVD_SUS_PER_SI_RANK *su_rank_rec = it->second;
+               for (const auto& value : *sirankedsu_db) {
+                       AVD_SUS_PER_SI_RANK *su_rank_rec = value.second;
                        {
                                if 
(su_rank_rec->indx.si_name.compare(curr_si->name) != 0)
                                        continue;
@@ -2782,8 +2774,7 @@ uint32_t avd_sg_nway_susi_succ_si_oper(A
 
                        /* check if the min SU is still in-service */
                        if 
(susi->si->sg_of_si->min_assigned_su->saAmfSuReadinessState == 
SA_AMF_READINESS_IN_SERVICE) {
-                               AVD_SU_SI_REL *t_susi = nullptr;
-                               t_susi = avd_su_susi_find(avd_cb, 
susi->si->sg_of_si->min_assigned_su, susi->si->name);
+                               AVD_SU_SI_REL *t_susi = 
avd_su_susi_find(avd_cb, susi->si->sg_of_si->min_assigned_su, susi->si->name);
                                if (t_susi == nullptr) {
                                        /* initiate new active assignment for 
this SI */
                                        rc = avd_new_assgn_susi(avd_cb, 
susi->si->sg_of_si->min_assigned_su,
@@ -2861,7 +2852,6 @@ uint32_t avd_sg_nway_susi_succ_si_oper(A
                                LOG_ER("%s:%u: %s (%zu)", __FILE__, __LINE__, 
susi->si->name.c_str(), susi->si->name.length());
                        }
                } else if (susi->si->sg_of_si->si_tobe_redistributed == 
susi->si) { 
-                       AVD_SU_SI_REL *t_susi = nullptr;
                        /* si transfer is in progress for equal distribution 
                         * now get the susi between si tobe redistributed and 
max SU 
                         * should be quiesced state, now send a remove for that 
susi
@@ -2869,7 +2859,7 @@ uint32_t avd_sg_nway_susi_succ_si_oper(A
                        osafassert(susi->su == 
susi->si->sg_of_si->min_assigned_su);
 
                        /* find the susi with max assigned su which should be 
by now quiesced */
-                       t_susi = avd_su_susi_find(avd_cb, 
susi->si->sg_of_si->max_assigned_su, susi->si->name);
+                       AVD_SU_SI_REL *t_susi = avd_su_susi_find(avd_cb, 
susi->si->sg_of_si->max_assigned_su, susi->si->name);
                        osafassert(t_susi->state == SA_AMF_HA_QUIESCED);
 
                        rc = avd_susi_del_send(t_susi);
@@ -3476,7 +3466,6 @@ void avd_sg_nway_node_fail_sg_admin(AVD_
 void avd_sg_nway_node_fail_sg_realign(AVD_CL_CB *cb, AVD_SU *su)
 {
        SG_NWAY *sg = static_cast<SG_NWAY*>(su->sg_of_su);
-       bool is_su_present;
        AVD_AVND *su_node_ptr = nullptr;
 
        TRACE_ENTER2("SU '%s'",su->name.c_str());
@@ -3485,6 +3474,7 @@ void avd_sg_nway_node_fail_sg_realign(AV
                /* process as in si-oper state */
                sg->node_fail_si_oper(su);
        } else {
+               bool is_su_present;
                /* => si operation isnt in progress */
 
                /* check if su is present in the su-oper list */
diff --git a/src/amf/amfd/sg_nwayact_fsm.cc b/src/amf/amfd/sg_nwayact_fsm.cc
--- a/src/amf/amfd/sg_nwayact_fsm.cc
+++ b/src/amf/amfd/sg_nwayact_fsm.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+* Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -88,9 +89,8 @@ AVD_SU *avd_sg_nacvred_su_chose_asgn(AVD
                /* identify a in-service SU which is not assigned to this SI 
and can
                 * take more assignments so that the SI can be assigned. 
                 */
-               for (std::map<std::pair<std::string, uint32_t>, 
AVD_SUS_PER_SI_RANK*>::const_iterator
-                               it = sirankedsu_db->begin(); it != 
sirankedsu_db->end(); it++) {
-                       AVD_SUS_PER_SI_RANK *su_rank_rec = it->second;
+               for (const auto& value : *sirankedsu_db) {
+                       AVD_SUS_PER_SI_RANK *su_rank_rec = value.second;
                        {
                                if 
(su_rank_rec->indx.si_name.compare(i_si->name) != 0)
                                        continue;
diff --git a/src/amf/amfd/sgproc.cc b/src/amf/amfd/sgproc.cc
--- a/src/amf/amfd/sgproc.cc
+++ b/src/amf/amfd/sgproc.cc
@@ -645,10 +645,9 @@ done:
 static void perform_cluster_reset_recovery() {
   TRACE_ENTER();
   uint32_t rc = NCSCC_RC_SUCCESS;
-  AVD_AVND *node = nullptr;
-  for (std::map<uint32_t, AVD_AVND *>::const_iterator it = node_id_db->begin();
-    it != node_id_db->end(); it++) {
-    node = it->second;
+  AVD_AVND *node;
+  for (const auto& value : *node_id_db) {
+         node = value.second;
     //First reboot payloads.
     if ((node->node_info.nodeId == avd_cb->node_id_avd) ||
                    (node->node_info.nodeId == avd_cb->node_id_avd_other))
@@ -660,7 +659,6 @@ static void perform_cluster_reset_recove
   }
 
   //Send for standby.
-  node = nullptr;
   node = avd_node_find_nodeid(avd_cb->node_id_avd_other);
   if (node != nullptr) {
     rc = avd_send_reboot_msg_directly(node);
@@ -669,7 +667,6 @@ static void perform_cluster_reset_recove
   }
 
   //Send for self.
-  node = nullptr;
   node = avd_node_find_nodeid(avd_cb->node_id_avd);
   osafassert(node != nullptr);
   rc = avd_send_reboot_msg_directly(node);
@@ -1497,9 +1494,8 @@ void avd_su_si_assign_evh(AVD_CL_CB *cb,
                                        /* Since a NCS SU has been assigned 
trigger the node FSM. */
                                        /* For (ncs_spec == SA_TRUE), su will 
not be external, so su
                                                   will have node attached. */
-                                       for (AmfDb<uint32_t, 
AVD_AVND>::const_iterator it = node_id_db->begin();
-                                               it != node_id_db->end(); it++) {
-                                               AVD_AVND *node = (*it).second;
+                                       for (const auto& value : *node_id_db) {
+                                               AVD_AVND *node = value.second;
 
                                                if (node->node_state == 
AVD_AVND_STATE_NCS_INIT && node->adest != 0) {
                                                        
avd_nd_ncs_su_assigned(cb, node);
@@ -1792,8 +1788,7 @@ AVD_SU* su_to_instantiate(AVD_SG *sg)
  */
 AVD_SU* su_to_terminate(AVD_SG *sg)
 {
-       AmfDb<std::string, AVD_SU> *su_rank = nullptr;
-       su_rank = new  AmfDb<std::string, AVD_SU>;
+       AmfDb<std::string, AVD_SU> *su_rank = new  AmfDb<std::string, AVD_SU>;
        for (const auto& i_su : sg->list_of_su) {
                TRACE("In Seq %s, %u", i_su->name.c_str(), i_su->saAmfSURank);
                su_rank->insert(i_su->name, i_su);
@@ -1868,7 +1863,6 @@ uint32_t avd_sg_app_su_inst_func(AVD_CL_
 {
        uint32_t num_insvc_su = 0;
        uint32_t num_asgd_su = 0;
-       uint32_t num_su = 0;
        uint32_t num_try_insvc_su = 0;
        AVD_AVND *su_node_ptr = nullptr;
 
@@ -1884,7 +1878,6 @@ uint32_t avd_sg_app_su_inst_func(AVD_CL_
                TRACE("term_state: %u", i_su->term_state);
 
                su_node_ptr = i_su->get_node_ptr();
-               num_su++;
                /* Check if the SU is inservice */
                if (i_su->saAmfSuReadinessState == SA_AMF_READINESS_IN_SERVICE) 
{
                        num_insvc_su++;
diff --git a/src/amf/amfd/sgtype.cc b/src/amf/amfd/sgtype.cc
--- a/src/amf/amfd/sgtype.cc
+++ b/src/amf/amfd/sgtype.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -83,7 +84,6 @@ static int is_config_valid(const std::st
        std::string::size_type pos;
        SaUint32T value;
        SaBoolT abool;
-       AVD_SUTYPE *sut;
        const SaImmAttrValuesT_2 *attr;
 
        if ((pos = dn.find(',')) == std::string::npos) {
@@ -107,15 +107,16 @@ static int is_config_valid(const std::st
        }
 
        while ((attr = attributes[i++]) != nullptr)
-               if (!strcmp(attr->attrName, "saAmfSgtValidSuTypes"))
+               if (!strcmp(attr->attrName, "saAmfSgtValidSuTypes")) {
+                       osafassert(attr->attrValuesNumber > 0);
                        break;
+               }
 
        osafassert(attr);
-       osafassert(attr->attrValuesNumber > 0);
 
        for (j = 0; j < attr->attrValuesNumber; j++) {
                SaNameT *name = (SaNameT *)attr->attrValues[j];
-               sut = sutype_db->find(Amf::to_string(name));
+               AVD_SUTYPE *sut = sutype_db->find(Amf::to_string(name));
                if (sut == nullptr) {
                        if (opdata == nullptr) {
                                report_ccb_validation_error(opdata, "'%s' does 
not exist in model", osaf_extended_name_borrow(name));
@@ -179,59 +180,60 @@ static AVD_AMF_SG_TYPE *sgtype_create(co
        error = 
immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtRedundancyModel"), 
attributes, 0, &sgt->saAmfSgtRedundancyModel);
        osafassert(error == SA_AIS_OK);
 
-       while ((attr = attributes[i++]) != nullptr)
-               if (!strcmp(attr->attrName, "saAmfSgtValidSuTypes"))
+       while ((attr = attributes[i++]) != nullptr) {
+               if (!strcmp(attr->attrName, "saAmfSgtValidSuTypes")) {
+                       osafassert(attr->attrValuesNumber > 0);
+
+                       sgt->number_su_type = attr->attrValuesNumber;
+                       for (j = 0; j < attr->attrValuesNumber; j++) {
+                               sgt->saAmfSGtValidSuTypes.push_back(
+                                               
Amf::to_string(reinterpret_cast<SaNameT*>(attr->attrValues[j]))
+                                               );
+                       }
+
+                       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefAutoRepair"), 
attributes, 0, &sgt->saAmfSgtDefAutoRepair) != SA_AIS_OK) {
+                               sgt->saAmfSgtDefAutoRepair = SA_TRUE;
+                               sgt->saAmfSgtDefAutoRepair_configured = false;
+                       }
+                       else
+                               sgt->saAmfSgtDefAutoRepair_configured = true;
+
+                       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefAutoAdjust"), 
attributes, 0, &sgt->saAmfSgtDefAutoAdjust) != SA_AIS_OK) {
+                               sgt->saAmfSgtDefAutoAdjust = SA_FALSE;
+                       }
+
+                       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefAutoAdjustProb"), 
attributes, 0, &sgt->saAmfSgtDefAutoAdjustProb) != SA_AIS_OK) {
+                               LOG_ER("Get saAmfSgtDefAutoAdjustProb FAILED 
for '%s'", dn.c_str());
+                               goto done;
+                       }
+
+                       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefCompRestartProb"), 
attributes, 0, &sgt->saAmfSgtDefCompRestartProb) != SA_AIS_OK) {
+                               LOG_ER("Get saAmfSgtDefCompRestartProb FAILED 
for '%s'", dn.c_str());
+                               goto done;
+                       }
+
+                       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefCompRestartMax"), 
attributes, 0, &sgt->saAmfSgtDefCompRestartMax) != SA_AIS_OK) {
+                               LOG_ER("Get saAmfSgtDefCompRestartMax FAILED 
for '%s'", dn.c_str());
+                               goto done;
+                       }
+
+                       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefSuRestartProb"), 
attributes, 0, &sgt->saAmfSgtDefSuRestartProb) != SA_AIS_OK) {
+                               LOG_ER("Get saAmfSgtDefSuRestartProb FAILED for 
'%s'", dn.c_str());
+                               goto done;
+                       }
+
+                       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefSuRestartMax"), 
attributes, 0, &sgt->saAmfSgtDefSuRestartMax) != SA_AIS_OK) {
+                               LOG_ER("Get saAmfSgtDefSuRestartMax FAILED for 
'%s'", dn.c_str());
+                               goto done;
+                       }
+
+                       rc = 0; 
                        break;
+               }
+       }
+       osafassert(attr);
 
-       osafassert(attr);
-       osafassert(attr->attrValuesNumber > 0);
-
-       sgt->number_su_type = attr->attrValuesNumber;
-       for (j = 0; j < attr->attrValuesNumber; j++) {
-               sgt->saAmfSGtValidSuTypes.push_back(
-                       
Amf::to_string(reinterpret_cast<SaNameT*>(attr->attrValues[j]))
-               );
-       }
-
-       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefAutoRepair"), 
attributes, 0, &sgt->saAmfSgtDefAutoRepair) != SA_AIS_OK) {
-               sgt->saAmfSgtDefAutoRepair = SA_TRUE;
-               sgt->saAmfSgtDefAutoRepair_configured = false;
-       }
-       else
-               sgt->saAmfSgtDefAutoRepair_configured = true;
-
-       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefAutoAdjust"), 
attributes, 0, &sgt->saAmfSgtDefAutoAdjust) != SA_AIS_OK) {
-               sgt->saAmfSgtDefAutoAdjust = SA_FALSE;
-       }
-
-       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefAutoAdjustProb"), 
attributes, 0, &sgt->saAmfSgtDefAutoAdjustProb) != SA_AIS_OK) {
-               LOG_ER("Get saAmfSgtDefAutoAdjustProb FAILED for '%s'", 
dn.c_str());
-               goto done;
-       }
-
-       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefCompRestartProb"), 
attributes, 0, &sgt->saAmfSgtDefCompRestartProb) != SA_AIS_OK) {
-               LOG_ER("Get saAmfSgtDefCompRestartProb FAILED for '%s'", 
dn.c_str());
-               goto done;
-       }
-
-       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefCompRestartMax"), 
attributes, 0, &sgt->saAmfSgtDefCompRestartMax) != SA_AIS_OK) {
-               LOG_ER("Get saAmfSgtDefCompRestartMax FAILED for '%s'", 
dn.c_str());
-               goto done;
-       }
-
-       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefSuRestartProb"), 
attributes, 0, &sgt->saAmfSgtDefSuRestartProb) != SA_AIS_OK) {
-               LOG_ER("Get saAmfSgtDefSuRestartProb FAILED for '%s'", 
dn.c_str());
-               goto done;
-       }
-
-       if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSgtDefSuRestartMax"), 
attributes, 0, &sgt->saAmfSgtDefSuRestartMax) != SA_AIS_OK) {
-               LOG_ER("Get saAmfSgtDefSuRestartMax FAILED for '%s'", 
dn.c_str());
-               goto done;
-       }
-
-       rc = 0;
-
- done:
+done:
        if (rc != 0) {
                delete sgt;
                sgt = nullptr;
@@ -249,7 +251,6 @@ static AVD_AMF_SG_TYPE *sgtype_create(co
  */
 SaAisErrorT avd_sgtype_config_get(void)
 {
-       SaAisErrorT error = SA_AIS_ERR_FAILED_OPERATION;
        AVD_AMF_SG_TYPE *sgt;
        SaImmSearchHandleT searchHandle;
        SaImmSearchParametersT_2 searchParam;
@@ -263,7 +264,7 @@ SaAisErrorT avd_sgtype_config_get(void)
        searchParam.searchOneAttr.attrValueType = SA_IMM_ATTR_SASTRINGT;
        searchParam.searchOneAttr.attrValue = &className;
 
-       error = immutil_saImmOmSearchInitialize_2(avd_cb->immOmHandle, nullptr, 
SA_IMM_SUBTREE,
+       SaAisErrorT error = 
immutil_saImmOmSearchInitialize_2(avd_cb->immOmHandle, nullptr, SA_IMM_SUBTREE,
                                                  SA_IMM_SEARCH_ONE_ATTR | 
SA_IMM_SEARCH_GET_ALL_ATTR, &searchParam,
                                                  nullptr, &searchHandle);
 
diff --git a/src/amf/amfd/si.cc b/src/amf/amfd/si.cc
--- a/src/amf/amfd/si.cc
+++ b/src/amf/amfd/si.cc
@@ -162,14 +162,13 @@ void AVD_SI::add_csi_db(AVD_CSI* csi)
 {
        TRACE_ENTER2("%s", csi->name.c_str());
 
-       AVD_CSI *i_csi = nullptr;
        AVD_CSI *prev_csi = nullptr;
        bool found_pos =  false;
 
        osafassert((csi != nullptr) && (csi->si != nullptr));
        osafassert(csi->si == this);
 
-       i_csi = list_of_csi;
+       AVD_CSI *i_csi = list_of_csi;
        while ((i_csi != nullptr) && (csi->rank <= i_csi->rank)) {
                while ((i_csi != nullptr) && (csi->rank == i_csi->rank)) {
                        if (compare_sanamet(csi->name, i_csi->name) < 0) {
@@ -246,14 +245,10 @@ void AVD_SI::remove_rankedsu(const std::
 
 void AVD_SI::remove_csi(AVD_CSI* csi)
 {
-       AVD_CSI *i_csi = nullptr;
+       osafassert(csi->si == this);
+       /* remove CSI from the SI */
        AVD_CSI *prev_csi = nullptr;
-       
-       osafassert(csi->si == this);
-
-       /* remove CSI from the SI */
-       prev_csi = nullptr;
-       i_csi = list_of_csi;
+       AVD_CSI *i_csi = list_of_csi;
 
        // find 'csi'
        while ((i_csi != nullptr) && (i_csi != csi)) {
@@ -322,11 +317,10 @@ AVD_SI *avd_si_new(const std::string& dn
  */
 void AVD_SI::delete_csis()
 {
-       AVD_CSI *csi, *temp;
+       AVD_CSI *csi = list_of_csi; 
 
-       csi = list_of_csi; 
        while (csi != nullptr) {
-               temp = csi;
+               AVD_CSI *temp = csi;
                csi = csi->si_list_of_csi_next;
                avd_csi_delete(temp);
        }
@@ -382,10 +376,9 @@ void AVD_SI::delete_assignments(AVD_CL_C
 void avd_si_db_add(AVD_SI *si)
 {
        TRACE_ENTER2("%s", si->name.c_str());
-       unsigned int rc;
 
        if (si_db->find(si->name) == nullptr) {
-               rc = si_db->insert(si->name, si);
+                unsigned int rc = si_db->insert(si->name, si);
                osafassert(rc == NCSCC_RC_SUCCESS);
        }
        TRACE_LEAVE();
@@ -1107,7 +1100,6 @@ void AVD_SI::adjust_si_assignments(const
                                LOG_ER("SI new assignmemts failed  SI:%s", 
name.c_str());
                        } 
                } else {
-                       no_of_sisus_to_delete = 0;
                        no_of_sisus_to_delete = 
saAmfSINumCurrStandbyAssignments -
                                                mod_pref_assignments; 
 
@@ -1487,7 +1479,7 @@ bool AVD_SI::is_sirank_valid(uint32_t ne
        std::list<AVD_SI*> depsi_list;
        get_dependent_si_list(name, depsi_list);
        for (std::list<AVD_SI*>::const_iterator it = depsi_list.begin();
-                       it != depsi_list.end(); it++) {
+                       it != depsi_list.end(); ++it) {
                if (newSiRank > (*it)->saAmfSIRank) {
                        LOG_ER("Invalid saAmfSIRank, ('%s', rank: %u) is lower 
rank than "
                                        "dependent si ('%s', rank: %u)", 
name.c_str(), newSiRank, 
diff --git a/src/amf/amfd/si_dep.cc b/src/amf/amfd/si_dep.cc
--- a/src/amf/amfd/si_dep.cc
+++ b/src/amf/amfd/si_dep.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -298,20 +299,18 @@ bool sidep_is_si_active(AVD_SI *si)
  **************************************************************************/
 void sidep_spons_list_del(AVD_SI_DEP *si_dep_rec)
 {
-       AVD_SI *dep_si = nullptr;
-       AVD_SPONS_SI_NODE *spons_si_node = nullptr;
        AVD_SPONS_SI_NODE *del_spons_si_node = nullptr;
 
        TRACE_ENTER();
 
        /* Dependent SI should be active, if not return error */
-       dep_si = avd_si_get(si_dep_rec->dep_name);
+       AVD_SI *dep_si = avd_si_get(si_dep_rec->dep_name);
        osafassert(dep_si != nullptr); 
 
        /* SI doesn't depend on any other SIs */
        osafassert (dep_si->spons_si_list != nullptr);
 
-       spons_si_node = dep_si->spons_si_list;
+       AVD_SPONS_SI_NODE *spons_si_node = dep_si->spons_si_list;
 
        /* Check if the sponsor is the first node of the list */
        if (dep_si->spons_si_list->si->name.compare(si_dep_rec->spons_si->name) 
== 0) {
@@ -439,12 +438,11 @@ void sidep_stop_tol_timer(AVD_CL_CB *cb,
  **************************************************************************/
 uint32_t sidep_unassign_dependent(AVD_CL_CB *cb, AVD_SI *si)
 {
-       AVD_SU_SI_REL *susi = nullptr;
        uint32_t rc = NCSCC_RC_FAILURE;
 
        TRACE_ENTER2("'%s'", si->name.c_str());
 
-       susi = si->list_of_sisu;
+       AVD_SU_SI_REL *susi = si->list_of_sisu;
        while (susi != AVD_SU_SI_REL_NULL && susi->fsm != 
AVD_SU_SI_STATE_UNASGN) {
                if ((rc = avd_susi_del_send(susi)) != NCSCC_RC_SUCCESS)
                        goto done;
@@ -529,12 +527,11 @@ done:
  
*****************************************************************************************/
 uint32_t sidep_si_dep_state_evt_send(AVD_CL_CB *cb, AVD_SI *si, AVD_EVT_TYPE 
evt_type)
 {
-       AVD_EVT *evt = nullptr;
        uint32_t rc = NCSCC_RC_FAILURE;
 
        TRACE_ENTER2("si:'%s' evt_type:%u", si->name.c_str(), evt_type);
 
-       evt = new AVD_EVT();
+       AVD_EVT *evt = new AVD_EVT();
 
        /*Update evt struct, using tmr field even though this field is not
         * relevant for this event, but it accommodates the required data.
@@ -595,15 +592,12 @@ void avd_sidep_stdby_amfd_tol_timer_expi
 */
 void avd_sidep_tol_tmr_evh(AVD_CL_CB *cb, AVD_EVT *evt)
 {
-       AVD_SI *si = nullptr;
-       AVD_SI *spons_si = nullptr;
-
        TRACE_ENTER();
 
        osafassert(evt->info.tmr.type == AVD_TMR_SI_DEP_TOL);
 
-       si = avd_si_get(evt->info.tmr.dep_si_name);
-       spons_si = avd_si_get(evt->info.tmr.spons_si_name);
+       AVD_SI *si = avd_si_get(evt->info.tmr.dep_si_name);
+       AVD_SI *spons_si = avd_si_get(evt->info.tmr.spons_si_name);
 
        if ((si == nullptr) || (spons_si == nullptr)) {
                /* Nothing to do here as SI/spons-SI itself lost their 
existence */
@@ -853,11 +847,8 @@ done:
  **************************************************************************/
 void sidep_si_dep_start_unassign(AVD_CL_CB *cb, AVD_EVT *evt)
 {
-       AVD_SI *si = nullptr;
-
        TRACE_ENTER();
-
-       si = avd_si_get(evt->info.tmr.dep_si_name);
+       AVD_SI *si = avd_si_get(evt->info.tmr.dep_si_name);
 
        if (!si) {
                LOG_ER("Received si nullptr");
@@ -912,11 +903,9 @@ done:
  **************************************************************************/
 void sidep_update_si_dep_state_for_spons_unassign(AVD_CL_CB *cb, AVD_SI 
*dep_si, AVD_SI_DEP *si_dep_rec)
 {
-       AVD_SI *spons_si = nullptr;
-
        TRACE_ENTER2("si:'%s', 
si_dep_state:'%s'",dep_si->name.c_str(),depstatename[dep_si->si_dep_state]);
 
-       spons_si = avd_si_get(si_dep_rec->spons_name);
+        AVD_SI *spons_si = avd_si_get(si_dep_rec->spons_name);
        osafassert(spons_si != nullptr);
 
        /* Take action only when both sponsor and dependent belongs to same sg 
@@ -974,9 +963,8 @@ void sidep_take_action_on_dependents(AVD
 {
        TRACE_ENTER();
 
-       for (std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it = sidep_db->begin();
-                       it != sidep_db->end(); it++) {
-               const AVD_SI_DEP *sidep = it->second;
+       for (const auto& value : *sidep_db) {
+               const AVD_SI_DEP *sidep = value.second;
 
                if (sidep->spons_si != si)
                        continue;
@@ -1019,9 +1007,8 @@ void sidep_take_action_on_dependents(AVD
 
 AVD_SI_DEP *get_sidep_with_same_dep(AVD_SI_DEP *sidep) 
 {
-       for (std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it = sidep_db->begin();
-                       it != sidep_db->end(); it++) {
-               AVD_SI_DEP *tmp_sidep = it->second;
+       for (const auto& value : *sidep_db) {
+               AVD_SI_DEP *tmp_sidep = value.second;
                if (sidep == tmp_sidep)
                        continue;
                if (tmp_sidep->dep_name.compare(sidep->dep_name) == 0)
@@ -1071,9 +1058,8 @@ uint32_t sidep_cyclic_dep_find(AVD_SI_DE
        
 
        while (last) {
-               for (std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it = sidep_db->begin();
-                               it != sidep_db->end(); it++) {
-                       tmp_sidep = it->second;
+               for (const auto& value : *sidep_db) {
+                       tmp_sidep = value.second;
                        if (tmp_sidep->dep_name.compare(last->si_name) == 0)
                                break;
                }
@@ -1466,9 +1452,8 @@ void avd_sidep_unassign_dependents(AVD_S
 
        TRACE_ENTER2(": '%s'",si->name.c_str());
 
-       for (std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it = sidep_db->begin();
-                       it != sidep_db->end(); it++) {
-               const AVD_SI_DEP *sidep = it->second;
+       for (const auto& value : *sidep_db) {
+               const AVD_SI_DEP *sidep = value.second;
                if (sidep->spons_si->name.compare(si->name) != 0)
                        continue;
 
@@ -1614,7 +1599,6 @@ bool avd_sidep_is_si_failover_possible(A
                 * 2) None of its sponsors SI is undergoing admin lock operation
                 */
                for (spons_si_node = 
si->spons_si_list;spons_si_node;spons_si_node = spons_si_node->next) {
-                       assignmemt_status = false;
                        active_sisu = nullptr;
                        valid_stdby_sisu = nullptr;
 
@@ -1795,9 +1779,8 @@ void avd_sidep_update_depstate_si_failov
 
        TRACE_ENTER2("si:%s",si->name.c_str());
 
-       for (std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it = sidep_db->begin();
-                       it != sidep_db->end(); it++) {
-               const AVD_SI_DEP *sidep = it->second;
+       for (const auto& value : *sidep_db) {
+               const AVD_SI_DEP *sidep = value.second;
                if (sidep->spons_si->name.compare(si->name) != 0) 
                        continue;
 
@@ -2054,9 +2037,8 @@ void avd_sidep_reset_dependents_depstate
 {
        TRACE_ENTER2(" SI: '%s'",si->name.c_str());
 
-       for (std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it = sidep_db->begin();
-                       it != sidep_db->end(); it++) {
-               const AVD_SI_DEP *sidep = it->second;
+       for (const auto& value : *sidep_db) {
+               const AVD_SI_DEP *sidep = value.second;
 
                if (sidep->spons_si->name.compare(si->name) != 0) 
                        continue;
@@ -2126,9 +2108,8 @@ void avd_sidep_send_active_to_dependents
                }       
        }   
 
-       for (std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it = sidep_db->begin();
-                       it != sidep_db->end(); it++) {
-               const AVD_SI_DEP *sidep = it->second;
+       for (const auto& value : *sidep_db) {
+               const AVD_SI_DEP *sidep = value.second;
                if (sidep->spons_si->name.compare(si->name) != 0) 
                        continue;
 
@@ -2190,9 +2171,8 @@ bool avd_sidep_quiesced_done_for_all_dep
 
        TRACE_ENTER2(": '%s'",si->name.c_str());
 
-       for (std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it = sidep_db->begin();
-                       it != sidep_db->end(); it++) {
-               const AVD_SI_DEP *sidep = it->second;
+       for (const auto& value : *sidep_db) {
+               const AVD_SI_DEP *sidep = value.second;
                if (sidep->spons_si->name.compare(si->name) != 0) 
                        continue;
 
@@ -2266,9 +2246,8 @@ void sidep_update_dependents_states(AVD_
         */
        TRACE("sponsor si:'%s', dep state:'%s'", si->name.c_str(), 
depstatename[si->si_dep_state]);
 
-       for (std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it = sidep_db->begin();
-                       it != sidep_db->end(); it++) {
-               const AVD_SI_DEP *sidep = it->second;
+       for (const auto& value : *sidep_db) {
+               const AVD_SI_DEP *sidep = value.second;
                if (sidep->spons_si->name.compare(si->name) != 0) 
                        continue;
 
@@ -2520,9 +2499,8 @@ done:
  */
 void get_dependent_si_list(const std::string& spons_si_name, 
std::list<AVD_SI*>& depsi_list)
 {
-       std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it;
-       for (it = sidep_db->begin(); it != sidep_db->end(); it++) {
-               const AVD_SI_DEP *sidep = it->second;
+       for (const auto& value : *sidep_db) {
+               const AVD_SI_DEP *sidep = value.second;
                if (sidep->spons_si->name.compare(spons_si_name) != 0)
                        continue;
                depsi_list.push_back(sidep->dep_si);
diff --git a/src/amf/amfd/siass.cc b/src/amf/amfd/siass.cc
--- a/src/amf/amfd/siass.cc
+++ b/src/amf/amfd/siass.cc
@@ -2,6 +2,7 @@
  *
  * (C) Copyright 2008 The OpenSAF Foundation
  * (C) Copyright 2017 Ericsson AB - All Rights Reserved.
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -448,9 +449,8 @@ AVD_SU_SI_REL *avd_susi_create(AVD_CL_CB
         */
 
        /* determine if the su is ranked per si */
-       for (std::map<std::pair<std::string, uint32_t>, 
AVD_SUS_PER_SI_RANK*>::const_iterator
-                       it = sirankedsu_db->begin(); it != 
sirankedsu_db->end(); it++) {
-               su_rank_rec = it->second;
+       for (const auto& value : *sirankedsu_db) {
+               su_rank_rec = value.second;
                if (su_rank_rec->indx.si_name.compare(si->name) != 0)
                        continue;
                curr_su = su_db->find(su_rank_rec->su_name);
@@ -469,9 +469,8 @@ AVD_SU_SI_REL *avd_susi_create(AVD_CL_CB
                                continue;
 
                        /* determine the su_rank rec for this rec */
-                       for (std::map<std::pair<std::string, uint32_t>, 
AVD_SUS_PER_SI_RANK*>::const_iterator
-                                       it = sirankedsu_db->begin(); it != 
sirankedsu_db->end(); it++) {
-                               i_su_rank_rec = it->second;
+                       for (const auto& value : *sirankedsu_db) {
+                               i_su_rank_rec = value.second;
                                if 
(i_su_rank_rec->indx.si_name.compare(si->name) != 0)
                                        continue;
                                curr_su = su_db->find(i_su_rank_rec->su_name);
@@ -1038,9 +1037,8 @@ bool avd_susi_quiesced_canbe_given(const
                return quiesc_role;
        } else {
                /* Check if any of its dependents assigned to same SU for which 
quiesced role is not yet given */
-               for (std::map<std::pair<std::string,std::string>, 
AVD_SI_DEP*>::const_iterator it = sidep_db->begin();
-                       it != sidep_db->end(); it++) {
-                       const AVD_SI_DEP *sidep = it->second;
+               for (const auto& value : *sidep_db) {
+                       const AVD_SI_DEP *sidep = value.second;
                        if (sidep->spons_si->name.compare(susi->si->name) != 0) 
                                continue;
 
@@ -1074,12 +1072,11 @@ SaAisErrorT avd_susi_recreate(AVSV_N2D_N
        TRACE_ENTER2("msg_id: %u node_id: %u num_sisu: %u", info->msg_id,
                info->node_id, info->num_sisu);
        AVD_SU_SI_REL *susi = nullptr;
-       AVD_AVND *node = nullptr;
 
        const AVSV_SISU_STATE_MSG *susi_state = nullptr;
        const AVSV_SU_STATE_MSG *su_state = nullptr;
 
-       node = avd_node_find_nodeid(info->node_id);
+       AVD_AVND *node = avd_node_find_nodeid(info->node_id);
        if (node == 0) {
           LOG_ER("Node %" PRIx32 " has left the cluster", info->node_id);
           return SA_AIS_ERR_NOT_EXIST;
diff --git a/src/amf/amfd/sirankedsu.cc b/src/amf/amfd/sirankedsu.cc
--- a/src/amf/amfd/sirankedsu.cc
+++ b/src/amf/amfd/sirankedsu.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2008 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -42,13 +43,12 @@ static void avd_susi_namet_init(const st
 
 static void avd_sirankedsu_db_add(AVD_SUS_PER_SI_RANK *sirankedsu)
 {
-       AVD_SI *avd_si = nullptr;
        unsigned int rc = 
sirankedsu_db->insert(make_pair(sirankedsu->indx.si_name,
                sirankedsu->indx.su_rank), sirankedsu);
        osafassert(rc == NCSCC_RC_SUCCESS);
 
        /* Find the si name. */
-       avd_si = avd_si_get(sirankedsu->indx.si_name);
+       AVD_SI *avd_si = avd_si_get(sirankedsu->indx.si_name);
        avd_si->add_rankedsu(sirankedsu->su_name, sirankedsu->indx.su_rank);
 
        /* Add sus_per_si_rank to si */
@@ -104,13 +104,12 @@ static AVD_SUS_PER_SI_RANK *avd_siranked
 
 static AVD_SUS_PER_SI_RANK *avd_sirankedsu_find(AVD_CL_CB *cb, const 
AVD_SUS_PER_SI_RANK_INDX &indx)
 {
-       AVD_SUS_PER_SI_RANK *ranked_su_per_si = nullptr;
        AVD_SUS_PER_SI_RANK_INDX rank_indx;
 
        rank_indx.si_name = indx.si_name;
        rank_indx.su_rank = indx.su_rank;
 
-       ranked_su_per_si = sirankedsu_db->find(make_pair(rank_indx.si_name,
+       AVD_SUS_PER_SI_RANK *ranked_su_per_si = 
sirankedsu_db->find(make_pair(rank_indx.si_name,
                                rank_indx.su_rank));
 
        return ranked_su_per_si;
@@ -160,7 +159,6 @@ static AVD_SUS_PER_SI_RANK * avd_siranke
                const SaImmAttrValuesT_2 **attributes)
 {
         uint32_t rank = 0;
-       AVD_SUS_PER_SI_RANK *avd_sus_per_si_rank = nullptr;
        std::string su_name;
        std::string si_name;
        AVD_SUS_PER_SI_RANK_INDX indx;
@@ -173,7 +171,7 @@ static AVD_SUS_PER_SI_RANK * avd_siranke
        indx.si_name = si_name;
        indx.su_rank = rank;
 
-       avd_sus_per_si_rank = avd_sirankedsu_create(avd_cb, indx);
+       AVD_SUS_PER_SI_RANK *avd_sus_per_si_rank = 
avd_sirankedsu_create(avd_cb, indx);
        osafassert(avd_sus_per_si_rank);
 
        avd_sus_per_si_rank->su_name = su_name;
@@ -232,7 +230,6 @@ static void avd_sirankedsu_del_si_list(A
 
 static int is_config_valid(const std::string& dn, const SaImmAttrValuesT_2 
**attributes, CcbUtilOperationData_t *opdata)
 {
-        AVD_SI *avd_si = nullptr;
        std::string su_name;
        std::string si_name;
         uint32_t rank = 0;
@@ -242,7 +239,7 @@ static int is_config_valid(const std::st
         avd_susi_namet_init(dn, su_name, si_name);
 
         /* Find the si name. */
-        avd_si = avd_si_get(si_name);
+        AVD_SI *avd_si = avd_si_get(si_name);
 
         if (avd_si == nullptr) {
                 /* SI does not exist in current model, check CCB */
@@ -350,9 +347,8 @@ static int avd_sirankedsu_ccb_complete_d
        avd_susi_namet_init(Amf::to_string(opdata->param.delete_.objectName), 
su_name, si_name);
 
        /* determine if the su is ranked per si */
-       for (std::map<std::pair<std::string, uint32_t>, 
AVD_SUS_PER_SI_RANK*>::const_iterator
-                       it = sirankedsu_db->begin(); it != 
sirankedsu_db->end(); it++) {
-               su_rank_rec = it->second;
+       for (const auto& value : *sirankedsu_db) {
+               su_rank_rec = value.second;
 
                if (su_rank_rec->indx.si_name.compare(si_name) == 0 &&
                        su_rank_rec->su_name.compare(su_name) == 0) {
diff --git a/src/amf/amfd/su.cc b/src/amf/amfd/su.cc
--- a/src/amf/amfd/su.cc
+++ b/src/amf/amfd/su.cc
@@ -515,7 +515,7 @@ static AVD_AVND *map_su_to_node(AVD_SU *
        /* Find a node in the group that doesn't have a SU in same SG mapped to 
it already */
        for (node_iter = ng->saAmfNGNodeList.begin();
                node_iter != ng->saAmfNGNodeList.end();
-               node_iter++) {
+               ++node_iter) {
 
                node = avd_node_get(*node_iter);
                osafassert(node);
@@ -1344,8 +1344,7 @@ static void su_admin_op_cb(SaImmOiHandle
                                        su->saAmfSUOperState, op_id);
                        goto done;
                }
-               SaAisErrorT rc = SA_AIS_OK;
-               rc = su->check_su_stability();
+               SaAisErrorT rc = su->check_su_stability();
                 if (rc != SA_AIS_OK) {
                         report_admin_op_error(immoi_handle, invocation,
                                               SA_AIS_ERR_TRY_AGAIN, nullptr,
@@ -1943,10 +1942,8 @@ void su_ccb_apply_delete_hdlr(struct Ccb
 
                        //Create a tmp database of compcstype.
                        std::set<std::string> compcstype_list;
-                       for (std::map<std::string, 
AVD_COMPCS_TYPE*>::const_iterator it =
-                                       compcstype_db->begin();
-                                       it != compcstype_db->end(); it++) {
-                               AVD_COMPCS_TYPE *compcstype = it->second;
+                       for (const auto& value : *compcstype_db) {
+                               AVD_COMPCS_TYPE *compcstype = value.second;
                                compcstype_list.insert(compcstype->name);
                        }
                        TRACE("Standby Amfd, comp '%s' not deleted", 
osaf_extended_name_borrow(&comp->comp_info.name));
diff --git a/src/amf/amfd/sutype.cc b/src/amf/amfd/sutype.cc
--- a/src/amf/amfd/sutype.cc
+++ b/src/amf/amfd/sutype.cc
@@ -1,6 +1,7 @@
 /*      -*- OpenSAF  -*-
  *
  * (C) Copyright 2009 The OpenSAF Foundation
+ * Copyright (C) 2017, Oracle and/or its affiliates. All rights reserved.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
@@ -61,7 +62,6 @@ static AVD_SUTYPE *sutype_create(const s
 {
        const SaImmAttrValuesT_2 *attr;
        AVD_SUTYPE *sutype;
-       int rc = 0;
        unsigned i = 0;
        SaAisErrorT error;
 
@@ -78,30 +78,27 @@ static AVD_SUTYPE *sutype_create(const s
        error = 
immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSutDefSUFailover"), 
attributes, 0, &sutype->saAmfSutDefSUFailover);
        osafassert(error == SA_AIS_OK);
 
-       while ((attr = attributes[i++]) != nullptr)
-               if (!strcmp(attr->attrName, "saAmfSutProvidesSvcTypes"))
+       while ((attr = attributes[i++]) != nullptr) {
+               if (!strcmp(attr->attrName, "saAmfSutProvidesSvcTypes")) {
+                       osafassert(attr->attrValuesNumber > 0);
+
+                       sutype->number_svc_types = attr->attrValuesNumber;
+                       osafassert(sutype->saAmfSutProvidesSvcTypes.empty() == 
true);
+
+                       for (i = 0; i < sutype->number_svc_types; i++) {
+                               SaNameT svc_type;
+                               if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSutProvidesSvcTypes"), 
attributes, i, &svc_type) != SA_AIS_OK) {
+                                       LOG_ER("Get saAmfSutProvidesSvcTypes 
FAILED for '%s'", dn.c_str());
+                                       osafassert(0);
+                               }
+                               
sutype->saAmfSutProvidesSvcTypes.push_back(Amf::to_string(&svc_type));
+                               TRACE("%s", 
sutype->saAmfSutProvidesSvcTypes.back().c_str());
+                       }
                        break;
+               }
+       }
 
        osafassert(attr);
-       osafassert(attr->attrValuesNumber > 0);
-
-       sutype->number_svc_types = attr->attrValuesNumber;
-       osafassert(sutype->saAmfSutProvidesSvcTypes.empty() == true);
-
-       for (i = 0; i < sutype->number_svc_types; i++) {
-               SaNameT svc_type;
-               if 
(immutil_getAttr(const_cast<SaImmAttrNameT>("saAmfSutProvidesSvcTypes"), 
attributes, i, &svc_type) != SA_AIS_OK) {
-                       LOG_ER("Get saAmfSutProvidesSvcTypes FAILED for '%s'", 
dn.c_str());
-                       osafassert(0);
-               }
-               
sutype->saAmfSutProvidesSvcTypes.push_back(Amf::to_string(&svc_type));
-               TRACE("%s", sutype->saAmfSutProvidesSvcTypes.back().c_str());
-       }
-
-       rc = 0;
-
-       if (rc != 0)
-               sutype_delete(&sutype);
 
        TRACE_LEAVE();
 
@@ -131,7 +128,7 @@ static int is_config_valid(const std::st
        /* Make sure all Svc types exist */
        for (i = 0; i < su_type->number_svc_types; i++) {
                AVD_AMF_SVC_TYPE *svc_type =
-                   avd_svctype_find(avd_cb, 
su_type->saAmfSutProvidesSvcTypes[i], true);
+                       avd_svctype_find(avd_cb, 
su_type->saAmfSutProvidesSvcTypes[i], true);
                if (svc_type == nullptr) {
                        /* Svc type does not exist in current model, check CCB 
*/
                        if ((opdata != nullptr) &&
diff --git a/src/amf/amfd/util.cc b/src/amf/amfd/util.cc
--- a/src/amf/amfd/util.cc
+++ b/src/amf/amfd/util.cc
@@ -529,16 +529,15 @@ uint32_t avd_snd_su_reg_msg(AVD_CL_CB *c
        if (avnd->node_info.nodeId == cb->node_id_avd) {
                // filter out external SUs from all SUs
                std::vector<AVD_SU*> ext_su_vec;
-               for (std::map<std::string, AVD_SU*>::const_iterator it = 
su_db->begin();
-                               it != su_db->end(); it++) {
-                       su = it->second;
+               for (const auto& value : *su_db) {
+                       su = value.second;
                        if (su->su_is_external == true)
                                ext_su_vec.push_back(su);
                }
 
                // And add them
                for (std::vector<AVD_SU*>::iterator it = ext_su_vec.begin();
-                               it != ext_su_vec.end(); it++) {
+                               it != ext_su_vec.end(); ++it) {
                        su = *it;
                        reg_su_msg_init_su_info(su_msg, su);
                }
@@ -1029,7 +1028,6 @@ uint32_t avd_snd_susi_msg(AVD_CL_CB *cb,
 static uint32_t avd_prep_pg_mem_list(AVD_CL_CB *cb, AVD_CSI *csi, 
SaAmfProtectionGroupNotificationBufferT *mem_list)
 {
        AVD_COMP_CSI_REL *curr = 0;
-       uint32_t i = 0;
 
        TRACE_ENTER();
 
@@ -1038,7 +1036,7 @@ static uint32_t avd_prep_pg_mem_list(AVD
        if (csi->compcsi_cnt) {
                /* alloc the memory for the notify buffer */
                mem_list->notification = new 
SaAmfProtectionGroupNotificationT[csi->compcsi_cnt]();
-
+               uint32_t i = 0;
                /* copy the contents */
                for (curr = csi->list_compcsi; curr; curr = 
curr->csi_csicomp_next, i++) {
                        SaNameT comp_name;
@@ -1269,13 +1267,12 @@ uint32_t avd_snd_set_leds_msg(AVD_CL_CB 
 
 uint32_t avd_snd_comp_validation_resp(AVD_CL_CB *cb, AVD_AVND *avnd, AVD_COMP 
*comp_ptr, AVD_DND_MSG *n2d_msg)
 {
-       AVD_DND_MSG *d2n_msg = nullptr;
        AVD_AVND *su_node_ptr = nullptr;
 
        TRACE_ENTER();
 
        /* prepare the component validation message. */
-       d2n_msg = new AVSV_DND_MSG();
+       AVD_DND_MSG *d2n_msg = new AVSV_DND_MSG();
 
        /* prepare the componenet validation response message */
        d2n_msg->msg_type = AVSV_D2N_COMP_VALIDATION_RESP_MSG;
@@ -1388,9 +1385,8 @@ int amfd_file_dump(const char *filename)
 
 
        fprintf(f, "nodes:\n");
-       for (std::map<uint32_t, AVD_AVND *>::const_iterator it = 
node_id_db->begin();
-                       it != node_id_db->end(); it++) {
-               AVD_AVND *node = it->second;
+       for (const auto& value : *node_id_db) {
+               AVD_AVND *node = value.second;
                fprintf(f, "  dn: %s\n", node->name.c_str());
                fprintf(f, "    saAmfNodeAdminState: %s\n",
                                avd_adm_state_name[node->saAmfNodeAdminState]);
@@ -1404,9 +1400,8 @@ int amfd_file_dump(const char *filename)
        }
 
        fprintf(f, "applications:\n");
-       for (std::map<std::string, AVD_APP*>::const_iterator it = 
app_db->begin();
-                       it != app_db->end(); it++) {
-               const AVD_APP *app = it->second;
+       for (const auto& value : *app_db) {
+               const AVD_APP *app = value.second;
                fprintf(f, "  dn: %s\n", app->name.c_str());
                fprintf(f, "    saAmfApplicationAdminState: %s\n",
                                
avd_adm_state_name[app->saAmfApplicationAdminState]);
@@ -1415,9 +1410,8 @@ int amfd_file_dump(const char *filename)
        }
 
        fprintf(f, "service_instances:\n");
-       for (std::map<std::string, AVD_SI*>::const_iterator it = si_db->begin();
-                       it != si_db->end(); it++) {
-               si = it->second;
+       for (const auto& value : *si_db) {
+               si = value.second;
                fprintf(f, "  dn: %s\n", si->name.c_str());
                fprintf(f, "    saAmfSIProtectedbySG: %s\n",
                                si->saAmfSIProtectedbySG.c_str());
@@ -1442,9 +1436,8 @@ int amfd_file_dump(const char *filename)
        }
 
        fprintf(f, "component_service_instances:\n");
-       for (std::map<std::string, AVD_CSI*>::const_iterator it = 
csi_db->begin();
-                       it != csi_db->end(); it++) {
-               csi = it->second;
+       for (const auto& value : *csi_db) {
+               csi = value.second;
                fprintf(f, "  dn: %s\n", csi->name.c_str());
                fprintf(f, "    rank: %u\n", csi->rank);
                fprintf(f, "    depends:\n");
@@ -1461,9 +1454,8 @@ int amfd_file_dump(const char *filename)
        }
 
        fprintf(f, "service_groups:\n");
-       for (std::map<std::string, AVD_SG*>::const_iterator it = sg_db->begin();
-                       it != sg_db->end(); it++) {
-               const AVD_SG *sg = it->second;
+       for (const auto& value : *sg_db) {
+               const AVD_SG *sg = value.second;
                fprintf(f, "  dn: %s\n", sg->name.c_str());
                fprintf(f, "    saAmfSGAdminState: %s\n",
                                avd_adm_state_name[sg->saAmfSGAdminState]);
@@ -1478,9 +1470,8 @@ int amfd_file_dump(const char *filename)
        }
 
        fprintf(f, "service_units:\n");
-       for (std::map<std::string, AVD_SU*>::const_iterator it = su_db->begin();
-                       it != su_db->end(); it++) {
-               const AVD_SU *su = it->second;
+       for (const auto& value : *su_db) {
+               const AVD_SU *su = value.second;
                fprintf(f, "  dn: %s\n", su->name.c_str());
                fprintf(f, "    saAmfSUPreInstantiable: %u\n", 
su->saAmfSUPreInstantiable);
                fprintf(f, "    saAmfSUOperState: %s\n",
@@ -1506,9 +1497,8 @@ int amfd_file_dump(const char *filename)
        }
 
        fprintf(f, "components:\n");
-       for (std::map<std::string, AVD_COMP*>::const_iterator it = 
comp_db->begin();
-                       it != comp_db->end(); it++) {
-               const AVD_COMP *comp  = it->second;
+       for (const auto& value : *comp_db) {
+               const AVD_COMP *comp  = value.second;
                fprintf(f, "  dn: %s\n", 
osaf_extended_name_borrow(&comp->comp_info.name));
                fprintf(f, "    saAmfCompOperState: %s\n",
                                avd_oper_state_name[comp->saAmfCompOperState]);
@@ -1522,9 +1512,8 @@ int amfd_file_dump(const char *filename)
        }
 
         fprintf(f, "COMPCS_TYPE:\n");
-        for (std::map<std::string, AVD_COMPCS_TYPE*>::const_iterator it = 
compcstype_db->begin();
-                        it != compcstype_db->end(); it++) {
-                const AVD_COMPCS_TYPE *compcs_type  = it->second;
+       for (const auto& value : *compcstype_db) {
+               const AVD_COMPCS_TYPE *compcs_type  = value.second;
                 fprintf(f, "  dn: %s\n", compcs_type->name.c_str());
                 fprintf(f, "    saAmfCompNumMaxActiveCSIs: %u\n",
                                 compcs_type->saAmfCompNumMaxActiveCSIs);
@@ -1538,9 +1527,8 @@ int amfd_file_dump(const char *filename)
 
 
        fprintf(f, "Node Groups:\n");
-       for (std::map<std::string, AVD_AMF_NG*>::const_iterator it = 
nodegroup_db->begin();
-                        it != nodegroup_db->end(); it++) {
-               AVD_AMF_NG *ng = it->second;
+       for (const auto& value : *nodegroup_db) {
+               AVD_AMF_NG *ng = value.second;
                fprintf(f, "  dn: %s\n", ng->name.c_str());
                fprintf(f, "    saAmfNGAdminState: 
%s\n",avd_adm_state_name[ng->saAmfNGAdminState]);
        }
@@ -1563,7 +1551,6 @@ int avd_admin_op_msg_snd(const std::stri
 {
        AVD_CL_CB *cb = (AVD_CL_CB *)avd_cb;
        AVD_DND_MSG *d2n_msg;
-       unsigned int rc = NCSCC_RC_SUCCESS;
 
        SaNameT temp_dn;
        osaf_extended_name_alloc(dn.c_str(), &temp_dn);
@@ -1578,7 +1565,7 @@ int avd_admin_op_msg_snd(const std::stri
        d2n_msg->msg_info.d2n_admin_op_req_info.class_id = class_id;
        d2n_msg->msg_info.d2n_admin_op_req_info.oper_id = opId;
 
-       rc = avd_d2n_msg_snd(cb, node, d2n_msg);
+       unsigned int rc = avd_d2n_msg_snd(cb, node, d2n_msg);
        if (rc != NCSCC_RC_SUCCESS) {
                LOG_ER("%s: snd to %x failed", __FUNCTION__, 
node->node_info.nodeId);
                d2n_msg_free(d2n_msg);
@@ -2009,16 +1996,13 @@ uint32_t avd_snd_compcsi_msg(AVD_COMP *c
   AVSV_CSI_ATTRS *ptr_csiattr_msg = nullptr;
   AVSV_ATTR_NAME_VAL *i_ptr_msg = nullptr;
   AVD_CSI_ATTR *attr_ptr_db = nullptr;
-  AVD_AVND *avnd = nullptr;
 
   TRACE_ENTER2("'%s', '%s', act:%u",
     osaf_extended_name_borrow(&compcsi->comp->comp_info.name),
     csi->name.c_str(), act);
 
-  //Depending upon the message sub type retrieve node from eligible entity.
-  if (act == AVSV_COMPCSI_ATTR_CHANGE_AND_NO_ACK) {
-    avnd = comp->su->get_node_ptr();
-  }
+  AVD_AVND *avnd = comp->su->get_node_ptr();
+  
   if ((avnd->node_state == AVD_AVND_STATE_ABSENT) ||
     (avnd->node_state == AVD_AVND_STATE_GO_DOWN)) {
     TRACE_LEAVE();
@@ -2075,7 +2059,6 @@ uint32_t avd_snd_compcsi_msg(AVD_COMP *c
       d2n_msg_free(compcsi_msg);
       TRACE_LEAVE();
       return NCSCC_RC_FAILURE;
-      break;
     }
   }
 

------------------------------------------------------------------------------
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
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to