diff --git a/hal/src/HAL.cpp b/hal/src/HAL.cpp
index d1d10fd..e94348a 100644
--- a/hal/src/HAL.cpp
+++ b/hal/src/HAL.cpp
@@ -40,7 +40,7 @@
 
 /* External Includes */
 #include <cutils/log.h>
-#include <string>
+#include <cstring>
 #include <sys/socket.h>
 #include <sys/types.h>
 #include <vector>
@@ -407,6 +407,8 @@
     LocalLogBuffer::FunctionLog fl(__func__);
     fl.addArg("prefixes", prefixesStr);
 
+    memset(&res,0,sizeof(BoolResult));
+
     if (!isInitialized()) {
         BoolResult res = makeInputCheckFailure("Not initialized");
     } else if(prefixesStr.size() < 1) {
diff --git a/ipacm/src/IPACM_ConntrackClient.cpp b/ipacm/src/IPACM_ConntrackClient.cpp
index d8f7f73..3eab6fa 100644
--- a/ipacm/src/IPACM_ConntrackClient.cpp
+++ b/ipacm/src/IPACM_ConntrackClient.cpp
@@ -174,6 +174,12 @@
 	uint32_t ipv4_addr;
 	struct ifreq ifr;
 
+	/* retrieve bridge interface ipv4 address */
+	memset(&ifr, 0, sizeof(struct ifreq));
+	ifr.ifr_addr.sa_family = AF_INET;
+	(void)strlcpy(ifr.ifr_name, IPACM_Iface::ipacmcfg->ipa_virtual_iface_name, sizeof(ifr.ifr_name));
+	IPACMDBG("bridge interface name (%s)\n", ifr.ifr_name);
+
 	if(strlen(IPACM_Iface::ipacmcfg->ipa_virtual_iface_name) >= sizeof(ifr.ifr_name))
 	{
 		IPACMERR("interface name overflows: len %zu\n",
@@ -182,12 +188,6 @@
 		return -1;
 	}
 
-	/* retrieve bridge interface ipv4 address */
-	memset(&ifr, 0, sizeof(struct ifreq));
-	ifr.ifr_addr.sa_family = AF_INET;
-	(void)strlcpy(ifr.ifr_name, IPACM_Iface::ipacmcfg->ipa_virtual_iface_name, sizeof(ifr.ifr_name));
-	IPACMDBG("bridge interface name (%s)\n", ifr.ifr_name);
-
 	ret = ioctl(fd, SIOCGIFADDR, &ifr);
 	if (ret < 0)
 	{
@@ -217,7 +217,7 @@
 
 	nfct_filter_add_attr(filter, NFCT_FILTER_SRC_IPV4, &filter_ipv4);
 
-  return 0;
+	return 0;
 }
 
 int IPACM_ConntrackClient::IPA_Conntrack_Filters_Ignore_Local_Iface
@@ -387,7 +387,6 @@
 
 void* IPACM_ConntrackClient::UDPConnTimeoutUpdate(void *ptr)
 {
-
 	NatApp *nat_inst = NULL;
 	ptr = NULL;
 #ifdef IPACM_DEBUG
@@ -469,7 +468,7 @@
 	}
 
 	/* Register callback with netfilter handler */
-	IPACMDBG_H("tcp handle:%p, fd:%d\n", pClient->tcp_hdl, nfct_fd(pClient->tcp_hdl));
+	IPACMDBG_H("tcp handle:%pK, fd:%d\n", pClient->tcp_hdl, nfct_fd(pClient->tcp_hdl));
 #ifndef CT_OPT
 	nfct_callback_register(pClient->tcp_hdl,
 			(nf_conntrack_msg_type)	(NFCT_T_UPDATE | NFCT_T_DESTROY | NFCT_T_NEW),
@@ -560,7 +559,7 @@
 	}
 
 	/* Register callback with netfilter handler */
-	IPACMDBG_H("udp handle:%p, fd:%d\n", pClient->udp_hdl, nfct_fd(pClient->udp_hdl));
+	IPACMDBG_H("udp handle:%pK, fd:%d\n", pClient->udp_hdl, nfct_fd(pClient->udp_hdl));
 	nfct_callback_register(pClient->udp_hdl,
 			(nf_conntrack_msg_type)(NFCT_T_NEW | NFCT_T_DESTROY),
 			IPAConntrackEventCB,
@@ -687,7 +686,7 @@
 		if(ret == -1)
 		{
 			PERROR("unable to attach the filter to udp handle\n");
-			IPACMERR("udp handle:%p, fd:%d Error: %d\n",pClient->udp_hdl, nfct_fd(pClient->udp_hdl), ret);
+			IPACMERR("udp handle:%pK, fd:%d Error: %d\n",pClient->udp_hdl, nfct_fd(pClient->udp_hdl), ret);
 			return;
 		}
 	}
@@ -732,7 +731,7 @@
 		if(ret == -1)
 		{
 			PERROR("unable to attach the filter to tcp handle\n");
-			IPACMERR("tcp handle:%p, fd:%d Error: %d\n",pClient->tcp_hdl, nfct_fd(pClient->tcp_hdl), ret);
+			IPACMERR("tcp handle:%pK, fd:%d Error: %d\n",pClient->tcp_hdl, nfct_fd(pClient->tcp_hdl), ret);
 			return;
 		}
 	}
diff --git a/ipacm/src/IPACM_ConntrackListener.cpp b/ipacm/src/IPACM_ConntrackListener.cpp
index e02ca10..4a0c1c1 100644
--- a/ipacm/src/IPACM_ConntrackListener.cpp
+++ b/ipacm/src/IPACM_ConntrackListener.cpp
@@ -387,38 +387,32 @@
 
 	if(isCTReg == false)
 	{
-		if(!tcp_thread)
+		ret = pthread_create(&tcp_thread, NULL, IPACM_ConntrackClient::TCPRegisterWithConnTrack, NULL);
+		if(0 != ret)
 		{
-			ret = pthread_create(&tcp_thread, NULL, IPACM_ConntrackClient::TCPRegisterWithConnTrack, NULL);
-			if(0 != ret)
-			{
-				IPACMERR("unable to create TCP conntrack event listner thread\n");
-				PERROR("unable to create TCP conntrack\n");
-				return -1;
-			}
-
-			IPACMDBG("created TCP conntrack event listner thread\n");
-			if(pthread_setname_np(tcp_thread, "tcp ct listener") != 0)
-			{
-				IPACMERR("unable to set thread name\n");
-			}
+			IPACMERR("unable to create TCP conntrack event listner thread\n");
+			PERROR("unable to create TCP conntrack\n");
+			goto error;
 		}
 
-		if(!udp_thread)
+		IPACMDBG("created TCP conntrack event listner thread\n");
+		if(pthread_setname_np(tcp_thread, "tcp ct listener") != 0)
 		{
-			ret = pthread_create(&udp_thread, NULL, IPACM_ConntrackClient::UDPRegisterWithConnTrack, NULL);
-			if(0 != ret)
-			{
-				IPACMERR("unable to create UDP conntrack event listner thread\n");
-				PERROR("unable to create UDP conntrack\n");
-				goto error;
-			}
+			IPACMERR("unable to set thread name\n");
+		}
 
-			IPACMDBG("created UDP conntrack event listner thread\n");
-			if(pthread_setname_np(udp_thread, "udp ct listener") != 0)
-			{
-				IPACMERR("unable to set thread name\n");
-			}
+		ret = pthread_create(&udp_thread, NULL, IPACM_ConntrackClient::UDPRegisterWithConnTrack, NULL);
+		if(0 != ret)
+		{
+			IPACMERR("unable to create UDP conntrack event listner thread\n");
+			PERROR("unable to create UDP conntrack\n");
+			goto error;
+		}
+
+		IPACMDBG("created UDP conntrack event listner thread\n");
+		if(pthread_setname_np(udp_thread, "udp ct listener") != 0)
+		{
+			IPACMERR("unable to set thread name\n");
 		}
 
 		isCTReg = true;
@@ -436,21 +430,18 @@
 
 	if(isNatThreadStart == false)
 	{
-		if(!udpcto_thread)
+		ret = pthread_create(&udpcto_thread, NULL, IPACM_ConntrackClient::UDPConnTimeoutUpdate, NULL);
+		if(0 != ret)
 		{
-			ret = pthread_create(&udpcto_thread, NULL, IPACM_ConntrackClient::UDPConnTimeoutUpdate, NULL);
-			if(0 != ret)
-			{
-				IPACMERR("unable to create udp conn timeout thread\n");
-				PERROR("unable to create udp conn timeout\n");
-				goto error;
-			}
+			IPACMERR("unable to create udp conn timeout thread\n");
+			PERROR("unable to create udp conn timeout\n");
+			goto error;
+		}
 
-			IPACMDBG("created upd conn timeout thread\n");
-			if(pthread_setname_np(udpcto_thread, "udp conn timeout") != 0)
-			{
-				IPACMERR("unable to set thread name\n");
-			}
+		IPACMDBG("created upd conn timeout thread\n");
+		if(pthread_setname_np(udpcto_thread, "udp conn timeout") != 0)
+		{
+			IPACMERR("unable to set thread name\n");
 		}
 
 		isNatThreadStart = true;
diff --git a/ipacm/src/IPACM_OffloadManager.cpp b/ipacm/src/IPACM_OffloadManager.cpp
index d872222..9be019f 100644
--- a/ipacm/src/IPACM_OffloadManager.cpp
+++ b/ipacm/src/IPACM_OffloadManager.cpp
@@ -345,8 +345,14 @@
 	RET result = SUCCESS;
 
 	/* if interface name is NULL, default route is removed */
-	IPACMDBG_H("setUpstream upstream_name(%s), ipv4-fam(%d) ipv6-fam(%d)\n", upstream_name, gw_addr_v4.fam, gw_addr_v6.fam);
-
+	if(upstream_name != NULL)
+	{
+		IPACMDBG_H("setUpstream upstream_name(%s), ipv4-fam(%d) ipv6-fam(%d)\n", upstream_name, gw_addr_v4.fam, gw_addr_v6.fam);
+	}
+	else
+	{
+		IPACMDBG_H("setUpstream clean upstream_name for ipv4-fam(%d) ipv6-fam(%d)\n", gw_addr_v4.fam, gw_addr_v6.fam);
+	}
 	if(upstream_name == NULL)
 	{
 		if (default_gw_index == INVALID_IFACE) {
@@ -354,12 +360,12 @@
 			return FAIL_INPUT_CHECK;
 		}
 		if (gw_addr_v4.fam == V4 && upstream_v4_up == true) {
-			IPACMDBG_H("clean upstream(%s) for ipv4-fam(%d) upstream_v4_up(%d)\n", upstream_name, gw_addr_v4.fam, upstream_v4_up);
+			IPACMDBG_H("clean upstream for ipv4-fam(%d) upstream_v4_up(%d)\n", gw_addr_v4.fam, upstream_v4_up);
 			post_route_evt(IPA_IP_v4, default_gw_index, IPA_WAN_UPSTREAM_ROUTE_DEL_EVENT, gw_addr_v4);
 			upstream_v4_up = false;
 		}
 		if (gw_addr_v6.fam == V6 && upstream_v6_up == true) {
-			IPACMDBG_H("clean upstream(%s) for ipv6-fam(%d) upstream_v6_up(%d)\n", upstream_name, gw_addr_v6.fam, upstream_v6_up);
+			IPACMDBG_H("clean upstream for ipv6-fam(%d) upstream_v6_up(%d)\n", gw_addr_v6.fam, upstream_v6_up);
 			post_route_evt(IPA_IP_v6, default_gw_index, IPA_WAN_UPSTREAM_ROUTE_DEL_EVENT, gw_addr_v6);
 			upstream_v6_up = false;
 		}
