[IOT-1528]update file path and remove static analysis warring
authorbg.chun <bg.chun@samsung.com>
Wed, 9 Nov 2016 08:49:16 +0000 (17:49 +0900)
committerDave Thaler <dthaler@microsoft.com>
Fri, 18 Nov 2016 03:31:33 +0000 (03:31 +0000)
update file path(ifaddrs.x -> caifaddrs.x)
and fix netlink usage for remove static analysis warring

Change-Id: I672d9ba1250710cc10c66cbbde56b6b12afc15e8
Signed-off-by: bg.chun <bg.chun@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/14337
Reviewed-by: Uze Choi <uzchoi@samsung.com>
Tested-by: jenkins-iotivity <jenkins-iotivity@opendaylight.org>
Reviewed-by: Rick Bell <richard.s.bell@intel.com>
Reviewed-by: Jaehong Jo <jaehong.jo@samsung.com>
Reviewed-by: Ashok Babu Channa <ashok.channa@samsung.com>
Reviewed-by: George Nash <george.nash@intel.com>
Reviewed-by: Dave Thaler <dthaler@microsoft.com>
resource/csdk/connectivity/src/ip_adapter/android/SConscript
resource/csdk/connectivity/src/ip_adapter/android/caifaddrs.c [moved from resource/csdk/connectivity/src/ip_adapter/android/ifaddrs.c with 89% similarity]
resource/csdk/connectivity/src/ip_adapter/android/caifaddrs.h [moved from resource/csdk/connectivity/src/ip_adapter/android/ifaddrs.h with 95% similarity]
resource/csdk/connectivity/src/ip_adapter/android/caipnwmonitor.c
resource/csdk/connectivity/src/ip_adapter/linux/caipnwmonitor.c
resource/csdk/connectivity/src/ip_adapter/tizen/caipnwmonitor.c

index b1a6a52..9e33ff5 100644 (file)
@@ -8,6 +8,6 @@ import os.path
 env.AppendUnique(CPPPATH = [ os.path.join(src_dir, 'android') ])
 
 src_files = [ 'caipnwmonitor.c',
-              'ifaddrs.c' ]
+              'caifaddrs.c' ]
 
 Return('src_files')
@@ -1,6 +1,6 @@
 /******************************************************************
 *
-* Copyright 2014 Samsung Electronics All Rights Reserved.
+* Copyright 2016 Samsung Electronics All Rights Reserved.
 *
 *
 *
@@ -18,7 +18,7 @@
 *
 ******************************************************************/
 
-#include "ifaddrs.h"
+#include "caifaddrs.h"
 
 #include <stdbool.h>
 #include <string.h>
@@ -149,10 +149,21 @@ CAResult_t CAGetIfaddrsUsingNetlink(struct ifaddrs **ifap)
     while (1)
     {
         char recvBuf[NETLINK_MESSAGE_LENGTH] = {0};
-        int len = recv(netlinkFd, recvBuf, sizeof(recvBuf), 0);
-        struct nlmsghdr *recvMsg = (struct nlmsghdr*)recvBuf;
+        struct nlmsghdr *recvMsg = NULL;
         struct ifaddrs *node = NULL;
-        for (; NLMSG_OK(recvMsg, len); recvMsg = NLMSG_NEXT(recvMsg, len))
+        struct sockaddr_nl sa = { .nl_family = 0 };
+        struct iovec iov = { .iov_base = recvBuf,
+                         .iov_len = sizeof (recvBuf) };
+
+        struct msghdr msg = { .msg_name = (void *)&sa,
+                          .msg_namelen = sizeof (sa),
+                          .msg_iov = &iov,
+                          .msg_iovlen = 1 };
+
+        ssize_t len = recvmsg(netlinkFd, &msg, 0);
+
+        for (recvMsg = (struct nlmsghdr *)recvBuf; NLMSG_OK(recvMsg, len);
+             recvMsg = NLMSG_NEXT(recvMsg, len))
         {
             switch (recvMsg->nlmsg_type)
             {
@@ -200,4 +211,4 @@ exit:
         return CA_SOCKET_OPERATION_FAILED;
     }
     return CA_STATUS_OK;
-}
\ No newline at end of file
+}
@@ -1,6 +1,6 @@
 /******************************************************************
 *
-* Copyright 2014 Samsung Electronics All Rights Reserved.
+* Copyright 2016 Samsung Electronics All Rights Reserved.
 *
 *
 *
index a93c43c..5908042 100644 (file)
@@ -39,7 +39,7 @@
 #include "oic_malloc.h"
 #include "oic_string.h"
 #include "org_iotivity_ca_CaIpInterface.h"
-#include "ifaddrs.h"
+#include "caifaddrs.h"
 
 #define TAG "OIC_CA_IP_MONITOR"
 #define NETLINK_MESSAGE_LENGTH  (4096)
@@ -195,7 +195,7 @@ u_arraylist_t *CAFindInterfaceChange()
                           .msg_iov = &iov,
                           .msg_iovlen = 1 };
 
-    size_t len = recvmsg(caglobals.ip.netlinkFd, &msg, 0);
+    ssize_t len = recvmsg(caglobals.ip.netlinkFd, &msg, 0);
     return NULL;
 }
 
index 581fdb2..08fc724 100644 (file)
@@ -325,7 +325,7 @@ u_arraylist_t *CAFindInterfaceChange()
                           .msg_iov = &iov,
                           .msg_iovlen = 1 };
 
-    size_t len = recvmsg(caglobals.ip.netlinkFd, &msg, 0);
+    ssize_t len = recvmsg(caglobals.ip.netlinkFd, &msg, 0);
 
     for (nh = (struct nlmsghdr *)buf; NLMSG_OK(nh, len); nh = NLMSG_NEXT(nh, len))
     {
index 5486f32..8e0de54 100644 (file)
@@ -160,7 +160,7 @@ u_arraylist_t *CAFindInterfaceChange()
                           .msg_iov = &iov,
                           .msg_iovlen = 1 };
 
-    size_t len = recvmsg(caglobals.ip.netlinkFd, &msg, 0);
+    ssize_t len = recvmsg(caglobals.ip.netlinkFd, &msg, 0);
 
     for (struct nlmsghdr *nh = (struct nlmsghdr *)buf; NLMSG_OK(nh, len); nh = NLMSG_NEXT(nh, len))
     {