osaf/services/saf/amf/amfnd/chc.cc       |  2 +-
 osaf/services/saf/amf/amfnd/ckpt_updt.cc |  2 +-
 osaf/services/saf/amf/amfnd/comp.cc      |  7 -------
 osaf/services/saf/amf/amfnd/compdb.cc    |  2 --
 osaf/services/saf/amf/amfnd/hcdb.cc      |  1 -
 osaf/services/saf/amf/amfnd/main.cc      |  5 +++--
 osaf/services/saf/amf/amfnd/sidb.cc      |  2 +-
 osaf/services/saf/amf/amfnd/term.cc      |  2 +-
 8 files changed, 7 insertions(+), 16 deletions(-)


diff --git a/osaf/services/saf/amf/amfnd/chc.cc 
b/osaf/services/saf/amf/amfnd/chc.cc
--- a/osaf/services/saf/amf/amfnd/chc.cc
+++ b/osaf/services/saf/amf/amfnd/chc.cc
@@ -728,7 +728,7 @@ uint32_t avnd_comp_hc_cmd_start(AVND_CB 
        TRACE_ENTER2("'%s'", comp->name.value);
 
        /* create a HC key with a default name */
-       strncpy((char*)hc.hc_key.key, hc_cmd_name, sizeof(hc.hc_key.key));
+       strncpy((char*)hc.hc_key.key, hc_cmd_name, sizeof(hc.hc_key.key)-1);
 
        hc.hc_key.keyLen = strlen((char*)hc.hc_key.key);
        hc.inv_type = SA_AMF_HEALTHCHECK_AMF_INVOKED;
diff --git a/osaf/services/saf/amf/amfnd/ckpt_updt.cc 
b/osaf/services/saf/amf/amfnd/ckpt_updt.cc
--- a/osaf/services/saf/amf/amfnd/ckpt_updt.cc
+++ b/osaf/services/saf/amf/amfnd/ckpt_updt.cc
@@ -59,7 +59,7 @@ uint32_t avnd_ckpt_add_rmv_updt_su_data(
 {
        uint32_t status = NCSCC_RC_SUCCESS;
        AVND_SU *su_ptr = nullptr;
-       AVSV_SU_INFO_MSG su_info;
+       AVSV_SU_INFO_MSG su_info {};
        uint32_t rc = NCSCC_RC_SUCCESS;
 
        su_ptr = m_AVND_SUDB_REC_GET(cb->sudb, su->name);
diff --git a/osaf/services/saf/amf/amfnd/comp.cc 
b/osaf/services/saf/amf/amfnd/comp.cc
--- a/osaf/services/saf/amf/amfnd/comp.cc
+++ b/osaf/services/saf/amf/amfnd/comp.cc
@@ -816,12 +816,9 @@ uint32_t avnd_comp_unreg_prc(AVND_CB *cb
                api_info.param.unreg.comp_name.length = comp->name.length;
                memcpy(api_info.param.unreg.comp_name.value,
                       comp->name.value, api_info.param.unreg.comp_name.length);
-               api_info.param.unreg.comp_name.length = 
api_info.param.unreg.comp_name.length;
                api_info.param.unreg.proxy_comp_name.length = 
pxy_comp->name.length;
                memcpy(api_info.param.unreg.proxy_comp_name.value,
                       pxy_comp->name.value, 
api_info.param.unreg.proxy_comp_name.length);
-               api_info.param.unreg.proxy_comp_name.length =
-                       api_info.param.unreg.proxy_comp_name.length;
 
                rc = avnd_int_ext_comp_hdlr(cb, &api_info, &ctxt, &amf_rc, 
&int_ext_comp);
                /* Since there is no Mds Context information being sent so, no 
response 
@@ -2427,14 +2424,10 @@ uint32_t avnd_comp_proxy_unreg(AVND_CB *
                        api_info.param.unreg.comp_name.length = 
pxd_comp->name.length;
                        memcpy(api_info.param.unreg.comp_name.value,
                               pxd_comp->name.value, 
api_info.param.unreg.comp_name.length);
-                       api_info.param.unreg.comp_name.length =
-                           api_info.param.unreg.comp_name.length;
                        api_info.param.unreg.proxy_comp_name.length =
                            pxd_comp->pxy_comp->name.length;
                        memcpy(api_info.param.unreg.proxy_comp_name.value,
                               pxd_comp->pxy_comp->name.value, 
api_info.param.unreg.proxy_comp_name.length);
-                       api_info.param.unreg.proxy_comp_name.length =
-                           api_info.param.unreg.proxy_comp_name.length;
 
                        rc = avnd_int_ext_comp_hdlr(cb, &api_info, &ctxt, 
&amf_rc, &int_ext_comp);
                        /* Since there is no Mds Context information being sent 
so, no response 
diff --git a/osaf/services/saf/amf/amfnd/compdb.cc 
b/osaf/services/saf/amf/amfnd/compdb.cc
--- a/osaf/services/saf/amf/amfnd/compdb.cc
+++ b/osaf/services/saf/amf/amfnd/compdb.cc
@@ -509,7 +509,6 @@ uint32_t avnd_compdb_rec_del(AVND_CB *cb
        /* extract the su-name from comp dn */
        memset(&su_name, 0, sizeof(SaNameT));
        avsv_cpy_SU_DN_from_DN(&su_name, name);
-       su_name.length = su_name.length;
 
        /* get the su record */
        su = m_AVND_SUDB_REC_GET(cb->sudb, su_name);
@@ -664,7 +663,6 @@ uint32_t avnd_comp_oper_req(AVND_CB *cb,
                        avsv_cpy_SU_DN_from_DN(&su_name, &param->name);
                        
                        /* get the su record */
-                       su_name.length = su_name.length;
                        su = m_AVND_SUDB_REC_GET(cb->sudb, su_name);
                        if (!su) {
                                LOG_ER("no su in database for the comp %s", 
param->name.value);
diff --git a/osaf/services/saf/amf/amfnd/hcdb.cc 
b/osaf/services/saf/amf/amfnd/hcdb.cc
--- a/osaf/services/saf/amf/amfnd/hcdb.cc
+++ b/osaf/services/saf/amf/amfnd/hcdb.cc
@@ -229,7 +229,6 @@ SaAisErrorT avnd_hc_config_get(AVND_COMP
        const SaImmAttrValuesT_2 **attributes;
        const char *className = "SaAmfHealthcheck";
        SaNameT comp_dn = comp->name;
-       comp_dn.length = comp_dn.length;
        SaImmHandleT immOmHandle;
        SaVersionT immVersion = { 'A', 2, 1 };
 
diff --git a/osaf/services/saf/amf/amfnd/main.cc 
b/osaf/services/saf/amf/amfnd/main.cc
--- a/osaf/services/saf/amf/amfnd/main.cc
+++ b/osaf/services/saf/amf/amfnd/main.cc
@@ -190,7 +190,7 @@ done:
 
 static int get_node_type(void)
 {
-        size_t bytes;
+        size_t no_of_matches;
         int type;
         char buf[32];
         FILE *f = fopen(PKGSYSCONFDIR "/node_type", "r");
@@ -200,7 +200,8 @@ static int get_node_type(void)
                 return AVSV_AVND_CARD_PAYLOAD;
         }
 
-        if ((bytes = fscanf(f, "%s", buf)) > 0) {
+       // Give length of buf -1 as argument to fscanf to avoid buffer overflows
+        if ((no_of_matches = fscanf(f, "%31s", buf)) > 0) {
                 if (strncmp(buf, "controller", sizeof(buf)) == 0) {
                        TRACE("Node type: controller");
                         type = AVSV_AVND_CARD_SYS_CON;
diff --git a/osaf/services/saf/amf/amfnd/sidb.cc 
b/osaf/services/saf/amf/amfnd/sidb.cc
--- a/osaf/services/saf/amf/amfnd/sidb.cc
+++ b/osaf/services/saf/amf/amfnd/sidb.cc
@@ -272,7 +272,7 @@ static SaAmfCompCapabilityModelT get_com
        SaNameT dn;
        SaImmAccessorHandleT accessorHandle = 0;
        const SaImmAttrValuesT_2 **attributes;
-       SaAmfCompCapabilityModelT comp_cap;
+       SaAmfCompCapabilityModelT comp_cap {};
        SaImmAttrNameT attributeNames[2] =
                {const_cast<SaImmAttrNameT>("saAmfCtCompCapability"), nullptr};
        SaImmHandleT immOmHandle = 0;
diff --git a/osaf/services/saf/amf/amfnd/term.cc 
b/osaf/services/saf/amf/amfnd/term.cc
--- a/osaf/services/saf/amf/amfnd/term.cc
+++ b/osaf/services/saf/amf/amfnd/term.cc
@@ -212,7 +212,7 @@ uint32_t avnd_evt_avd_set_leds_evh(AVND_
        cb->led_state = AVND_LED_STATE_GREEN;
 
        /* Notify the NIS script/deamon that we have fully come up */
-       nid_notify(const_cast<char*>("AMFND"), NCSCC_RC_SUCCESS, nullptr);
+       rc = nid_notify(const_cast<char*>("AMFND"), NCSCC_RC_SUCCESS, nullptr);
 
 done:
        TRACE_LEAVE();

------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to