---
src/mds/mds_c_api.c | 4 +++-
src/mds/mds_c_db.c | 12 ++++++++++--
src/mds/mds_dt_tcp.c | 1 +
src/mds/mds_dt_tipc.c | 1 +
src/mds/mds_log.cc | 3 +++
5 files changed, 18 insertions(+), 3 deletions(-)
diff --git a/src/mds/mds_c_api.c b/src/mds/mds_c_api.c
index a5986c2..f5ba318 100644
--- a/src/mds/mds_c_api.c
+++ b/src/mds/mds_c_api.c
@@ -1778,7 +1778,7 @@ uint32_t mds_mcm_svc_up(PW_ENV_ID pwe_id, MDS_SVC_ID
svc_id, V_DEST_RL role,
uint32_t status = NCSCC_RC_SUCCESS;
NCSMDS_SCOPE_TYPE local_subtn_scope;
MDS_VIEW local_subtn_view;
- MDS_DEST active_adest;
+ MDS_DEST active_adest = 0;
V_DEST_RL dest_role;
bool tmr_running;
NCSMDS_CALLBACK_INFO cbinfo;
@@ -1964,6 +1964,7 @@ uint32_t mds_mcm_svc_up(PW_ENV_ID pwe_id, MDS_SVC_ID
svc_id, V_DEST_RL role,
present */
char to_adest_details
[MDS_MAX_PROCESS_NAME_LEN];
+ memset(to_adest_details, 0,
MDS_MAX_PROCESS_NAME_LEN);
get_subtn_adest_details(
m_MDS_GET_PWE_HDL_FROM_SVC_HDL(
local_svc_hdl),
@@ -4932,6 +4933,7 @@ uint32_t mds_mcm_init(void)
/* STEP 1: Initialize MCM-CB. */
gl_mds_mcm_cb = m_MMGR_ALLOC_MCM_CB;
+ memset(gl_mds_mcm_cb, 0, sizeof(MDS_MCM_CB));
/* VDEST TREE */
memset(&pat_tree_params, 0, sizeof(NCS_PATRICIA_PARAMS));
diff --git a/src/mds/mds_c_db.c b/src/mds/mds_c_db.c
index 7d56ad9..46b8eb4 100644
--- a/src/mds/mds_c_db.c
+++ b/src/mds/mds_c_db.c
@@ -37,12 +37,16 @@ void get_adest_details(MDS_DEST adest, char *adest_details)
char *token, *saveptr;
struct stat s;
uint32_t process_id = 0;
- SlotSubslotId slot_subslot_id;
+ SlotSubslotId slot_subslot_id = 0;
char pid_path[1024];
char *pid_name = NULL;
char process_name[MDS_MAX_PROCESS_NAME_LEN];
bool remote = false;
+ memset(adest_details, 0, MDS_MAX_PROCESS_NAME_LEN);
+ memset(process_name, 0, MDS_MAX_PROCESS_NAME_LEN);
+ memset(pid_path, 0, 1024);
+
slot_subslot_id =
GetSlotSubslotIdFromNodeId(m_NCS_NODE_ID_FROM_MDS_DEST(adest));
@@ -139,7 +143,7 @@ void get_subtn_adest_details(MDS_PWE_HDL pwe_hdl, MDS_SVC_ID svc_id,
MDS_DEST adest, char *adest_details)
{
uint32_t process_id = 0;
- SlotSubslotId slot_subslot_id;
+ SlotSubslotId slot_subslot_id = 0;
char process_name[MDS_MAX_PROCESS_NAME_LEN];
bool remote = false;
MDS_SVC_INFO *svc_info = NULL;
@@ -148,6 +152,9 @@ void get_subtn_adest_details(MDS_PWE_HDL pwe_hdl,
MDS_SVC_ID svc_id,
char *pid_name = NULL;
struct stat s;
+ memset(process_name, 0, MDS_MAX_PROCESS_NAME_LEN);
+ memset(pid_path, 0, 1024);
+
slot_subslot_id =
GetSlotSubslotIdFromNodeId(m_NCS_NODE_ID_FROM_MDS_DEST(adest));
process_id = m_MDS_GET_PROCESS_ID_FROM_ADEST(adest);
@@ -2404,6 +2411,7 @@ uint32_t mds_subtn_res_tbl_get(MDS_SVC_HDL svc_hdl,
MDS_SVC_ID subscr_svc_id,
if (subtn_res_info == NULL) {
/* Subscription result entry doesn't exist for active result */
m_MDS_LOG_DBG("MDS:DB: Subscription Result not present");
+ *adest = 0;
m_MDS_LEAVE();
return NCSCC_RC_FAILURE;
} else {
diff --git a/src/mds/mds_dt_tcp.c b/src/mds/mds_dt_tcp.c
index 0b45c07..1407eb1 100644
--- a/src/mds/mds_dt_tcp.c
+++ b/src/mds/mds_dt_tcp.c
@@ -104,6 +104,7 @@ uint32_t mds_mdtm_init_tcp(NODE_ID nodeid, uint32_t
*mds_tcp_ref)
mdtm_num_subscriptions = 0;
mdtm_handle = 0;
mdtm_global_frag_num_tcp = 0;
+ *mds_tcp_ref = 0;
memset(&server_addr_un, 0, sizeof(struct sockaddr_un));
memset(&dhserver_addr_un, 0, sizeof(struct sockaddr_un));
diff --git a/src/mds/mds_dt_tipc.c b/src/mds/mds_dt_tipc.c
index 66f69cc..37745e7 100644
--- a/src/mds/mds_dt_tipc.c
+++ b/src/mds/mds_dt_tipc.c
@@ -182,6 +182,7 @@ uint32_t mdtm_tipc_init(NODE_ID nodeid, uint32_t
*mds_tipc_ref)
socklen_t sz = sizeof(addr);
memset(&tipc_cb, 0, sizeof(tipc_cb));
+ *mds_tipc_ref = 0;
/* Added to assist the shutdown bug */
mdtm_ref_hdl_list_hdr = NULL;
diff --git a/src/mds/mds_log.cc b/src/mds/mds_log.cc
index 67f2f46..94c94e6 100644
--- a/src/mds/mds_log.cc
+++ b/src/mds/mds_log.cc
@@ -94,6 +94,9 @@ bool MdsLog::Init() {
char *token, *saveptr;
char *pid_name = nullptr;
+ memset(app_name, 0, MDS_MAX_PROCESS_NAME_LEN);
+ memset(pid_path, 0, 1024);
+
snprintf(pid_path, sizeof(pid_path), "/proc/%" PRIu32 "/cmdline",
process_id);
FILE *f = fopen(pid_path, "r");
if (f != nullptr) {