Hi Mahesh,

I see you are using constant HOST_NAME_MAX for node_name string.

Referring to following page, it states HOST_NAME_MAX value possibly "is
unspecified."
http://pubs.opengroup.org/onlinepubs/009695399/basedefs/limits.h.html
With _POSIX_HOST_NAME_MAX constant, the value is determined. Its value is
255.

I wonder it is safe to use HOST_NAME_MAX or not.

Regards, Vu.


>-----Original Message-----
>From: [email protected] [mailto:[email protected]]
>Sent: Friday, February 05, 2016 1:26 PM
>To: [email protected]; [email protected];
>[email protected]; [email protected]
>Cc: [email protected]
>Subject: [devel] [PATCH 1 of 3] MDS:TIPC include node name as a part of
>callback_info events [#1522]
>
> osaf/libs/core/include/mds_papi.h     |    8 ++-
> osaf/libs/core/mds/include/mds_core.h |    4 +-
> osaf/libs/core/mds/include/mds_dt.h   |    5 +-
> osaf/libs/core/mds/include/mds_dt2c.h |    6 +-
> osaf/libs/core/mds/mds_c_api.c        |   14 ++-
> osaf/libs/core/mds/mds_c_sndrcv.c     |    5 +
> osaf/libs/core/mds/mds_dt_common.c    |   49 ++++++++++----
> osaf/libs/core/mds/mds_dt_tipc.c      |  116
++++++++++++++++++++++++--------
>-
> osaf/libs/core/mds/mds_main.c         |   55 +++++++++++----
> 9 files changed, 188 insertions(+), 74 deletions(-)
>
>
>           This patch enhences the Opensaf Transport provides  Node Name of
the
>sender
>                        as part of ncsmds_callback_info
(NCSMDS_CALLBACK_INFO).
>
>                        This enhences implemented for  both TCP & TIPC
Transport.
>
>                        In addtional to TIPC list DEC_INFO, RECEIVE_INFO &
>DIRECT_RECEIVE,
>                        TCP Transport provides Node Name of the sender as
part of
>NODE_EVENT event also.
>
>                        Patch supports  in-serrvice upgrade  both TCP &
TIPC Transport
>(NOT YET TESTED).
>
>
>
>                         TIPC MDS transport will provide  part of
ncsmds_callback_info
>for follwing events :
>
> - MDS_CALLBACK_DEC_INFO
> - MDS_CALLBACK_RECEIVE_INFO
> - MDS_CALLBACK_DIRECT_RECEIVE_INFO
>
>
> Example :
>
> Feb  5 11:41:06 SC-1 osaflogd[21413]: LGS: mds_dec() node_name : SC-1
>evt.type :0 from ncsmds_callback_info
> Feb  5 11:41:06 SC-1 osaflogd[21413]: LGS: mds_rcv() node_name : SC-1
>evt.type :4 from ncsmds_callback_info
> Feb  5 11:41:06 SC-1 osaflogd[21413]: LGS: mds_dec() node_name : SC-2
>evt.type :0 from ncsmds_callback_info
> Feb  5 11:41:06 SC-1 osaflogd[21413]: LGS: mds_rcv() node_name : SC-2
>evt.type :0 from ncsmds_callback_info
>
>diff --git a/osaf/libs/core/include/mds_papi.h
>b/osaf/libs/core/include/mds_papi.h
>--- a/osaf/libs/core/include/mds_papi.h
>+++ b/osaf/libs/core/include/mds_papi.h
>@@ -700,6 +700,7 @@ typedef uint8_t *MDS_DIRECT_BUFF;
>               NCSCONTEXT o_msg;       /* New message resulting from decode
>*/
>               NODE_ID i_node_id;      /* Node id of the sender
*/
>               MDS_CLIENT_MSG_FORMAT_VER i_msg_fmt_ver;
>+              char i_node_name[HOST_NAME_MAX]; /* Node Name of the
>sender              */
>
>       } MDS_CALLBACK_DEC_INFO;
>
>@@ -732,6 +733,7 @@ unpack individual structure members. */
>               MDS_SVC_ID i_to_svc_id;
>               MDS_SEND_PRIORITY_TYPE i_priority;      /* Priority with
which
>this message was sent */
>               NODE_ID i_node_id;      /* Node id of the sender
*/
>+              char i_node_name[HOST_NAME_MAX]; /* Node Name of the
>sender              */
>
>               /* Local handle to the PWE of "svc_id". It is meaningful
only to
>"Global
>                  MDS services". Global MDS services are global to a
>"MDS_DEST" scope.
>@@ -764,6 +766,7 @@ unpack individual structure members. */
>               MDS_SVC_ID i_to_svc_id;
>               MDS_SEND_PRIORITY_TYPE i_priority;      /* Priority with
which
>this message was sent */
>               NODE_ID i_node_id;      /* Node id of the sender
*/
>+              char i_node_name[HOST_NAME_MAX]; /* Node Name of the
>sender              */
>
>               /* Local handle to the PWE of "svc_id". It is meaningful
only to
>"Global
>                  MDS services". Global MDS services are global to a
>"MDS_DEST" scope.
>@@ -835,8 +838,11 @@ unpack individual structure members. */
>               NCSMDS_NODE_CHG  node_chg;
>               NODE_ID node_id;
>               uint16_t addr_family;
>-              uint16_t length;
>+              uint16_t length; /* will be deprecated after few version */
>+              uint16_t ip_addr_len;
>               uint8_t ip_addr[INET6_ADDRSTRLEN];
>+              uint16_t i_node_name_len;
>+              char i_node_name[HOST_NAME_MAX]; /* Node Name of the
>sender */
>       } MDS_CALLBACK_NODE_EVENT_INFO;
>
>       typedef struct mds_callback_msg_loss_event_info {
>diff --git a/osaf/libs/core/mds/include/mds_core.h
>b/osaf/libs/core/mds/include/mds_core.h
>--- a/osaf/libs/core/mds/include/mds_core.h
>+++ b/osaf/libs/core/mds/include/mds_core.h
>@@ -106,9 +106,9 @@ typedef struct mds_mcm_sync_send_queue {
>               MDS_DEST adest;
>       } dest_sndrack_adest;   /*  Filled, when the sndrack and redrack is
>being sent to originator and checked when ack
>                                  is recd for the sent sndrack or redrack
*/
>-
>       struct mds_mcm_sync_send_queue *next_send;
>       MDS_CLIENT_MSG_FORMAT_VER msg_fmt_ver;
>+      char i_node_name[HOST_NAME_MAX]; /* Node Name of the sender*/
>
> } MDS_MCM_SYNC_SEND_QUEUE;
>
>@@ -287,6 +287,8 @@ MDS_SVC_INFO *mds_get_svc_info_by_hdl(MD
> typedef struct mds_mcm_cb {
>       MDS_DEST adest;
>       char adest_details[MDS_MAX_PROCESS_NAME_LEN]; /*
><node[slotno]:processname[pid]> */
>+      char node_name[HOST_NAME_MAX]; /* Node Name of this Node*/
>+      uint8_t node_name_len; /* configured Node Name len of this Node*/
>
>       /* List of all subscription results MDS_SUBSCRIPTION_RESULTS_INFO */
>       NCS_PATRICIA_TREE subtn_results;
>diff --git a/osaf/libs/core/mds/include/mds_dt.h
>b/osaf/libs/core/mds/include/mds_dt.h
>--- a/osaf/libs/core/mds/include/mds_dt.h
>+++ b/osaf/libs/core/mds/include/mds_dt.h
>@@ -73,8 +73,7 @@ typedef struct mdtm_reassembly_queue {
> } MDTM_REASSEMBLY_QUEUE;
>
> /* Defines regarding to the Send and receive buff sizes */
>-#define MDS_HDR_LEN         24        /* Mds_prot-4bit, Mds_version-2bit ,
Msg
>prior-2bit, Hdr_len-16bit, Seq_no-32bit, Enc_dec_type-2bit, Msg_snd_type-
>6bit,
>-                                 Pwe_id-16bit, Sndr_vdest_id-16bit,
>Sndr_svc_id-16bit, Rcvr_vdest_id-16bit, Rcvr_svc_id-16bit, Exch_id-32bit,
>App_Vers-16bit */
>+#define MDS_HDR_LEN         25        /* Mds_prot-4bit, Mds_version-2bit ,
>Msg prior-2bit, Hdr_len-16bit, Seq_no-32bit, Enc_dec_type-2bit,
>Msg_snd_type-6bit, Pwe_id-16bit, Sndr_vdest_id-16bit, Sndr_svc_id-16bit,
>Rcvr_vdest_id-16bit, Rcvr_svc_id-16bit, Exch_id-32bit, App_Vers-16bit
>node_name_len-8bit,  dynamic value node_name-<HOST_NAME_MAX>bits*/
>
> /* Following defines the positions of each field in the mds hdr */
> #define MDS_HEADER_PROT_VER_PRIOR_POSITION    0
>@@ -88,6 +87,8 @@ typedef struct mdtm_reassembly_queue {
> #define MDS_HEADER_RCVR_SVC_ID_POSITION       16
> #define MDS_HEADER_EXCHG_ID_POSITION          18
> #define MDS_HEADER_APP_VERSION_ID_POSITION    22
>+#define MDS_HEADER_NODE_NAME_LEN_POSITION     24
>+#define MDS_HEADER_NODE_NAME_POSITION         25
>
> #define MDTM_FRAG_HDR_LEN    8        /* Msg Seq_no-32bit, More Frag-1bit,
>Frag_num-15bit, Frag_size-16bit */
>
>diff --git a/osaf/libs/core/mds/include/mds_dt2c.h
>b/osaf/libs/core/mds/include/mds_dt2c.h
>--- a/osaf/libs/core/mds/include/mds_dt2c.h
>+++ b/osaf/libs/core/mds/include/mds_dt2c.h
>@@ -43,7 +43,7 @@ typedef uint8_t MDS_SVC_ARCHWORD_TYPE;       /
>  *    Version 0 uses 1400 bytes fragmentation.
>  *    Version 1 uses TIPC max msg (66000 bytes) fragmentation.
>  */
>-#define MDS_SELF_ARCHWORD ((MDS_SVC_ARCHWORD_TYPE)
>((MDS_WORD_SIZE_TYPE<<3) | 1))
>+#define MDS_SELF_ARCHWORD ((MDS_SVC_ARCHWORD_TYPE)
>((MDS_WORD_SIZE_TYPE<<3) | 2))
>
> typedef enum {
>       MDS_VIEW_NORMAL,
>@@ -106,6 +106,8 @@ typedef struct mds_data_recv {
>       MDS_CLIENT_MSG_FORMAT_VER msg_fmt_ver;  /* message format
>version specification */
>       MDS_SVC_PVT_SUB_PART_VER src_svc_sub_part_ver;
>       MDS_SVC_ARCHWORD_TYPE msg_arch_word;
>+      uint8_t src_node_name_len;
>+      char src_node_name[HOST_NAME_MAX]; /* Node Name of the
>sender/source*/
>       uint32_t src_seq_num;
>       pid_t pid;
>       uid_t uid;
>@@ -400,7 +402,7 @@ extern uint32_t mds_mcm_svc_down(PW_ENV_
>                             MDS_SVC_PVT_SUB_PART_VER svc_sub_part_ver,
>MDS_SVC_ARCHWORD_TYPE archword_type);
>
> /* NODE UP */
>-extern uint32_t mds_mcm_node_up(MDS_SVC_HDL local_svc_hdl, NODE_ID
>node_id, char *node_ip, uint16_t addr_family);
>+extern uint32_t mds_mcm_node_up(MDS_SVC_HDL local_svc_hdl, NODE_ID
>node_id, char *node_ip, uint16_t addr_family, char *node_name);
>
> /* NODE DOWN */
> extern uint32_t mds_mcm_node_down(MDS_SVC_HDL local_svc_hdl, NODE_ID
>node_id, uint16_t addr_family);
>diff --git a/osaf/libs/core/mds/mds_c_api.c
b/osaf/libs/core/mds/mds_c_api.c
>--- a/osaf/libs/core/mds/mds_c_api.c
>+++ b/osaf/libs/core/mds/mds_c_api.c
>@@ -2884,8 +2884,7 @@ else (entry exists)
>             2 - NCSCC_RC_FAILURE
>
> *********************************************************/
>-uint32_t mds_mcm_node_up(MDS_SVC_HDL local_svc_hdl, NODE_ID node_id,
>char *node_ip, uint16_t addr_family)
>-
>+uint32_t mds_mcm_node_up(MDS_SVC_HDL local_svc_hdl, NODE_ID node_id,
>char *node_ip, uint16_t addr_family, char *node_name)
> {
>       MDS_MCM_MSG_ELEM *event_msg = NULL;
>       MDS_SVC_INFO *local_svc_info = NULL;
>@@ -2929,13 +2928,18 @@ uint32_t mds_mcm_node_up(MDS_SVC_HDL loc
>       cbinfo->info.node_evt.node_id = node_id;
>       cbinfo->info.node_evt.addr_family = addr_family;
>       if (node_ip) {
>-              memcpy(cbinfo->info.node_evt.ip_addr, node_ip,
>INET6_ADDRSTRLEN);
>-              cbinfo->info.node_evt.length = strlen(node_ip);
>+              cbinfo->info.node_evt.ip_addr_len = strlen(node_ip);
>+              cbinfo->info.node_evt.length = cbinfo-
>>info.node_evt.ip_addr_len;
>+              memcpy(cbinfo->info.node_evt.ip_addr, node_ip, cbinfo-
>>info.node_evt.ip_addr_len);
>       }
>
>       m_MDS_LOG_INFO("MDTM: node up node_ip:%s, length:%d
>node_id:%u addr_family:%d msg_type:%d",
>-                      cbinfo->info.node_evt.ip_addr, cbinfo-
>>info.node_evt.length,
>+                      cbinfo->info.node_evt.ip_addr, cbinfo-
>>info.node_evt.ip_addr_len,
>                       cbinfo->info.node_evt.node_id, cbinfo-
>>info.node_evt.addr_family, cbinfo->info.node_evt.node_chg);
>+      if (node_name) {
>+              cbinfo->info.node_evt.i_node_name_len = strlen(node_name);
>+              strncpy(cbinfo->info.node_evt.i_node_name, node_name,
>cbinfo->info.node_evt.i_node_name_len);
>+      }
>
>       /* Post to mail box If Q Ownership is enabled Else Call user
callback */
>       if (local_svc_info->q_ownership == true) {
>diff --git a/osaf/libs/core/mds/mds_c_sndrcv.c
>b/osaf/libs/core/mds/mds_c_sndrcv.c
>--- a/osaf/libs/core/mds/mds_c_sndrcv.c
>+++ b/osaf/libs/core/mds/mds_c_sndrcv.c
>@@ -4289,6 +4289,7 @@ static uint32_t mds_mcm_process_recv_snd
>                       cbinfo.info.receive.i_to_svc_id = svccb->svc_id;
>                       cbinfo.info.receive.i_priority = recv->pri;
>                       cbinfo.info.receive.i_msg_fmt_ver = recv-
>>msg_fmt_ver;
>+                      strncpy(cbinfo.info.receive.i_node_name, recv-
>>src_node_name , recv->src_node_name_len);
>               } else if (recv->msg.encoding == MDS_ENC_TYPE_DIRECT_BUFF)
>{
>                       cbinfo.i_op = MDS_CALLBACK_DIRECT_RECEIVE;
>                       cbinfo.info.direct_receive.i_fr_anc =
recv->src_adest;
>@@ -4319,6 +4320,7 @@ static uint32_t mds_mcm_process_recv_snd
>                       cbinfo.info.direct_receive.i_to_svc_id =
svccb->svc_id;
>                       cbinfo.info.direct_receive.i_priority = recv->pri;
>                       cbinfo.info.direct_receive.i_msg_fmt_ver = recv-
>>msg_fmt_ver;
>+                      strncpy(cbinfo.info.direct_receive.i_node_name,
recv-
>>src_node_name , recv->src_node_name_len);
>               } else if (recv->msg.encoding == MDS_ENC_TYPE_CPY) {
>                       cbinfo.i_op = MDS_CALLBACK_RECEIVE;
>
>@@ -4346,6 +4348,7 @@ static uint32_t mds_mcm_process_recv_snd
>                       cbinfo.info.receive.i_to_svc_id = svccb->svc_id;
>                       cbinfo.info.receive.i_priority = recv->pri;
>                       cbinfo.info.receive.i_msg_fmt_ver = recv-
>>msg_fmt_ver;
>+                      strncpy(cbinfo.info.receive.i_node_name, recv-
>>src_node_name , recv->src_node_name_len);
>               } else {
>                       mds_mcm_free_msg_memory(recv->msg);
>                       return NCSCC_RC_FAILURE;
>@@ -4904,6 +4907,7 @@ static uint32_t mds_mcm_do_decode_full_o
>               cbinfo->info.dec.o_msg = orig_msg;
>
>               cbinfo->info.dec.i_msg_fmt_ver = recv_msg->msg_fmt_ver;
>+              strncpy(cbinfo->info.dec.i_node_name, recv_msg-
>>src_node_name , recv_msg->src_node_name_len);
>
>               m_MDS_LOG_DBG("MDS_SND_RCV : calling callback ptr\n");
>
>@@ -4923,6 +4927,7 @@ static uint32_t mds_mcm_do_decode_full_o
>               cbinfo->info.dec_flat.o_msg = orig_msg;
>
>               cbinfo->info.dec_flat.i_msg_fmt_ver = recv_msg->msg_fmt_ver;
>+              strncpy(cbinfo->info.dec_flat.i_node_name, recv_msg-
>>src_node_name , recv_msg->src_node_name_len);
>               m_MDS_LOG_DBG("MDS_SND_RCV : calling callback ptr\n");
>
>               if ((rc = svccb->cback_ptr(cbinfo)) != NCSCC_RC_SUCCESS) {
>diff --git a/osaf/libs/core/mds/mds_dt_common.c
>b/osaf/libs/core/mds/mds_dt_common.c
>--- a/osaf/libs/core/mds/mds_dt_common.c
>+++ b/osaf/libs/core/mds/mds_dt_common.c
>@@ -294,13 +294,7 @@ uint32_t mdtm_process_recv_message_commo
>
>                       return NCSCC_RC_FAILURE;
>               }
>-              /* Check whether mds header length received is not less than
>mds header length of this instance */
>-              if (len_mds_hdr < MDS_HDR_LEN) {
>-                      m_MDS_LOG_ERR
>-                          ("MDTM:Mds hdr len of recd msg (Non frag) = %d
is
>less than local mds hdr len = %d",
>-                           len_mds_hdr, MDS_HDR_LEN);
>-                      return NCSCC_RC_FAILURE;
>-              }
>+
>
>               data = &buffer[MDS_HEADER_PWE_ID_POSITION];
>
>@@ -412,9 +406,26 @@ uint32_t mdtm_process_recv_message_commo
>                       break;
>               }
>
>+              data = NULL;
>               data = &buffer[MDS_HEADER_APP_VERSION_ID_POSITION];
>               reassem_queue->recv.msg_fmt_ver =
>ncs_decode_16bit(&data);       /* For the version field */
>
>+              data = NULL;
>+              data = &buffer[MDS_HEADER_NODE_NAME_LEN_POSITION];
>+              reassem_queue->recv.src_node_name_len =
>ncs_decode_8bit(&data);
>+
>+               /* Check whether mds header length received is not less
than mds
>header length of this instance */
>+                if (len_mds_hdr < (MDS_HDR_LEN + reassem_queue-
>>recv.src_node_name_len)) {
>+                        m_MDS_LOG_ERR
>+                            ("MDTM:Mds hdr len of recd msg (Non frag) = %d
is less than
>local mds hdr len = %d",
>+                             len_mds_hdr, (MDS_HDR_LEN + reassem_queue-
>>recv.src_node_name_len));
>+                        return NCSCC_RC_FAILURE;
>+                }
>+
>+              data = NULL;
>+              data = &buffer[MDS_HEADER_NODE_NAME_POSITION];
>+              strncpy((char *)reassem_queue->recv.src_node_name, (char
>*)data, reassem_queue->recv.src_node_name_len);
>+
>               reassem_queue->recv.exchange_id = xch_id;
>               reassem_queue->next_frag_num = 0;
>               reassem_queue->recv.dest_svc_hdl = dest_svc_hdl;
>@@ -519,13 +530,6 @@ uint32_t mdtm_process_recv_message_commo
>                            transport_adest);
>                       return NCSCC_RC_FAILURE;
>               }
>-              /* Check whether mds header length received is not less than
>mds header length of this instance */
>-              if (len_mds_hdr < MDS_HDR_LEN) {
>-                      m_MDS_LOG_DBG
>-                          ("MDTM:Mds hdr len of recd msg(Frag first pkt) =
%d
>is less than local mds hdr len = %d",
>-                           len_mds_hdr, MDS_HDR_LEN);
>-                      return NCSCC_RC_FAILURE;
>-              }
>               data = &buffer[MDS_HEADER_PWE_ID_POSITION +
>MDTM_FRAG_HDR_LEN];
>
>               pwe_id = ncs_decode_16bit(&data);
>@@ -642,6 +646,23 @@ uint32_t mdtm_process_recv_message_commo
>               data = &buffer[MDS_HEADER_APP_VERSION_ID_POSITION +
>MDTM_FRAG_HDR_LEN];
>               reassem_queue->recv.msg_fmt_ver =
>ncs_decode_16bit(&data);       /* For the version field */
>
>+
>+              data = NULL;
>+              data = &buffer[MDS_HEADER_NODE_NAME_LEN_POSITION +
>MDTM_FRAG_HDR_LEN];
>+              reassem_queue->recv.src_node_name_len =
>ncs_decode_8bit(&data);
>+
>+              /* Check whether mds header length received is not less than
>mds header length of this instance */
>+              if (len_mds_hdr < (MDS_HDR_LEN + reassem_queue-
>>recv.src_node_name_len)) {
>+                      m_MDS_LOG_ERR
>+                              ("MDTM:Mds hdr len of recd msg ( frag) = %d
is
>less than local mds hdr len = %d",
>+                               len_mds_hdr, (MDS_HDR_LEN +
>reassem_queue->recv.src_node_name_len));
>+                      return NCSCC_RC_FAILURE;
>+                }
>+
>+                data = NULL;
>+                data = &buffer[MDS_HEADER_NODE_NAME_POSITION +
>MDTM_FRAG_HDR_LEN];
>+                strncpy((char *)reassem_queue->recv.src_node_name, (char
*)data,
>reassem_queue->recv.src_node_name_len);
>+
>               reassem_queue->recv.exchange_id = xch_id;
>               reassem_queue->next_frag_num = 2;
>               reassem_queue->recv.dest_svc_hdl = dest_svc_hdl;
>diff --git a/osaf/libs/core/mds/mds_dt_tipc.c
>b/osaf/libs/core/mds/mds_dt_tipc.c
>--- a/osaf/libs/core/mds/mds_dt_tipc.c
>+++ b/osaf/libs/core/mds/mds_dt_tipc.c
>@@ -710,9 +710,11 @@ static uint32_t mdtm_process_recv_events
>                                               assert(0);
>                                       }
>                               }
>-                      } else if (pfd[0].revents & POLLHUP) {  /* This
value is
>returned when the number of subscriptions made cross the tipc max_subscr
>limit, so no more connection to the tipc topserver is present(viz no more
>up/down events), so abort and exit the process */
>-                              m_MDS_LOG_CRITICAL
>-                                  ("MDTM: POLLHUP returned on Discovery
>Socket, No. of subscriptions=%d",
>+                      } else if (pfd[0].revents & POLLHUP) {
>+                              /* This value is returned when the number of
>subscriptions made cross the tipc max_subscr limit,
>+                                 so no more connection to the tipc
topserver
>is present(viz no more up/down events),
>+                                 so abort and exit the process */
>+                                 m_MDS_LOG_CRITICAL("MDTM: POLLHUP
>returned on Discovery Socket, No. of subscriptions=%d",
>                                    num_subscriptions);
>                               abort();        /* This means, the process
is use less
>as
>                                                  it has lost the
connectivity
>with the topology server
>@@ -980,7 +982,8 @@ static uint32_t mdtm_process_discovery_e
>                       } else {
>                               m_MDS_LOG_ERR("MDTM: Dropping  the svc
>event for svc_id = %s(%d), subscribed by "
>                                               "svc_id = %s(%d) as the TIPC
>NODEid is not in the prescribed range=0x%08x, SVC Event type=%d",
>-                                   get_svc_names(svc_id), svc_id,
>get_svc_names(m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl)),
>m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl), node, discovery_event);
>+                                              get_svc_names(svc_id),
svc_id,
>get_svc_names(m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl)),
>+
>       m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl), node,
>discovery_event);
>                               return NCSCC_RC_FAILURE;
>                       }
>
>       get_subtn_adest_details(m_MDS_GET_PWE_HDL_FROM_SVC_HDL(svc_
>hdl), m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl),
>@@ -988,26 +991,30 @@ static uint32_t mdtm_process_discovery_e
>
>                       if (TIPC_PUBLISHED == discovery_event) {
>                               m_MDS_LOG_NOTIFY("MDTM: svc up event for
>svc_id = %s(%d), subscri. by svc_id = %s(%d) pwe_id=%d Adest = %s",
>-                                   get_svc_names(svc_id), svc_id,
>get_svc_names(m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl)),
>m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl), pwe_id, adest_details);
>+                                              get_svc_names(svc_id),
svc_id,
>get_svc_names(m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl)),
>+
>       m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl), pwe_id, adest_details);
>
>                               if (NCSCC_RC_SUCCESS !=
>mds_mcm_svc_up(pwe_id, svc_id, role, scope,
>
vdest,
>policy, adest, 0, svc_hdl, subtn_ref_val,
>
>svc_sub_part_ver, archword_type)) {
>                                       m_MDS_LOG_ERR("SVC-UP Event
>processsing failed for svc_id = %s(%d), subscribed by svc_id = %s(%d)",
>-                                           get_svc_names(svc_id), svc_id,
>get_svc_names(m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl)),
>m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl));
>+                                           get_svc_names(svc_id), svc_id,
>get_svc_names(m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl)),
>+
>m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl));
>                                       return NCSCC_RC_FAILURE;
>                               }
>                               return NCSCC_RC_SUCCESS;
>                       } else if (TIPC_WITHDRAWN == discovery_event) {
>                               m_MDS_LOG_NOTIFY("MDTM: svc down event
>for svc_id = %s(%d), subscri. by svc_id = %s(%d) pwe_id=%d Adest = %s",
>-                                   get_svc_names(svc_id), svc_id,
>get_svc_names(m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl)),
>m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl), pwe_id, adest_details);
>+                                              get_svc_names(svc_id),
svc_id,
>get_svc_names(m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl)),
>+
>       m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl), pwe_id, adest_details);
>
>                               if (NCSCC_RC_SUCCESS !=
>mds_mcm_svc_down(pwe_id, svc_id, role, scope,
>
vdest,
>policy, adest, 0, svc_hdl,
>
>subtn_ref_val, svc_sub_part_ver,
>
>archword_type)) {
>                                       m_MDS_LOG_ERR("MDTM: SVC-DOWN
>Event processsing failed for svc_id = %s(%d), subscribed by svc_id =
%s(%d)\n",
>-                                           get_svc_names(svc_id), svc_id,
>get_svc_names(m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl)),
>m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl));
>+
get_svc_names(svc_id),
>svc_id, get_svc_names(m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl)),
>+
>       m_MDS_GET_SVC_ID_FROM_SVC_HDL(svc_hdl));
>                                       return NCSCC_RC_FAILURE;
>                               }
>                               return NCSCC_RC_SUCCESS;
>@@ -1089,7 +1096,18 @@ static uint32_t mdtm_process_discovery_e
>
>                       if (TIPC_PUBLISHED == discovery_event) {
>                               m_MDS_LOG_INFO("MDTM: Raising the NODE
>UP event for NODE id = %d", node_id);
>-                              return mds_mcm_node_up(svc_hdl, node_id,
>NULL, AF_TIPC);
>+                              uint32_t up_node_id;
>+                              if ((up_node_id =
>m_MDS_GET_NODE_ID_FROM_ADEST(m_MDS_GET_ADEST)) == node_id) {
>+                                      m_MDS_LOG_INFO("MDTM:NODE_UP
>for subtn_ref_val:%lu node_name:%s, node_id:%u addr_family:%d ",
>+
>       (uint64_t)subtn_ref_val,gl_mds_mcm_cb->node_name, node_id,
>AF_TIPC);
>+                                      return mds_mcm_node_up(svc_hdl,
>node_id, NULL, AF_TIPC, gl_mds_mcm_cb->node_name);
>+                              } else {
>+
>+                                      m_MDS_LOG_INFO("MDTM:NODE_UP
>for subtn_ref_val:%lu node_name:%s, node_id:%u addr_family:%d ",
>+
(uint64_t)subtn_ref_val, "REMOTE_NODE",
>node_id, AF_TIPC);
>+                                      return mds_mcm_node_up(svc_hdl,
>node_id, NULL, AF_TIPC, "REMOTE_NODE");
>+                              }
>+
>                       } else if (TIPC_WITHDRAWN == discovery_event) {
>                               m_MDS_LOG_INFO("MDTM: Raising the NODE
>DOWN event for NODE id = %d", node_id);
>                               return mds_mcm_node_down(svc_hdl,
>node_id, AF_TIPC);
>@@ -2024,6 +2042,15 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
>          send message
>        */
>       uint32_t status = 0;
>+      uint32_t sum_mds_hdr_plus_mdtm_hdr_plus_len;
>+      int version = req->msg_arch_word & 0x7;
>+      if (version > 1) {
>+              sum_mds_hdr_plus_mdtm_hdr_plus_len =
>(SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN + gl_mds_mcm_cb-
>>node_name_len);
>+      } else {
>+              /* sending message to Old version Node  */
>+              sum_mds_hdr_plus_mdtm_hdr_plus_len =
>(SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN - 1 );
>+              syslog(LOG_ERR, "LOG: inservice-testing sending message to
>Old version Node  hdr_plus_len : %d",
>sum_mds_hdr_plus_mdtm_hdr_plus_len);
>+      }
>
>       if (req->to == DESTINATION_SAME_PROCESS) {
>               MDS_DATA_RECV recv;
>@@ -2043,6 +2070,7 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
>               recv.msg_fmt_ver = req->msg_fmt_ver;
>               recv.src_svc_sub_part_ver = req->src_svc_sub_part_ver;
>
>+              strncpy((char *)recv.src_node_name, (char *)gl_mds_mcm_cb-
>>node_name, gl_mds_mcm_cb->node_name_len);
>               /* This is exclusively for the Bcast ENC and ENC_FLAT case
*/
>               if (recv.msg.encoding == MDS_ENC_TYPE_FULL) {
>                       ncs_dec_init_space(&recv.msg.data.fullenc_uba,
>recv.msg.data.fullenc_uba.start);
>@@ -2081,7 +2109,7 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
>
>               /* Only for the ack and not for any other message */
>               if (req->snd_type == MDS_SENDTYPE_ACK || req->snd_type ==
>MDS_SENDTYPE_RACK) {
>-                      uint8_t len =
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN;
>+                      uint8_t len = sum_mds_hdr_plus_mdtm_hdr_plus_len;
>                       uint8_t buffer_ack[len];
>
>                       /* Add mds_hdr */
>@@ -2124,7 +2152,6 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
>
>                               // determine fragment limit using a bit in
>destination archword
>                               int frag_size;
>-                              int version = req->msg_arch_word & 0x7;
>                               if (version > 0) {
>                                       // normal mode, use TIPC
>fragmentation
>                                       frag_size = MDS_DIRECT_BUF_MAXSIZE;
>@@ -2141,13 +2168,13 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
>                               } else {
>                                       uint8_t *p8;
>                                       uint8_t *body = NULL;
>-                                      body = calloc(1, len +
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN);
>+                                      body = calloc(1, len +
>sum_mds_hdr_plus_mdtm_hdr_plus_len);
>
>                                       p8 = (uint8_t
>*)m_MMGR_DATA_AT_START(usrbuf, len, (char *)
>-
(body
>+ SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN));
>-
>-                                      if (p8 != (body +
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN))
>-                                              memcpy((body +
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN), p8, len);
>+
(body
>+ sum_mds_hdr_plus_mdtm_hdr_plus_len));
>+
>+                                      if (p8 != (body +
>sum_mds_hdr_plus_mdtm_hdr_plus_len))
>+                                              memcpy((body +
>sum_mds_hdr_plus_mdtm_hdr_plus_len), p8, len);
>
>                                       if (NCSCC_RC_SUCCESS !=
>mdtm_add_mds_hdr(body, req)) {
>                                               m_MDS_LOG_ERR("MDTM:
>Unable to add the mds Hdr to the send msg\n");
>@@ -2157,7 +2184,7 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
>                                       }
>
>                                       if (NCSCC_RC_SUCCESS !=
>-                                          mdtm_add_frag_hdr(body, (len +
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN),
>+                                          mdtm_add_frag_hdr(body, (len +
>sum_mds_hdr_plus_mdtm_hdr_plus_len),
>                                                             frag_seq_num,
0)) {
>                                               m_MDS_LOG_ERR("MDTM:
>Unable to add the frag Hdr to the send msg\n");
>
>       m_MMGR_FREE_BUFR_LIST(usrbuf);
>@@ -2169,7 +2196,7 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
>                                           ("MDTM:Sending message with
>Service Seqno=%d, TO Dest_Tipc_id=<0x%08x:%u> ",
>                                            req->svc_seq_num, tipc_id.node,
>tipc_id.ref);
>
>-                                      len +=
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN;
>+                                      len +=
>sum_mds_hdr_plus_mdtm_hdr_plus_len;
>                                       if (((req->snd_type ==
>MDS_SENDTYPE_RBCAST) || (req->snd_type == MDS_SENDTYPE_BCAST)) &&
>                                                       (version > 0) &&
>(tipc_mcast_enabled)) {
>                                               m_MDS_LOG_DBG("MDTM:
>User Sending Multicast Data lenght=%d From svc_id = %s(%d) to svc_id =
>%s(%d)\n", len,
>@@ -2208,7 +2235,7 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
>               case MDS_ENC_TYPE_DIRECT_BUFF:
>                       {
>                               if (req->msg.data.buff_info.len >
>-                                  (MDTM_MAX_DIRECT_BUFF_SIZE -
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN)) {
>+                                  (MDTM_MAX_DIRECT_BUFF_SIZE -
>sum_mds_hdr_plus_mdtm_hdr_plus_len)) {
>                                       m_MDS_LOG_CRITICAL
>                                           ("MDTM: Passed pkt len is more
>than the single send direct buff\n");
>                                       mds_free_direct_buff(req-
>>msg.data.buff_info.buff);
>@@ -2219,7 +2246,7 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
>                                              req->msg.data.buff_info.len,
>get_svc_names(req->src_svc_id), req->src_svc_id, get_svc_names(req-
>>dest_svc_id), req->dest_svc_id);
>
>                               uint8_t *body = NULL;
>-                              body = calloc(1,
(req->msg.data.buff_info.len +
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN));
>+                              body = calloc(1,
(req->msg.data.buff_info.len +
>sum_mds_hdr_plus_mdtm_hdr_plus_len));
>
>                               if (NCSCC_RC_SUCCESS !=
>mdtm_add_mds_hdr(body, req)) {
>                                       m_MDS_LOG_ERR("MDTM: Unable to
>add the mds Hdr to the send msg\n");
>@@ -2229,19 +2256,19 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
>                               }
>                               if (NCSCC_RC_SUCCESS !=
>                                   mdtm_add_frag_hdr(body,
>-
req->msg.data.buff_info.len
>+ SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN,
>+
req->msg.data.buff_info.len
>+ sum_mds_hdr_plus_mdtm_hdr_plus_len,
>                                                     frag_seq_num, 0)) {
>                                       m_MDS_LOG_ERR("MDTM: Unable to
>add the frag Hdr to the send msg\n");
>                                       free(body);
>                                       mds_free_direct_buff(req-
>>msg.data.buff_info.buff);
>                                       return NCSCC_RC_FAILURE;
>                               }
>-
>       memcpy(&body[SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN], req-
>>msg.data.buff_info.buff,
>+
>       memcpy(&body[sum_mds_hdr_plus_mdtm_hdr_plus_len], req-
>>msg.data.buff_info.buff,
>                                      req->msg.data.buff_info.len);
>
>                               if (NCSCC_RC_SUCCESS !=
>                                   mdtm_sendto(body,
>-                                              (req->msg.data.buff_info.len
+
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN),
>+                                              (req->msg.data.buff_info.len
+
>sum_mds_hdr_plus_mdtm_hdr_plus_len),
>                                               tipc_id)) {
>                                       m_MDS_LOG_ERR("MDTM: Unable to
>send the msg thru TIPC\n");
>                                       free(body);
>@@ -2298,7 +2325,17 @@ uint32_t mdtm_frag_and_send(MDTM_SEND_RE
>       uint8_t *p8;
>       uint16_t i = 1;
>       uint16_t frag_val = 0;
>-      int max_send_pkt_size = frag_size +
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN;
>+      uint32_t sum_mds_hdr_plus_mdtm_hdr_plus_len;
>+      int version = req->msg_arch_word & 0x7;
>+
>+      if (version > 1) {
>+              sum_mds_hdr_plus_mdtm_hdr_plus_len =
>(SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN + gl_mds_mcm_cb-
>>node_name_len);
>+      } else {
>+              sum_mds_hdr_plus_mdtm_hdr_plus_len =
>(SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN - 1 );
>+              syslog(LOG_ERR, "LOG: inservice-testing sending message to
>Old version Node  hdr_plus_len : %d",
>sum_mds_hdr_plus_mdtm_hdr_plus_len);
>+      }
>+
>+      int max_send_pkt_size = frag_size +
>sum_mds_hdr_plus_mdtm_hdr_plus_len;
>
>       switch (req->msg.encoding) {
>       case MDS_ENC_TYPE_FULL:
>@@ -2347,11 +2384,11 @@ uint32_t mdtm_frag_and_send(MDTM_SEND_RE
>                       body = calloc(1, len_buf);
>                       if (i == 1) {
>                               p8 = (uint8_t
>*)m_MMGR_DATA_AT_START(usrbuf,
>-                                                                (len_buf -
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN),
>-                                                                (char
*)(body
>+ SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN));
>-
>-                              if (p8 != (body +
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN))
>-                                      memcpy((body +
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN), p8, (len_buf -
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN));
>+                                                                (len_buf -
>sum_mds_hdr_plus_mdtm_hdr_plus_len),
>+                                                                (char
*)(body
>+ sum_mds_hdr_plus_mdtm_hdr_plus_len));
>+
>+                              if (p8 != (body +
>sum_mds_hdr_plus_mdtm_hdr_plus_len))
>+                                      memcpy((body +
>sum_mds_hdr_plus_mdtm_hdr_plus_len), p8, (len_buf -
>sum_mds_hdr_plus_mdtm_hdr_plus_len));
>
>                               if (NCSCC_RC_SUCCESS !=
>mdtm_add_mds_hdr(body, req)) {
>                                       m_MDS_LOG_ERR("MDTM: frg MDS hdr
>addition failed\n");
>@@ -2370,9 +2407,9 @@ uint32_t mdtm_frag_and_send(MDTM_SEND_RE
>                                   ("MDTM:Sending message with Service
>Seqno=%d, Fragment Seqnum=%d, frag_num=%d, TO
>Dest_Tipc_id=<0x%08x:%u>",
>                                    req->svc_seq_num, seq_num, frag_val,
>id.node, id.ref);
>                               mdtm_sendto(body, len_buf, id);
>-                              m_MMGR_REMOVE_FROM_START(&usrbuf,
>len_buf - SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN);
>+                              m_MMGR_REMOVE_FROM_START(&usrbuf,
>len_buf - sum_mds_hdr_plus_mdtm_hdr_plus_len);
>                               free(body);
>-                              len = len - (len_buf -
>SUM_MDS_HDR_PLUS_MDTM_HDR_PLUS_LEN);
>+                              len = len - (len_buf -
>sum_mds_hdr_plus_mdtm_hdr_plus_len);
>                       } else {
>                               p8 = (uint8_t
>*)m_MMGR_DATA_AT_START(usrbuf, len_buf -
>MDTM_FRAG_HDR_PLUS_LEN_2,
>                                                                 (char
*)(body
>+ MDTM_FRAG_HDR_PLUS_LEN_2));
>@@ -2533,6 +2570,16 @@ static uint32_t mdtm_mcast_sendto(void *
> static uint32_t mdtm_add_mds_hdr(uint8_t *buffer, MDTM_SEND_REQ *req)
> {
>       uint8_t prot_ver = 0, enc_snd_type = 0;
>+      uint16_t mds_hdr_len;
>+      int version = req->msg_arch_word & 0x7;
>+      if (version > 1) {
>+              mds_hdr_len = (MDS_HDR_LEN + gl_mds_mcm_cb-
>>node_name_len);
>+      } else {
>+              /* Old MDS_HDR_LEN = 24 */
>+              mds_hdr_len  = (MDS_HDR_LEN - 1);
>+              syslog(LOG_ERR, "LOG: inservice-testing sending message to
>Old version Node  mds_hdr_len : %d", mds_hdr_len);
>+      }
>+
> #ifdef MDS_CHECKSUM_ENABLE_FLAG
>       uint8_t zero_8 = 0;
> #endif
>@@ -2564,7 +2611,7 @@ static uint32_t mdtm_add_mds_hdr(uint8_t
>
>       /* MDS HDR */
>       ncs_encode_8bit(&ptr, prot_ver);
>-      ncs_encode_16bit(&ptr, (uint16_t)MDS_HDR_LEN);  /* Will be
>updated if any additional options are being added at the end */
>+      ncs_encode_16bit(&ptr, (uint16_t)mds_hdr_len);  /* Will be
>updated if any additional options are being added at the end */
>       ncs_encode_32bit(&ptr, req->svc_seq_num);
>       ncs_encode_8bit(&ptr, enc_snd_type);
>       ncs_encode_16bit(&ptr, req->src_pwe_id);
>@@ -2594,7 +2641,10 @@ static uint32_t mdtm_add_mds_hdr(uint8_t
>
>       ncs_encode_32bit(&ptr, xch_id);
>       ncs_encode_16bit(&ptr, req->msg_fmt_ver);       /* New field */
>-
>+      if (version > 1) {
>+              ncs_encode_8bit(&ptr, gl_mds_mcm_cb->node_name_len); /*
>New field 1 */
>+              ncs_encode_octets(&ptr, (uint8_t *)gl_mds_mcm_cb-
>>node_name, gl_mds_mcm_cb->node_name_len); /* New field 2 */
>+      }
>       return NCSCC_RC_SUCCESS;
> }
>
>diff --git a/osaf/libs/core/mds/mds_main.c b/osaf/libs/core/mds/mds_main.c
>--- a/osaf/libs/core/mds/mds_main.c
>+++ b/osaf/libs/core/mds/mds_main.c
>@@ -395,15 +395,47 @@ uint32_t mds_lib_req(NCS_LIB_REQ_INFO *r
>                       }
>               }
>
>-              /* Get tipc_mcast_enabled */
>-              if ((ptr = getenv("MDS_TIPC_MCAST_ENABLED")) != NULL) {
>-                      tipc_mcast_enabled = atoi(ptr);
>-                      if (tipc_mcast_enabled != false)
>-                              tipc_mcast_enabled = true;
>-
>-                      m_MDS_LOG_DBG("MDS: TIPC_MCAST_ENABLED: %d
>Set argument \n",tipc_mcast_enabled);
>+#ifdef ENABLE_TIPC_TRANSPORT
>+              int rc;
>+              struct stat sockStat;
>+              FILE *fp;
>+
>+              rc = stat(MDS_MDTM_CONNECT_PATH, &sockStat);
>+              if (rc != 0) {
>+                      /* dtm intra server not exists */
>+                      tipc_mode_enabled = true;
>               }
>
>+              if (tipc_mode_enabled) {
>+                      /* Get tipc_mcast_enabled */
>+                      if ((ptr = getenv("MDS_TIPC_MCAST_ENABLED")) !=
>NULL) {
>+                              tipc_mcast_enabled = atoi(ptr);
>+                              if (tipc_mcast_enabled != false)
>+                                      tipc_mcast_enabled = true;
>+
>+                              m_MDS_LOG_DBG("MDS:
>TIPC_MCAST_ENABLED: %d  Set argument \n",tipc_mcast_enabled);
>+                      }
>+
>+              }
>+#endif
>+              fp = fopen(PKGSYSCONFDIR "/node_name", "r");
>+              if (fp == NULL) {
>+                      LOG_ER("MDS:TIPC Could not open file  node_name ");
>+                      mds_mcm_destroy();
>+                      osaf_mutex_unlock_ordie(&gl_mds_library_mutex);
>+                      return m_LEAP_DBG_SINK(NCSCC_RC_FAILURE);
>+              }
>+              if (EOF == fscanf(fp, "%s", gl_mds_mcm_cb->node_name)) {
>+                      fclose(fp);
>+                      LOG_ER("MDS:TIPC Could not get node name ");
>+                      mds_mcm_destroy();
>+                      osaf_mutex_unlock_ordie(&gl_mds_library_mutex);
>+                      return m_LEAP_DBG_SINK(NCSCC_RC_FAILURE);
>+              }
>+              fclose(fp);
>+              gl_mds_mcm_cb->node_name_len =
>(uint8_t)strlen(gl_mds_mcm_cb->node_name);
>+              m_MDS_LOG_DBG("MDS:TIPC config->node_name : %s",
>gl_mds_mcm_cb->node_name);
>+
>               /*  to use cluster id in mds prefix? */
>
>               /* Get gl_mds_log_level */
>@@ -599,15 +631,6 @@ uint32_t mds_lib_req(NCS_LIB_REQ_INFO *r
> void mds_init_transport(void)
> {
> #ifdef ENABLE_TIPC_TRANSPORT
>-      int rc;
>-      struct stat sockStat;
>-
>-      rc = stat(MDS_MDTM_CONNECT_PATH, &sockStat);
>-      if (rc != 0) {
>-              /* dtm intra server not exists */
>-              tipc_mode_enabled = true;
>-      }
>-
>       if (tipc_mode_enabled) {
>               mds_mdtm_init = mdtm_tipc_init;
>               mds_mdtm_destroy = mdtm_tipc_destroy;
>
>---------------------------------------------------------------------------
---
>Site24x7 APM Insight: Get Deep Visibility into Application Performance
>APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
>Monitor end-to-end web transactions and take corrective actions now
>Troubleshoot faster and improve end-user experience. Signup Now!
>http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
>_______________________________________________
>Opensaf-devel mailing list
>[email protected]
>https://lists.sourceforge.net/lists/listinfo/opensaf-devel


------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to