diff --git a/exec/clm.c b/exec/clm.c index 128ee9b3..085c3ed9 100644 --- a/exec/clm.c +++ b/exec/clm.c @@ -199,10 +199,10 @@ static int clm_exec_init_fn (struct openais_config *openais_config) * Build local cluster node data structure */ thisClusterNode.nodeId = this_ip->sin_addr.s_addr; - memcpy (&thisClusterNode.nodeAddress.value, &this_ip->sin_addr, - sizeof (struct in_addr)); - thisClusterNode.nodeAddress.length = sizeof (struct in_addr); - strcpy ((char *)thisClusterNode.nodeName.value, (char *)inet_ntoa (this_ip->sin_addr)); + sprintf (thisClusterNode.nodeAddress.value, "%s", inet_ntoa (this_ip->sin_addr)); + thisClusterNode.nodeAddress.length = strlen (thisClusterNode.nodeAddress.value); + thisClusterNode.nodeAddress.family = SA_CLM_AF_INET; + sprintf (thisClusterNode.nodeName.value, "%s", inet_ntoa (this_ip->sin_addr)); thisClusterNode.nodeName.length = strlen ((char *)thisClusterNode.nodeName.value); thisClusterNode.member = 1; { diff --git a/test/testclm.c b/test/testclm.c index 7ebf30c3..1c26d730 100644 --- a/test/testclm.c +++ b/test/testclm.c @@ -48,8 +48,9 @@ void printSaClmNodeAddressT (SaClmNodeAddressT *nodeAddress) { int i; + printf ("family=%d - address=", nodeAddress->family); for (i = 0; i < nodeAddress->length; i++) { - printf ("%d.", nodeAddress->value[i]); + printf ("%c", nodeAddress->value[i]); } }