%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.
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
%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
PKG_CHECK_MODULES(pkgs_online_mon REQUIRED
dlog
glib-2.0
+ libbpf
libcurl
)
# 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
#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>
#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