summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-Fix-memory-leak.patch34
-rw-r--r--meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-cmake-Link-with-libatomic-on-rv32-rv64.patch45
-rw-r--r--meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-dlt-system-Fix-buffer-overflow-detection-on-32bit-ta.patch40
-rw-r--r--meta-oe/recipes-extended/dlt-daemon/dlt-daemon/481.patch47
-rw-r--r--meta-oe/recipes-extended/dlt-daemon/dlt-daemon/482.patch38
-rw-r--r--meta-oe/recipes-extended/dlt-daemon/dlt-daemon_2.18.9.bb (renamed from meta-oe/recipes-extended/dlt-daemon/dlt-daemon_2.18.8.bb)14
6 files changed, 90 insertions, 128 deletions
diff --git a/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-Fix-memory-leak.patch b/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-Fix-memory-leak.patch
deleted file mode 100644
index 72e3b9802d..0000000000
--- a/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-Fix-memory-leak.patch
+++ /dev/null
@@ -1,34 +0,0 @@
1From b6149e203f919c899fefc702a17fbb78bdec3700 Mon Sep 17 00:00:00 2001
2From: Le Van Khanh <Khanh.LeVan@vn.bosch.com>
3Date: Thu, 9 Feb 2023 03:17:13 -0500
4Subject: [PATCH] Fix memory leak
5
6Free the ecuid_conf in case of memory alllocated
7
8CVE: CVE-2023-26257
9
10Upstream-Status: Backport
11[https://github.com/COVESA/dlt-daemon/pull/441/commits/b6149e203f919c899fefc702a17fbb78bdec3700]
12
13Signed-off-by: Le Van Khanh <Khanh.LeVan@vn.bosch.com>
14
15Signed-off-by: Yogita Urade <yogita.urade@windriver.com>
16---
17 src/console/dlt-control-common.c | 2 ++
18 1 file changed, 2 insertions(+)
19
20diff --git a/src/console/dlt-control-common.c b/src/console/dlt-control-common.c
21index abcaf92..64951c1 100644
22--- a/src/console/dlt-control-common.c
23+++ b/src/console/dlt-control-common.c
24@@ -124,6 +124,8 @@ void set_ecuid(char *ecuid)
25 if (dlt_parse_config_param("ECUId", &ecuid_conf) == 0) {
26 memset(local_ecuid, 0, DLT_CTRL_ECUID_LEN);
27 strncpy(local_ecuid, ecuid_conf, DLT_CTRL_ECUID_LEN);
28+ if (ecuid_conf !=NULL)
29+ free(ecuid_conf);
30 local_ecuid[DLT_CTRL_ECUID_LEN - 1] = '\0';
31 }
32 else {
33--
342.34.1
diff --git a/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-cmake-Link-with-libatomic-on-rv32-rv64.patch b/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-cmake-Link-with-libatomic-on-rv32-rv64.patch
deleted file mode 100644
index 7b40b7a67e..0000000000
--- a/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-cmake-Link-with-libatomic-on-rv32-rv64.patch
+++ /dev/null
@@ -1,45 +0,0 @@
1From dd2d42a7f877d292f86e421dd9651f4b7c2abf18 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 19 Apr 2022 14:57:58 -0700
4Subject: [PATCH] cmake: Link with libatomic on rv32/rv64
5
6Use of <atomic> needs to link in libatomic on riscv
7Fixes
8
9undefined reference to `__atomic_exchange_1'
10
11Upstream-Status: Pending
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 src/lib/CMakeLists.txt | 8 +++++++-
15 1 file changed, 7 insertions(+), 1 deletion(-)
16
17diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt
18index 3293376..65018be 100644
19--- a/src/lib/CMakeLists.txt
20+++ b/src/lib/CMakeLists.txt
21@@ -37,6 +37,12 @@ else()
22 set(SOCKET_LIBRARY socket)
23 endif()
24
25+if(CMAKE_SYSTEM_PROCESSOR STREQUAL "riscv64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "riscv32")
26+ set(ATOMIC_LIBRARY atomic)
27+else()
28+ set(ATOMIC_LIBRARY "")
29+endif()
30+
31 if(HAVE_FUNC_PTHREAD_SETNAME_NP)
32 add_definitions(-DDLT_USE_PTHREAD_SETNAME_NP)
33 message(STATUS "Using pthread_setname_np API to set thread name")
34@@ -44,7 +50,7 @@ else()
35 message(STATUS "pthread_setname_np API not available on this platform")
36 endif()
37
38-target_link_libraries(dlt ${RT_LIBRARY} ${SOCKET_LIBRARY} Threads::Threads)
39+target_link_libraries(dlt ${RT_LIBRARY} ${SOCKET_LIBRARY} ${ATOMIC_LIBRARY} Threads::Threads)
40
41 target_include_directories(dlt
42 PUBLIC
43--
442.36.0
45
diff --git a/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-dlt-system-Fix-buffer-overflow-detection-on-32bit-ta.patch b/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-dlt-system-Fix-buffer-overflow-detection-on-32bit-ta.patch
deleted file mode 100644
index e7e6cb3b1a..0000000000
--- a/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-dlt-system-Fix-buffer-overflow-detection-on-32bit-ta.patch
+++ /dev/null
@@ -1,40 +0,0 @@
1From 94378458d653b1edca86435026909592cbe5e793 Mon Sep 17 00:00:00 2001
2From: Changqing Li <changqing.li@windriver.com>
3Date: Fri, 19 Aug 2022 11:12:17 +0800
4Subject: [PATCH] dlt-system: Fix buffer overflow detection on 32bit targets
5
6On 32bit target, dlt-system will termiated with error:
7dlt-system: *** buffer overflow detected ***: terminated
8
9Upstream-Status: Submitted [https://github.com/COVESA/dlt-daemon/pull/398]
10
11Signed-off-by: Changqing Li <changqing.li@windriver.com>
12---
13 src/system/dlt-system-watchdog.c | 6 +++---
14 1 file changed, 3 insertions(+), 3 deletions(-)
15
16diff --git a/src/system/dlt-system-watchdog.c b/src/system/dlt-system-watchdog.c
17index a2b01de..c0eaa12 100644
18--- a/src/system/dlt-system-watchdog.c
19+++ b/src/system/dlt-system-watchdog.c
20@@ -109,8 +109,8 @@ int register_watchdog_fd(struct pollfd *pollfd, int fdcnt)
21
22 void watchdog_fd_handler(int fd)
23 {
24- long int timersElapsed = 0;
25- int r = read(fd, &timersElapsed, 8); // only needed to reset fd event
26+ uint64_t timersElapsed = 0ULL;
27+ int r = read(fd, &timersElapsed, 8U); // only needed to reset fd event
28 if(r < 0)
29 DLT_LOG(watchdogContext, DLT_LOG_ERROR, DLT_STRING("Could not reset systemd watchdog. Exit with: "),
30 DLT_STRING(strerror(r)));
31@@ -120,4 +120,4 @@ void watchdog_fd_handler(int fd)
32
33 DLT_LOG(watchdogContext, DLT_LOG_DEBUG, DLT_STRING("systemd watchdog waited periodic\n"));
34 }
35-#endif
36\ No newline at end of file
37+#endif
38--
392.25.1
40
diff --git a/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/481.patch b/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/481.patch
new file mode 100644
index 0000000000..a3f2b2f9e5
--- /dev/null
+++ b/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/481.patch
@@ -0,0 +1,47 @@
1From 95476de802585629c6d89707a9247bbb0c70f6c9 Mon Sep 17 00:00:00 2001
2From: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
3Date: Fri, 28 Apr 2023 22:39:57 +0200
4Subject: [PATCH] Update gtest_dlt_daemon_multiple_files_logging.cpp
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Fix build error due to dlt_vlog not having the correct format string with security build flags enabled
10
11[ 88%] Building CXX object tests/CMakeFiles/gtest_dlt_daemon_multiple_files_logging.dir/gtest_dlt_daemon_multiple_files_logging.cpp.o
12cd dlt-daemon-2.18.9/obj-x86_64-linux-gnu/tests && /usr/bin/c++ -DCONFIGURATION_FILES_DIR=\"/etc\" -DDLT_DAEMON_USE_FIFO_IPC -DDLT_LIB_USE_FIFO_IPC -DDLT_NETWORK_TRACE_ENABLE -DDLT_SYSTEMD_ENABLE -DDLT_SYSTEMD_JOURNAL_ENABLE -DDLT_UNIT_TESTS -DDLT_USER_IPC_PATH=\"/tmp\" -DDLT_USE_IPv6 -DEXTENDED_FILTERING -D_GNU_SOURCE -Idlt-daemon-2.18.9 -Idlt-daemon-2.18.9/obj-x86_64-linux-gnu/include/dlt -Idlt-daemon-2.18.9/include/dlt -Idlt-daemon-2.18.9/src/shared -Idlt-daemon-2.18.9/src/core_dump_handler -Idlt-daemon-2.18.9/src/offlinelogstorage -Idlt-daemon-2.18.9/src/lib -Idlt-daemon-2.18.9/src/daemon -Idlt-daemon-2.18.9/src/console -Idlt-daemon-2.18.9/src/gateway -Idlt-daemon-2.18.9/systemd/3rdparty -g -O2 -ffile-prefix-map=dlt-daemon-2.18.9=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -isystem /include -std=gnu++0x -std=gnu++11 -Wall -Wextra -Wno-variadic-macros -Wno-strict-aliasing -DGTEST_HAS_PTHREAD=1 -MD -MT tests/CMakeFiles/gtest_dlt_daemon_multiple_files_logging.dir/gtest_dlt_daemon_multiple_files_logging.cpp.o -MF CMakeFiles/gtest_dlt_daemon_multiple_files_logging.dir/gtest_dlt_daemon_multiple_files_logging.cpp.o.d -o CMakeFiles/gtest_dlt_daemon_multiple_files_logging.dir/gtest_dlt_daemon_multiple_files_logging.cpp.o -c dlt-daemon-2.18.9/tests/gtest_dlt_daemon_multiple_files_logging.cpp
13dlt-daemon-2.18.9/tests/gtest_dlt_daemon_multiple_files_logging.cpp: In member function ‘virtual void t_dlt_logging_multiple_files_append_reinit_normal_Test::TestBody()’:
14dlt-daemon-2.18.9/tests/gtest_dlt_daemon_multiple_files_logging.cpp:106:13: error: format not a string literal and no format arguments [-Werror=format-security]
15 106 | dlt_vlog(LOG_INFO, log1);
16 | ~~~~~~~~^~~~~~~~~~~~~~~~
17dlt-daemon-2.18.9/tests/gtest_dlt_daemon_multiple_files_logging.cpp:110:13: error: format not a string literal and no format arguments [-Werror=format-security]
18 110 | dlt_vlog(LOG_INFO, log2);
19 | ~~~~~~~~^~~~~~~~~~~~~~~~
20In file included from /usr/include/string.h:535,
21 from /usr/include/gtest/internal/gtest-port.h:264,
22 from /usr/include/gtest/internal/gtest-internal.h:40,
23 from /usr/include/gtest/gtest.h:62,
24 from dlt-daemon-2.18.9/tests/gtest_dlt_daemon_multiple_files_logging.cpp:27:
25In function ‘strncpy’,
26---
27 tests/gtest_dlt_daemon_multiple_files_logging.cpp | 4 ++--
28 1 file changed, 2 insertions(+), 2 deletions(-)
29
30diff --git a/tests/gtest_dlt_daemon_multiple_files_logging.cpp b/tests/gtest_dlt_daemon_multiple_files_logging.cpp
31index 2da512e1..05b58f2c 100644
32--- a/tests/gtest_dlt_daemon_multiple_files_logging.cpp
33+++ b/tests/gtest_dlt_daemon_multiple_files_logging.cpp
34@@ -103,11 +103,11 @@ TEST(t_dlt_logging_multiple_files_append_reinit, normal)
35 const char* log2 = "TWO\n";
36
37 configure(path, file_name, true, file_size, max_file_size);
38- dlt_vlog(LOG_INFO, log1);
39+ dlt_vlog(LOG_INFO, "%s", log1);
40 EXPECT_NO_THROW(dlt_log_free());
41
42 configure(path, file_name, true, file_size, max_file_size);
43- dlt_vlog(LOG_INFO, log2);
44+ dlt_vlog(LOG_INFO, "%s", log2);
45 EXPECT_NO_THROW(dlt_log_free());
46 verify_in_one_file(path, file_name, log1, log2);
47 }
diff --git a/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/482.patch b/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/482.patch
new file mode 100644
index 0000000000..a4c18779c9
--- /dev/null
+++ b/meta-oe/recipes-extended/dlt-daemon/dlt-daemon/482.patch
@@ -0,0 +1,38 @@
1From b38761831670e980a58acb33d611f65255d678ac Mon Sep 17 00:00:00 2001
2From: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
3Date: Fri, 28 Apr 2023 22:46:36 +0200
4Subject: [PATCH] Update CMakeLists.txt
5
6Link systemd libraries, to avoid underlinking of tests with
7-DWITH_SYSTEMD_SOCKET_ACTIVATION=ON
8
9[ 82%] Linking CXX executable gtest_dlt_daemon_gateway
10cd dlt-daemon-2.18.9/obj-x86_64-linux-gnu/tests && /usr/bin/cmake -E cmake_link_script CMakeFiles/gtest_dlt_daemon_gateway.dir/link.txt --verbose=1
11/usr/bin/c++ -g -O2 -ffile-prefix-map=dlt-daemon-2.18.9=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -isystem /include -std=gnu++0x -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -flto=auto -Wl,-z,relro -rdynamic CMakeFiles/gtest_dlt_daemon_gateway.dir/gtest_dlt_daemon_gateway.cpp.o CMakeFiles/gtest_dlt_daemon_gateway.dir/__/systemd/3rdparty/sd-daemon.c.o -o gtest_dlt_daemon_gateway -Wl,-rpath,dlt-daemon-2.18.9/obj-x86_64-linux-gnu/src/daemon ../src/daemon/libdlt_daemon.so /usr/lib/x86_64-linux-gnu/libgtest.a /usr/lib/x86_64-linux-gnu/libgtest_main.a -lrt /usr/lib/x86_64-linux-gnu/libgtest.a
12/usr/bin/ld: ../src/daemon/libdlt_daemon.so: undefined reference to `sd_listen_fds_with_names'
13---
14 tests/CMakeLists.txt | 10 +++++++++-
15 1 file changed, 9 insertions(+), 1 deletion(-)
16
17diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
18index 579d7308..3155ca9a 100644
19--- a/tests/CMakeLists.txt
20+++ b/tests/CMakeLists.txt
21@@ -21,8 +21,16 @@ else()
22 set(LIBRARIES socket)
23 endif()
24
25+if(WITH_SYSTEMD_JOURNAL)
26+ if(SYSTEMD_VERSION LESS 209)
27+ set(SYSTEMD_LIBS systemd-journal systemd-id128)
28+ else(SYSTEMD_VERSION LESS 209)
29+ set(SYSTEMD_LIBS systemd)
30+ endif(SYSTEMD_VERSION LESS 209)
31+endif(WITH_SYSTEMD_JOURNAL)
32+
33 set(DLT_LIBRARIES dlt ${GTEST_LIBS} ${LIBRARIES})
34-set(DLT_DAEMON_LIBRARIES dlt_daemon ${GTEST_LIBS} ${LIBRARIES})
35+set(DLT_DAEMON_LIBRARIES dlt_daemon ${GTEST_LIBS} ${LIBRARIES} ${SYSTEMD_LIBS})
36 set(DLT_CONTROL_LIBRARIES dlt dlt_control_common_lib ${GTEST_LIBS})
37
38 #Receiver used for QTs. add_test() is not required
diff --git a/meta-oe/recipes-extended/dlt-daemon/dlt-daemon_2.18.8.bb b/meta-oe/recipes-extended/dlt-daemon/dlt-daemon_2.18.9.bb
index cfbe0ff60d..6b049df6cf 100644
--- a/meta-oe/recipes-extended/dlt-daemon/dlt-daemon_2.18.8.bb
+++ b/meta-oe/recipes-extended/dlt-daemon/dlt-daemon_2.18.9.bb
@@ -17,19 +17,14 @@ DEPENDS = "zlib gzip-native json-c"
17SRC_URI = "git://github.com/GENIVI/${BPN}.git;protocol=https;branch=master \ 17SRC_URI = "git://github.com/GENIVI/${BPN}.git;protocol=https;branch=master \
18 file://0002-Don-t-execute-processes-as-a-specific-user.patch \ 18 file://0002-Don-t-execute-processes-as-a-specific-user.patch \
19 file://0004-Modify-systemd-config-directory.patch \ 19 file://0004-Modify-systemd-config-directory.patch \
20 file://0001-cmake-Link-with-libatomic-on-rv32-rv64.patch \ 20 file://481.patch \
21 file://0001-dlt-system-Fix-buffer-overflow-detection-on-32bit-ta.patch \ 21 file://482.patch \
22 file://0001-Fix-memory-leak.patch \
23 " 22 "
24SRCREV = "6a3bd901d825c7206797e36ea98e10a218f5aad2" 23SRCREV = "9a2312d3512a27620d41b9a325338b6e7b3d42de"
25
26PV .= "+2.18.9git${SRCPV}"
27 24
28S = "${WORKDIR}/git" 25S = "${WORKDIR}/git"
29 26
30LDFLAGS:append:riscv64 = " -latomic" 27PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', ' systemd systemd-watchdog systemd-journal dlt-examples dlt-adaptor dlt-adaptor-stdin dlt-adaptor-udp dlt-console ', '', d)} \
31
32PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', ' systemd systemd-watchdog systemd-journal dlt-examples dlt-adaptor dlt-adaptor-udp dlt-console ', '', d)} \
33 udp-connection dlt-system dlt-filetransfer " 28 udp-connection dlt-system dlt-filetransfer "
34# dlt-dbus 29# dlt-dbus
35 30
@@ -46,6 +41,7 @@ PACKAGECONFIG[udp-connection] = "-DWITH_UDP_CONNECTION=ON,-DWITH_UDP_CONNECTION=
46# Command line options 41# Command line options
47PACKAGECONFIG[dlt-system] = "-DWITH_DLT_SYSTEM=ON,-DWITH_DLT_SYSTEM=OFF" 42PACKAGECONFIG[dlt-system] = "-DWITH_DLT_SYSTEM=ON,-DWITH_DLT_SYSTEM=OFF"
48PACKAGECONFIG[dlt-adaptor] = "-DWITH_DLT_ADAPTOR=ON,-DWITH_DLT_ADAPTOR=OFF,,dlt-daemon-systemd" 43PACKAGECONFIG[dlt-adaptor] = "-DWITH_DLT_ADAPTOR=ON,-DWITH_DLT_ADAPTOR=OFF,,dlt-daemon-systemd"
44PACKAGECONFIG[dlt-adaptor-stdin] = "-DWITH_DLT_ADAPTOR_STDIN=ON,-DWITH_DLT_ADAPTOR_STDIN=OFF,,dlt-daemon-systemd"
49PACKAGECONFIG[dlt-adaptor-udp] = "-DWITH_DLT_ADAPTOR_UDP=ON,-DWITH_DLT_ADAPTOR_UDP=OFF,,dlt-daemon-systemd" 45PACKAGECONFIG[dlt-adaptor-udp] = "-DWITH_DLT_ADAPTOR_UDP=ON,-DWITH_DLT_ADAPTOR_UDP=OFF,,dlt-daemon-systemd"
50PACKAGECONFIG[dlt-filetransfer] = "-DWITH_DLT_FILETRANSFER=ON,-DWITH_DLT_FILETRANSFER=OFF" 46PACKAGECONFIG[dlt-filetransfer] = "-DWITH_DLT_FILETRANSFER=ON,-DWITH_DLT_FILETRANSFER=OFF"
51PACKAGECONFIG[dlt-console] = "-DWITH_DLT_CONSOLE=ON,-DWITH_DLT_CONSOLE=OFF,,dlt-daemon-systemd" 47PACKAGECONFIG[dlt-console] = "-DWITH_DLT_CONSOLE=ON,-DWITH_DLT_CONSOLE=OFF,,dlt-daemon-systemd"