Use libbpf package for online monitoring 62/268762/1 accepted/tizen/unified/20220114.130215 submit/tizen/20220111.042706 submit/tizen/20220111.044041
authorJaehyun Kim <jeik01.kim@samsung.com>
Fri, 31 Dec 2021 08:57:40 +0000 (17:57 +0900)
committerJaehyun Kim <jeik01.kim@samsung.com>
Fri, 31 Dec 2021 08:57:40 +0000 (17:57 +0900)
Change-Id: Ie792e397f7518f98ff5fdd2e6b415e63f57d7248
Signed-off-by: Jaehyun Kim <jeik01.kim@samsung.com>
packaging/net-config.spec
plugin/online-monitor/CMakeLists.txt
plugin/online-monitor/bpf_code [new file with mode: 0644]
plugin/online-monitor/online-monitor.c

index c29df82ed2851b4c22458040e637dbf276332ebd..e4ccca11e1bf27bdde25ee32b7682bb16e42483b 100755 (executable)
@@ -100,9 +100,8 @@ TIZEN Network Configuration service extension for HAL test.
 %ifarch arm armv7l aarch64
 %package plugin-online-monitor
 Summary:        net-config extension for advanced online monitoring
-BuildRequires:  connman-extension-bpf-devel
-Requires:       libelf0
-Requires:       connman-extension-bpf
+BuildRequires:  pkgconfig(libbpf)
+Requires:       libbpf
 Requires:       %{name} = %{version}-%{release}
 %description plugin-online-monitor
 TIZEN Network Configuration service extension for advanced online monitoring.
@@ -207,6 +206,7 @@ mv %{_builddir}/%{name}-%{version}/net-config.wearable %{buildroot}%{_bindir}
 cp plugin/online-monitor/online_monitor.conf %{buildroot}/%{_localstatedir}/lib/net-config
 cp plugin/online-monitor/common_info_dump.sh %{buildroot}/opt/var/lib/net-config/
 cp plugin/online-monitor/supp_log_dump.sh %{buildroot}/opt/var/lib/net-config/
+cp plugin/online-monitor/bpf_code %{buildroot}/opt/var/lib/net-config/
 %endif
 
 %post
@@ -307,6 +307,7 @@ mv %{_sysconfdir}/dbus-1/system.d/net-config-robot.conf %{_sysconfdir}/dbus-1/sy
 %attr(644,root,root) %{_localstatedir}/lib/net-config/online_monitor.conf
 %attr(750,network_fw,network_fw) /opt/var/lib/net-config/common_info_dump.sh
 %attr(750,network_fw,network_fw) /opt/var/lib/net-config/supp_log_dump.sh
+%attr(640,network_fw,network_fw) /opt/var/lib/net-config/bpf_code
 
 %post plugin-online-monitor
 /usr/bin/mkdir -p /opt/usr/data/network/online_mon
index 0b1f0f5fce4374602ebb819d9dcf158c0630a28c..6d951b141a662c04c62cc6d5973d89fea64366b0 100755 (executable)
@@ -12,6 +12,7 @@ INCLUDE(FindPkgConfig)
 PKG_CHECK_MODULES(pkgs_online_mon REQUIRED
        dlog
        glib-2.0
+       libbpf
        libcurl
        )
 
@@ -37,7 +38,7 @@ SET(SRCS_ONLINE_MON
 
 # library build
 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS_ONLINE_MON})
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_online_mon_LDFLAGS} "-lbpf")
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_online_mon_LDFLAGS})
 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "" OUTPUT_NAME ${PROJECT_NAME})
 
 # install
diff --git a/plugin/online-monitor/bpf_code b/plugin/online-monitor/bpf_code
new file mode 100644 (file)
index 0000000..265d2b4
Binary files /dev/null and b/plugin/online-monitor/bpf_code differ
index 3c61e1097b01f0cd797bab322a05acdb9ae992da..688217fcc985b3d83aeab99458dfa796dab4672e 100755 (executable)
@@ -20,8 +20,7 @@
 #include <stddef.h>
 #include <stdint.h>
 #include <sys/types.h>
-#include <bpf/linux/asm-generic/socket.h>
-#include <bpf/linux/bpf.h>
+#include <bpf/linux/socket.h>
 #include <bpf/bpf.h>
 #include <bpf/libbpf.h>
 #include <linux/if_ether.h>
@@ -31,7 +30,7 @@
 
 #include "online-monitor.h"
 
-#define BPF_FILE_PATH        "/var/lib/connman/bpf_code"
+#define BPF_FILE_PATH        "/var/lib/net-config/bpf_code"
 #define BPF_MAP_INTERVAL     3
 #define DNS_NO_RESPONSE_MAX  4
 #define DETECTION_INTERVAL   4