- Remove thread-local declaration of svc_to_mds_info
---
src/mds/apitest/mdstipc_api.c | 7 ++++++-
src/mds/apitest/mdstipc_conf.c | 43 +++++++++++++++++++++---------------------
2 files changed, 27 insertions(+), 23 deletions(-)
diff --git a/src/mds/apitest/mdstipc_api.c b/src/mds/apitest/mdstipc_api.c
index 669c770..5bfa7ef 100644
--- a/src/mds/apitest/mdstipc_api.c
+++ b/src/mds/apitest/mdstipc_api.c
@@ -33,7 +33,6 @@ static MDS_CLIENT_MSG_FORMAT_VER gl_set_msg_fmt_ver;
MDS_SVC_ID svc_ids[3] = {2006, 2007, 2008};
-_Thread_local NCSMDS_INFO svc_to_mds_info;
pthread_mutex_t safe_printf_mutex = PTHREAD_MUTEX_INITIALIZER;
pthread_mutex_t gl_mutex = PTHREAD_MUTEX_INITIALIZER;
@@ -3513,6 +3512,7 @@ void tet_just_send_tp_11()
MDS_SVC_ID svcids[] = {NCSMDS_SVC_ID_EXTERNAL_MIN};
gl_vdest_indx = 0;
+ NCSMDS_INFO svc_to_mds_info;
char tmp[] = " Hi Receiver ";
TET_MDS_MSG *mesg;
mesg = (TET_MDS_MSG *)malloc(sizeof(TET_MDS_MSG));
@@ -8020,6 +8020,7 @@ void tet_direct_just_send_tp_9()
{
int FAIL = 0;
MDS_SVC_ID svcids[] = {NCSMDS_SVC_ID_EXTERNAL_MIN};
+ NCSMDS_INFO svc_to_mds_info;
char message[] = "Direct Message";
/*start up*/
@@ -8145,6 +8146,7 @@ void tet_direct_just_send_tp_11()
{
int FAIL = 0;
MDS_SVC_ID svcids[] = {NCSMDS_SVC_ID_EXTERNAL_MIN};
+ NCSMDS_INFO svc_to_mds_info;
char message[] = "Direct Message";
/*start up*/
@@ -9998,6 +10000,7 @@ void tet_direct_send_ack_tp_10()
{
int FAIL = 0;
MDS_SVC_ID svcids[] = {NCSMDS_SVC_ID_EXTERNAL_MIN};
+ NCSMDS_INFO svc_to_mds_info;
char message[] = "Direct Message";
/*start up*/
if (tet_initialise_setup(false)) {
@@ -10074,6 +10077,7 @@ void tet_direct_send_ack_tp_11()
{
int FAIL = 0;
MDS_SVC_ID svcids[] = {NCSMDS_SVC_ID_EXTERNAL_MIN};
+ NCSMDS_INFO svc_to_mds_info;
char message[] = "Direct Message";
/*start up*/
if (tet_initialise_setup(false)) {
@@ -11709,6 +11713,7 @@ void tet_direct_broadcast_to_svc_tp_8()
{
int FAIL = 0;
MDS_SVC_ID svcids[] = {NCSMDS_SVC_ID_EXTERNAL_MIN};
+ NCSMDS_INFO svc_to_mds_info;
/*Start up*/
if (tet_initialise_setup(false)) {
printf("\n Setup Initialisation has Failed \n");
diff --git a/src/mds/apitest/mdstipc_conf.c b/src/mds/apitest/mdstipc_conf.c
index c2d7d01..bf4c1de 100644
--- a/src/mds/apitest/mdstipc_conf.c
+++ b/src/mds/apitest/mdstipc_conf.c
@@ -25,7 +25,6 @@ extern int fill_syncparameters(int);
extern uint32_t mds_vdest_tbl_get_role(MDS_VDEST_ID vdest_id, V_DEST_RL
*role);
extern pthread_mutex_t gl_mds_library_mutex;
-extern _Thread_local NCSMDS_INFO svc_to_mds_info;
extern pthread_mutex_t safe_printf_mutex;
extern pthread_mutex_t gl_mutex;
@@ -418,7 +417,7 @@ uint32_t mds_service_install(MDS_HDL mds_hdl, MDS_SVC_ID svc_id,
bool mds_q_ownership, bool fail_no_active_sends)
{
int i;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
@@ -465,7 +464,7 @@ uint32_t mds_service_uninstall(MDS_HDL mds_hdl, MDS_SVC_ID
svc_id)
{
int i, j, k, FOUND;
uint32_t YES_ADEST;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
/*Find whether this Service is on Adest or Vdest*/
YES_ADEST = is_service_on_adest(mds_hdl, svc_id);
@@ -560,7 +559,7 @@ uint32_t mds_service_subscribe(MDS_HDL mds_hdl, MDS_SVC_ID svc_id,
{
int i, j, k, l, FOUND;
uint32_t YES_ADEST;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
/*Find whether this Service is on Adest or Vdest*/
YES_ADEST = is_service_on_adest(mds_hdl, svc_id);
@@ -746,7 +745,7 @@ uint32_t mds_service_redundant_subscribe(MDS_HDL mds_hdl, MDS_SVC_ID svc_id,
{
int i, j, k, l, FOUND;
uint32_t YES_ADEST;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
/*Find whether this Service is on Adest or Vdest*/
YES_ADEST = is_service_on_adest(mds_hdl, svc_id);
@@ -931,7 +930,7 @@ uint32_t mds_service_cancel_subscription(MDS_HDL mds_hdl, MDS_SVC_ID svc_id,
uint8_t num_svcs, MDS_SVC_ID *svc_ids)
{
int i, j, k, FOUND;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_CANCEL;
@@ -998,7 +997,7 @@ uint32_t mds_just_send(MDS_HDL mds_hdl, MDS_SVC_ID svc_id,
MDS_SVC_ID to_svc,
TET_MDS_MSG *message)
{
uint32_t rs;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_SEND;
@@ -1043,7 +1042,7 @@ uint32_t mds_send_get_ack(MDS_HDL mds_hdl, MDS_SVC_ID
svc_id, MDS_SVC_ID to_svc,
MDS_SEND_PRIORITY_TYPE priority, TET_MDS_MSG *message)
{
uint32_t rs;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_SEND;
@@ -1081,7 +1080,7 @@ uint32_t mds_send_get_response(MDS_HDL mds_hdl,
MDS_SVC_ID svc_id,
TET_MDS_MSG *message)
{
uint32_t rs;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
TET_MDS_MSG *rsp;
svc_to_mds_info.i_mds_hdl = mds_hdl;
@@ -1134,7 +1133,7 @@ uint32_t mds_send_get_redack(MDS_HDL mds_hdl, MDS_SVC_ID
svc_id,
TET_MDS_MSG *message)
{
uint32_t rs;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_SEND;
@@ -1170,7 +1169,7 @@ uint32_t mds_broadcast_to_svc(MDS_HDL mds_hdl, MDS_SVC_ID
svc_id,
TET_MDS_MSG *message)
{
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_SEND;
@@ -1195,7 +1194,7 @@ uint32_t mds_send_response(MDS_HDL mds_hdl, MDS_SVC_ID
svc_id,
TET_MDS_MSG *response)
{
uint32_t rs;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_SEND;
@@ -1236,7 +1235,7 @@ uint32_t mds_sendrsp_getack(MDS_HDL mds_hdl, MDS_SVC_ID
svc_id,
int64_t time_to_wait, TET_MDS_MSG *response)
{
uint32_t rs;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_SEND;
@@ -1277,7 +1276,7 @@ uint32_t mds_send_redrsp_getack(MDS_HDL mds_hdl,
MDS_SVC_ID svc_id,
int64_t time_to_wait, TET_MDS_MSG *response)
{
uint32_t rs;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_SEND;
@@ -1323,7 +1322,7 @@ uint32_t mds_direct_send_message(MDS_HDL mds_hdl,
MDS_SVC_ID svc_id,
{
uint32_t rs;
uint16_t direct_buff_len = 0;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
if (message) {
/*Allocating memory for the direct buffer*/
direct_buff = m_MDS_ALLOC_DIRECT_BUFF(strlen(message) + 1);
@@ -1427,7 +1426,7 @@ uint32_t mds_direct_response(MDS_HDL mds_hdl, MDS_SVC_ID
svc_id,
uint32_t rs;
char msg[] = "Resp Message";
uint16_t direct_buff_len;
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
/*Before Sending the Message: Allocate the Direct Buffer*/
direct_buff = m_MDS_ALLOC_DIRECT_BUFF(strlen(msg) + 1);
memset(direct_buff, 0, strlen(msg) + 1);
@@ -1511,7 +1510,7 @@ uint32_t mds_direct_broadcast_message(MDS_HDL mds_hdl,
MDS_SVC_ID svc_id,
MDS_SEND_PRIORITY_TYPE priority)
{
char msg[] = "Direct Message";
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
uint16_t direct_buff_len = 0;
/* if(msg)*/
{
@@ -1652,7 +1651,7 @@ uint32_t mds_service_retrieve(MDS_HDL mds_hdl, MDS_SVC_ID
svc_id,
SaDispatchFlagsT dispatchFlags)
{
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_RETRIEVE;
@@ -1682,7 +1681,7 @@ uint32_t mds_query_vdest_for_role(MDS_HDL mds_hdl,
MDS_SVC_ID svc_id,
MDS_DEST dest, MDS_SVC_ID query_svc_id,
V_DEST_QA anc)
{
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_QUERY_DEST;
@@ -1724,7 +1723,7 @@ uint32_t mds_query_vdest_for_anchor(MDS_HDL mds_hdl,
MDS_SVC_ID svc_id,
MDS_DEST dest, MDS_SVC_ID query_svc_id,
V_DEST_RL vdest_rl)
{
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_QUERY_DEST;
@@ -1768,7 +1767,7 @@ SUCCESSFULL");
uint32_t is_service_on_adest(MDS_HDL mds_hdl, MDS_SVC_ID svc_id)
{
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_svc_id = svc_id;
svc_to_mds_info.i_op = MDS_QUERY_PWE;
@@ -1780,7 +1779,7 @@ uint32_t is_service_on_adest(MDS_HDL mds_hdl, MDS_SVC_ID
svc_id)
}
uint32_t mds_service_query_for_pwe(MDS_HDL mds_hdl, MDS_SVC_ID svc_id)
{
- memset(&svc_to_mds_info, 0, sizeof(svc_to_mds_info));
+ NCSMDS_INFO svc_to_mds_info;
svc_to_mds_info.i_mds_hdl = mds_hdl;
svc_to_mds_info.i_op = MDS_QUERY_PWE;