aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-extended/rsyslog
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-extended/rsyslog')
-rw-r--r--meta-oe/recipes-extended/rsyslog/libfastjson_1.2304.0.bb (renamed from meta-oe/recipes-extended/rsyslog/libfastjson_0.99.9.bb)2
-rw-r--r--meta-oe/recipes-extended/rsyslog/librelp/0001-Fix-function-inline-errors-in-debug-optimization-Og.patch34
-rw-r--r--meta-oe/recipes-extended/rsyslog/librelp/0001-relp-fix-build-against-upcoming-gcc-14-Werror-calloc.patch37
-rw-r--r--meta-oe/recipes-extended/rsyslog/librelp/0001-tcp-fix-some-compiler-warnings-with-enable-tls-opens.patch88
-rw-r--r--meta-oe/recipes-extended/rsyslog/librelp/0001-tests-Fix-callback-prototype.patch49
-rw-r--r--meta-oe/recipes-extended/rsyslog/librelp/0001-tests-Include-missing-sys-time.h.patch41
-rw-r--r--meta-oe/recipes-extended/rsyslog/librelp/run-ptest10
-rw-r--r--meta-oe/recipes-extended/rsyslog/librelp_1.10.0.bb18
-rw-r--r--meta-oe/recipes-extended/rsyslog/librelp_1.11.0.bb87
-rw-r--r--meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch2
-rw-r--r--meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-tcpflood.c-Pass-correct-parameter-type-to-send.patch35
-rw-r--r--meta-oe/recipes-extended/rsyslog/rsyslog/disable-omfile-outchannel.patch23
-rw-r--r--meta-oe/recipes-extended/rsyslog/rsyslog_8.2404.0.bb (renamed from meta-oe/recipes-extended/rsyslog/rsyslog_8.2206.0.bb)23
13 files changed, 419 insertions, 30 deletions
diff --git a/meta-oe/recipes-extended/rsyslog/libfastjson_0.99.9.bb b/meta-oe/recipes-extended/rsyslog/libfastjson_1.2304.0.bb
index 24ad172674..f16126d936 100644
--- a/meta-oe/recipes-extended/rsyslog/libfastjson_0.99.9.bb
+++ b/meta-oe/recipes-extended/rsyslog/libfastjson_1.2304.0.bb
@@ -8,7 +8,7 @@ DEPENDS = ""
SRC_URI = "git://github.com/rsyslog/libfastjson.git;protocol=https;branch=master"
-SRCREV = "0293afb3913f760c449348551cca4d2df59c1a00"
+SRCREV = "3a8402c1de7c7747c95229db26d8d32fb85a7a52"
S = "${WORKDIR}/git"
diff --git a/meta-oe/recipes-extended/rsyslog/librelp/0001-Fix-function-inline-errors-in-debug-optimization-Og.patch b/meta-oe/recipes-extended/rsyslog/librelp/0001-Fix-function-inline-errors-in-debug-optimization-Og.patch
new file mode 100644
index 0000000000..10e2b564cc
--- /dev/null
+++ b/meta-oe/recipes-extended/rsyslog/librelp/0001-Fix-function-inline-errors-in-debug-optimization-Og.patch
@@ -0,0 +1,34 @@
+From 6d575d98565ce3119a14359eecb11ccdff92a303 Mon Sep 17 00:00:00 2001
+From: Yash Shinde <53660251+Yashinde145@users.noreply.github.com>
+Date: Thu, 29 Jun 2023 18:10:15 +0530
+Subject: [PATCH] Fix function inline errors in debug optimization (-Og)
+
+Compiler does not inline any functions when using debug optimization (-Og).
+Hence, remove -Winline flag when compiling with debug optimization.
+
+Signed-off-by: Nicolas Marguet <nicolas.marguet@windriver.com>
+---
+Upstream-Status: Backport [https://github.com/rsyslog/librelp/commit/6d575d9]
+
+ configure.ac | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 21c1fde..1204c4e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -230,6 +230,12 @@ if test "$enable_debug" = "no"; then
+ AC_DEFINE(NDEBUG, 1, [Defined if debug mode is disabled.])
+ fi
+
++#Compiler does not inline any functions when not optimizing(-Og).
++#Hence, remove -Winline flag when DEBUG is enabled.
++#ifdef DEBUG
++WARN_CFLAGS="$(echo "$WARN_CFLAGS" | sed s/-Winline//g)"
++#endif
++
+ # valgrind
+ AC_ARG_ENABLE(valgrind,
+ [AS_HELP_STRING([--enable-valgrind],[Enable valgrind tests@<:@default=yes@:>@])],
+--
+2.39.0
diff --git a/meta-oe/recipes-extended/rsyslog/librelp/0001-relp-fix-build-against-upcoming-gcc-14-Werror-calloc.patch b/meta-oe/recipes-extended/rsyslog/librelp/0001-relp-fix-build-against-upcoming-gcc-14-Werror-calloc.patch
new file mode 100644
index 0000000000..cf4f4080a6
--- /dev/null
+++ b/meta-oe/recipes-extended/rsyslog/librelp/0001-relp-fix-build-against-upcoming-gcc-14-Werror-calloc.patch
@@ -0,0 +1,37 @@
+From baf992f82aa987c608731866876adb856847ea45 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 6 May 2024 18:03:40 -0700
+Subject: [PATCH] relp: fix build against upcoming `gcc-14`
+ (`-Werror=calloc-transposed-args`)
+
+`gcc-14` added a new `-Wcalloc-transposed-args` warning recently. It
+ detected minor infelicity in `calloc()` API usage
+
+Fixes
+../../git/src/relp.c: In function 'addToEpollSet':
+../../git/src/relp.c:101:39: error: 'calloc' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Werror=calloc-transposed-args]
+ 101 | CHKmalloc(epd = calloc(sizeof(epolld_t), 1));
+ | ^~~~~~~~
+
+Upstream-Status: Submitted [https://github.com/rsyslog/librelp/pull/264]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/relp.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/relp.c b/src/relp.c
+index eadda36..6268f1d 100644
+--- a/src/relp.c
++++ b/src/relp.c
+@@ -98,7 +98,7 @@ addToEpollSet(relpEngine_t *const pThis, epolld_type_t typ, void *ptr, int sock,
+ epolld_t *epd = NULL;
+ ENTER_RELPFUNC;
+
+- CHKmalloc(epd = calloc(sizeof(epolld_t), 1));
++ CHKmalloc(epd = calloc(1, sizeof(epolld_t)));
+ epd->typ = typ;
+ epd->ptr = ptr;
+ epd->sock = sock;
+--
+2.45.0
+
diff --git a/meta-oe/recipes-extended/rsyslog/librelp/0001-tcp-fix-some-compiler-warnings-with-enable-tls-opens.patch b/meta-oe/recipes-extended/rsyslog/librelp/0001-tcp-fix-some-compiler-warnings-with-enable-tls-opens.patch
new file mode 100644
index 0000000000..3ce5926333
--- /dev/null
+++ b/meta-oe/recipes-extended/rsyslog/librelp/0001-tcp-fix-some-compiler-warnings-with-enable-tls-opens.patch
@@ -0,0 +1,88 @@
+From 6e9b27f04132287463c89d3be0ce4f506944920d Mon Sep 17 00:00:00 2001
+From: Patrick Williams <patrick@stwcx.xyz>
+Date: Fri, 3 Feb 2023 16:11:29 -0600
+Subject: [PATCH] tcp: fix some compiler warnings with enable-tls-openssl
+
+When --enable-tls=no and --enable-tls-openssl=yes, the following
+compiler errors are reported:
+
+```
+| ../../git/src/tcp.c:3765:1: error: no previous declaration for 'relpTcpGetRtryDirection_gtls' [-Werror=missing-declarations]
+| 3765 | relpTcpGetRtryDirection_gtls(LIBRELP_ATTR_UNUSED relpTcp_t *const pThis)
+| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
+| ../../git/src/tcp.c:3583:1: error: 'relpTcpChkPeerName' defined but not used [-Werror=unused-function]
+| 3583 | relpTcpChkPeerName(NOTLS_UNUSED relpTcp_t *const pThis, NOTLS_UNUSED void* cert)
+| | ^~~~~~~~~~~~~~~~~~
+```
+
+Fix these by:
+ 1. Add static on the openssl path for relpTcpGetRtryDirection_gtls.
+ 2. Move the relpTcpChkPeerName forward declaration to another ifdef
+ leg.
+ 3. Wrap relpTcpChkPeerName in gnutls-based ifdef.
+ 4. Remove relpTcpChkPeerName_gtls from openssl path.
+
+Upstream-Status: Backport [https://github.com/rsyslog/librelp/pull/255]
+Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
+---
+ src/tcp.c | 11 ++++-------
+ 1 file changed, 4 insertions(+), 7 deletions(-)
+
+diff --git a/src/tcp.c b/src/tcp.c
+index 7a75cc4..18cffda 100644
+--- a/src/tcp.c
++++ b/src/tcp.c
+@@ -132,12 +132,12 @@ callOnErr(const relpTcp_t *__restrict__ const pThis,
+ static int LIBRELP_ATTR_NONNULL() relpTcpGetCN(char *const namebuf, const size_t lenNamebuf, const char *const szDN);
+ #ifdef HAVE_GNUTLS_CERTIFICATE_SET_VERIFY_FUNCTION
+ static int relpTcpVerifyCertificateCallback(gnutls_session_t session);
++static int relpTcpChkPeerName(relpTcp_t *const pThis, void* cert);
+ #endif /* #ifdef HAVE_GNUTLS_CERTIFICATE_SET_VERIFY_FUNCTION */
+ #if defined(HAVE_GNUTLS_CERTIFICATE_SET_VERIFY_FUNCTION) || defined(ENABLE_TLS_OPENSSL)
+ static void relpTcpChkOnePeerName(relpTcp_t *const pThis, char *peername, int *pbFoundPositiveMatch);
+ static int relpTcpAddToCertNamesBuffer(relpTcp_t *const pThis, char *const buf,
+ const size_t buflen, int *p_currIdx, const char *const certName);
+-static int relpTcpChkPeerName(relpTcp_t *const pThis, void* cert);
+ #endif /* defined(HAVE_GNUTLS_CERTIFICATE_SET_VERIFY_FUNCTION) || defined(ENABLE_TLS_OPENSSL) */
+
+
+@@ -2820,11 +2820,6 @@ relpTcpLstnInitTLS_gtls(LIBRELP_ATTR_UNUSED relpTcp_t *const pThis)
+ {
+ return RELP_RET_ERR_INTERNAL;
+ }
+-static int
+-relpTcpChkPeerName_gtls(LIBRELP_ATTR_UNUSED relpTcp_t *const pThis, LIBRELP_ATTR_UNUSED void *vcert)
+-{
+- return RELP_RET_ERR_INTERNAL;
+-}
+ #endif /* defined(ENABLE_TLS)*/
+
+
+@@ -3579,6 +3574,7 @@ finalize_it:
+
+ }
+
++#ifdef HAVE_GNUTLS_CERTIFICATE_SET_VERIFY_FUNCTION
+ static int
+ relpTcpChkPeerName(NOTLS_UNUSED relpTcp_t *const pThis, NOTLS_UNUSED void* cert)
+ {
+@@ -3592,6 +3588,7 @@ relpTcpChkPeerName(NOTLS_UNUSED relpTcp_t *const pThis, NOTLS_UNUSED void* cert)
+ #endif /* #ifdef WITH_TLS*/
+ LEAVE_RELPFUNC;
+ }
++#endif
+
+ static relpRetVal LIBRELP_ATTR_NONNULL()
+ relpTcpAcceptConnReqInitTLS(NOTLS_UNUSED relpTcp_t *const pThis, NOTLS_UNUSED relpSrv_t *const pSrv)
+@@ -3761,7 +3758,7 @@ relpTcpGetRtryDirection_gtls(relpTcp_t *const pThis)
+ return gnutls_record_get_direction(pThis->session);
+ }
+ #else /* #ifdef ENABLE_TLS */
+-relpRetVal LIBRELP_ATTR_NONNULL()
++static relpRetVal LIBRELP_ATTR_NONNULL()
+ relpTcpGetRtryDirection_gtls(LIBRELP_ATTR_UNUSED relpTcp_t *const pThis)
+ {
+ return RELP_RET_ERR_INTERNAL;
+--
+2.41.0
+
diff --git a/meta-oe/recipes-extended/rsyslog/librelp/0001-tests-Fix-callback-prototype.patch b/meta-oe/recipes-extended/rsyslog/librelp/0001-tests-Fix-callback-prototype.patch
new file mode 100644
index 0000000000..ba081926e1
--- /dev/null
+++ b/meta-oe/recipes-extended/rsyslog/librelp/0001-tests-Fix-callback-prototype.patch
@@ -0,0 +1,49 @@
+From 2a7e26510cf9276b7e640ca8282cc1c5e46075d0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 15 Aug 2023 11:59:40 -0700
+Subject: [PATCH] tests: Fix callback prototype
+
+clang errors about it
+
+| ../../git/tests/receive.c:71:34: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
+| 71 | hdlr_enable(int sig, void (*hdlr)())
+| | ^
+| | void
+| 1 error generated.
+
+Upstream-Status: Submitted [https://github.com/rsyslog/librelp/pull/260]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tests/receive.c | 2 +-
+ tests/send.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/receive.c b/tests/receive.c
+index f376cb4..c12e911 100644
+--- a/tests/receive.c
++++ b/tests/receive.c
+@@ -68,7 +68,7 @@ doSleep(int iSeconds, const int iuSeconds)
+ }
+
+ static void
+-hdlr_enable(int sig, void (*hdlr)())
++hdlr_enable(int sig, void (*hdlr)(const int))
+ {
+ struct sigaction sigAct;
+ memset(&sigAct, 0, sizeof (sigAct));
+diff --git a/tests/send.c b/tests/send.c
+index d7e90f0..1b1df4f 100644
+--- a/tests/send.c
++++ b/tests/send.c
+@@ -57,7 +57,7 @@ struct usrdata { /* used for testing user pointer pass-back */
+ struct usrdata *userdata = NULL;
+
+ static void
+-hdlr_enable(int sig, void (*hdlr)())
++hdlr_enable(int sig, void (*hdlr)(const int))
+ {
+ struct sigaction sigAct;
+ memset(&sigAct, 0, sizeof (sigAct));
+--
+2.41.0
+
diff --git a/meta-oe/recipes-extended/rsyslog/librelp/0001-tests-Include-missing-sys-time.h.patch b/meta-oe/recipes-extended/rsyslog/librelp/0001-tests-Include-missing-sys-time.h.patch
new file mode 100644
index 0000000000..6fed23c1d1
--- /dev/null
+++ b/meta-oe/recipes-extended/rsyslog/librelp/0001-tests-Include-missing-sys-time.h.patch
@@ -0,0 +1,41 @@
+From 5c32487a9c127f37141488d416cdb5d5bec6aca1 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 19 Aug 2023 10:24:40 -0700
+Subject: [PATCH] tests: Include missing sys/time.h
+
+This is found when building for musl C library systems where sys/time.h
+is not included indirectly and select() and timeval structs are used
+
+Fixes
+
+../../git/tests/receive.c:64:17: error: variable has incomplete type 'struct timeval'
+ 64 | struct timeval tvSelectTimeout;
+ | ^
+../../git/tests/receive.c:64:9: note: forward declaration of 'struct timeval'
+ 64 | struct timeval tvSelectTimeout;
+ | ^
+../../git/tests/receive.c:67:2: error: call to undeclared function 'select'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
+ 67 | select(0, NULL, NULL, NULL, &tvSelectTimeout);
+ | ^
+
+Upstream-Status: Submitted [https://github.com/rsyslog/librelp/pull/261]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tests/receive.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/tests/receive.c b/tests/receive.c
+index f376cb4..e20861e 100644
+--- a/tests/receive.c
++++ b/tests/receive.c
+@@ -33,6 +33,7 @@
+ #include <limits.h>
+ #include <errno.h>
+ #include <signal.h>
++#include <sys/time.h>
+ #include "librelp.h"
+
+ #define TRY(f) { const int TRY_r = f; if(TRY_r != RELP_RET_OK) { \
+--
+2.41.0
+
diff --git a/meta-oe/recipes-extended/rsyslog/librelp/run-ptest b/meta-oe/recipes-extended/rsyslog/librelp/run-ptest
new file mode 100644
index 0000000000..a649a5716f
--- /dev/null
+++ b/meta-oe/recipes-extended/rsyslog/librelp/run-ptest
@@ -0,0 +1,10 @@
+#!/bin/sh
+#
+set -e
+set -o pipefail
+
+SCRIPTPATH="$( cd "$(dirname "$0")" ; pwd -P )"
+cd ${SCRIPTPATH}
+useradd tester || echo "user already exists"
+su tester -c "make -C tests -k check-TESTS"
+userdel tester
diff --git a/meta-oe/recipes-extended/rsyslog/librelp_1.10.0.bb b/meta-oe/recipes-extended/rsyslog/librelp_1.10.0.bb
deleted file mode 100644
index acdbbb7d1b..0000000000
--- a/meta-oe/recipes-extended/rsyslog/librelp_1.10.0.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-SUMMARY = "A reliable logging library"
-HOMEPAGE = "https://github.com/rsyslog/librelp"
-
-LICENSE = "GPL-3.0-only"
-LIC_FILES_CHKSUM = "file://COPYING;md5=1fb9c10ed9fd6826757615455ca893a9"
-
-DEPENDS = "gmp nettle libidn zlib gnutls openssl"
-
-SRC_URI = "git://github.com/rsyslog/librelp.git;protocol=https;branch=stable \
-"
-
-SRCREV = "9e749453d51d602d8159717f8a7c27971dcb4c6c"
-
-S = "${WORKDIR}/git"
-
-inherit autotools pkgconfig
-
-CPPFLAGS += "-Wno-error"
diff --git a/meta-oe/recipes-extended/rsyslog/librelp_1.11.0.bb b/meta-oe/recipes-extended/rsyslog/librelp_1.11.0.bb
new file mode 100644
index 0000000000..49847047ac
--- /dev/null
+++ b/meta-oe/recipes-extended/rsyslog/librelp_1.11.0.bb
@@ -0,0 +1,87 @@
+SUMMARY = "A reliable logging library"
+HOMEPAGE = "https://github.com/rsyslog/librelp"
+
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=1fb9c10ed9fd6826757615455ca893a9"
+
+DEPENDS = "gmp libidn zlib"
+
+SRC_URI = "git://github.com/rsyslog/librelp.git;protocol=https;branch=stable \
+ file://0001-Fix-function-inline-errors-in-debug-optimization-Og.patch \
+ file://0001-tests-Fix-callback-prototype.patch \
+ file://0001-tcp-fix-some-compiler-warnings-with-enable-tls-opens.patch \
+ file://0001-tests-Include-missing-sys-time.h.patch \
+ file://0001-relp-fix-build-against-upcoming-gcc-14-Werror-calloc.patch \
+ file://run-ptest \
+"
+
+SRCREV = "b421f56d9ee31a966058d23bd23c966221c91396"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig ptest
+
+PACKAGECONFIG ?= "tls-openssl valgrind"
+# Valgrind is not available for RISCV yet
+PACKAGECONFIG:remove:riscv64 = "valgrind"
+PACKAGECONFIG:remove:riscv32 = "valgrind"
+
+PACKAGECONFIG[tls] = "--enable-tls,--disable-tls,gnutls nettle"
+PACKAGECONFIG[tls-openssl] = "--enable-tls-openssl,--disable-tls-openssl,openssl"
+PACKAGECONFIG[valgrind] = "--enable-valgrind,--disable-valgrind,"
+
+# For ptests, copy source tests/*.sh scripts, Makefile and
+# executables and run them with make on target.
+TESTDIR = "tests"
+do_compile_ptest() {
+ echo 'buildtest-TESTS: $(check_PROGRAMS)' >> ${TESTDIR}/Makefile
+ oe_runmake -C ${TESTDIR} buildtest-TESTS
+}
+
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/${TESTDIR}
+
+ # copy source tests/*.sh and python scripts
+ cp -f ${S}/${TESTDIR}/*.sh ${S}/${TESTDIR}/*.py ${D}${PTEST_PATH}/${TESTDIR}
+ # install data files needed by the test scripts on the target
+ cp -f ${S}/${TESTDIR}/*.supp ${D}${PTEST_PATH}/${TESTDIR}
+ cp -rf ${S}/${TESTDIR}/tls-certs ${D}${PTEST_PATH}/${TESTDIR}
+
+ # copy executables
+ find ${B}/${TESTDIR} -type f -executable -exec cp {} ${D}${PTEST_PATH}/${TESTDIR} \;
+ cp -rf ${B}/${TESTDIR}/.libs ${D}${PTEST_PATH}/${TESTDIR}
+ # copy Makefile
+ # run-ptest will run make which runs the executables
+ cp -f ${B}/${TESTDIR}/Makefile ${D}${PTEST_PATH}/${TESTDIR}
+ cp -f ${B}/${TESTDIR}/set-envvars ${D}${PTEST_PATH}/${TESTDIR}
+
+ # give permissions to all users
+ # some tests need to write to this directory
+ chmod 777 -R ${D}${PTEST_PATH}/${TESTDIR}
+
+ # do NOT need to rebuild Makefile or $(check_PROGRAMS)
+ sed -i 's/^Makefile:.*$/Makefile:/' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
+ sed -i 's/^check-TESTS:.*$/check-TESTS:/' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
+
+ # fix the srcdir, top_srcdir, abs_top_builddir
+ sed -i 's,^\(srcdir = \).*,\1${PTEST_PATH}/${TESTDIR},' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
+ sed -i 's,^\(top_srcdir = \).*,\1${PTEST_PATH}/${TESTDIR},' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
+ sed -i 's,^\(abs_top_builddir = \).*,\1${PTEST_PATH}/,' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
+
+ # install test-driver
+ install -m 644 ${S}/test-driver ${D}${PTEST_PATH}
+
+ # fix the python3 path for tests/set-envar
+ sed -i -e s:${HOSTTOOLS_DIR}:${bindir}:g ${D}${PTEST_PATH}/${TESTDIR}/set-envvars
+
+ # these 2 scripts need help finding their /usr/lib/librelp/ptest/tests/.libs libraries
+ sed -i 's:${B}/src:${PTEST_PATH}/${TESTDIR}:' ${D}${PTEST_PATH}/${TESTDIR}/send
+ sed -i 's:${B}/src:${PTEST_PATH}/${TESTDIR}:' ${D}${PTEST_PATH}/${TESTDIR}/receive
+}
+
+RDEPENDS:${PN}-ptest += "\
+ make bash coreutils libgcc util-linux gawk grep \
+ python3-core python3-io \
+"
+RRECOMMENDS:${PN}-ptest += "${@bb.utils.filter('PACKAGECONFIG', 'valgrind', d)}"
+
diff --git a/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch b/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch
index 552172d397..c1480406fe 100644
--- a/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch
+++ b/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-disable-the-check-for-inotify.patch
@@ -12,7 +12,7 @@ since 2.6.13 [1].
(it would require installing the libc headers otherwise,
for the test to detect /usr/include/sys/inotify.h.)
-Upstream-Status: Inappropriate[OE-specific]
+Upstream-Status: Inappropriate [OE-specific]
Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
---
diff --git a/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-tcpflood.c-Pass-correct-parameter-type-to-send.patch b/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-tcpflood.c-Pass-correct-parameter-type-to-send.patch
new file mode 100644
index 0000000000..5df29e7d90
--- /dev/null
+++ b/meta-oe/recipes-extended/rsyslog/rsyslog/0001-tests-tcpflood.c-Pass-correct-parameter-type-to-send.patch
@@ -0,0 +1,35 @@
+From 1e0a77d8a5ae7cd0223afadf46cdbb540119774d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 11 May 2024 23:31:46 -0700
+Subject: [PATCH] tests/tcpflood.c: Pass correct parameter type to sendto()
+
+Fixes build with GCC-14 and musl
+
+../../rsyslog-8.2404.0/tests/tcpflood.c:811:70: error: passing argument 5 of 'sendto' from incompatible pointer type [-Wincompatible-pointer-types]
+ 811 | lenSend = sendto(udpsockout, buf, lenBuf, 0, &udpRcvr, sizeof(udpRcvr));
+ | ^~~~~~~~
+ | |
+ | struct sockaddr_in *
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tests/tcpflood.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/tcpflood.c b/tests/tcpflood.c
+index bd8edaf..0feda23 100644
+--- a/tests/tcpflood.c
++++ b/tests/tcpflood.c
+@@ -808,7 +808,7 @@ int sendMessages(struct instdata *inst)
+ }
+ lenSend = sendPlainTCP(socknum, buf, lenBuf, &error_number);
+ } else if(transport == TP_UDP) {
+- lenSend = sendto(udpsockout, buf, lenBuf, 0, &udpRcvr, sizeof(udpRcvr));
++ lenSend = sendto(udpsockout, buf, lenBuf, 0, (const struct sockaddr *)&udpRcvr, sizeof(udpRcvr));
+ error_number = errno;
+ } else if(transport == TP_TLS) {
+ if(sockArray[socknum] == -1) {
+--
+2.45.0
+
diff --git a/meta-oe/recipes-extended/rsyslog/rsyslog/disable-omfile-outchannel.patch b/meta-oe/recipes-extended/rsyslog/rsyslog/disable-omfile-outchannel.patch
new file mode 100644
index 0000000000..a8bbe2b51e
--- /dev/null
+++ b/meta-oe/recipes-extended/rsyslog/rsyslog/disable-omfile-outchannel.patch
@@ -0,0 +1,23 @@
+tests: Skip omfile-outchannel test as it fails on musl
+
+scanf error in index i=5559
+sequence error detected in rstb_168227_f19f3b245QVE.out.log
+number of lines in file: 5559 rstb_168227_f19f3b245QVE.out.log
+
+Patch is also applied in void linux
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/tests/omfile-outchannel.sh 2021-03-09 05:51:07.000000000 -0600
++++ b/tests/omfile-outchannel.sh 2022-05-26 15:55:23.358520256 -0500
+@@ -1,5 +1,9 @@
+ #!/bin/bash
+ # addd 2018-08-02 by RGerhards, released under ASL 2.0
++
++# This test fails for x86_64-musl, under GitHub's CI/CD. Disable for now.
++exit 77
++
+ . ${srcdir:=.}/diag.sh init
+ export NUMMESSAGES=10000
+ echo "ls -l $RSYSLOG_DYNNAME*
diff --git a/meta-oe/recipes-extended/rsyslog/rsyslog_8.2206.0.bb b/meta-oe/recipes-extended/rsyslog/rsyslog_8.2404.0.bb
index a39de3acb5..ac1645f671 100644
--- a/meta-oe/recipes-extended/rsyslog/rsyslog_8.2206.0.bb
+++ b/meta-oe/recipes-extended/rsyslog/rsyslog_8.2404.0.bb
@@ -17,7 +17,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=51d9635e646fb75e1b74c074f788e973 \
file://COPYING.ASL20;md5=052f8a09206615ab07326ff8ce2d9d32\
"
-SRC_URI = "http://www.rsyslog.com/download/files/download/rsyslog/${BPN}-${PV}.tar.gz \
+SRC_URI = "https://www.rsyslog.com/files/download/rsyslog/${BPN}-${PV}.tar.gz \
file://initscript \
file://rsyslog.conf \
file://rsyslog.logrotate \
@@ -25,13 +25,14 @@ SRC_URI = "http://www.rsyslog.com/download/files/download/rsyslog/${BPN}-${PV}.t
file://use-pkgconfig-to-check-libgcrypt.patch \
file://run-ptest \
file://0001-tests-disable-the-check-for-inotify.patch \
+ file://0001-tests-tcpflood.c-Pass-correct-parameter-type-to-send.patch \
"
SRC_URI:append:libc-musl = " \
file://0001-Include-sys-time-h.patch \
+ file://disable-omfile-outchannel.patch \
"
-
-SRC_URI[sha256sum] = "a1377218b26c0767a7a3f67d166d5338af7c24b455d35ec99974e18e6845ba27"
+SRC_URI[sha256sum] = "30528d140ec1b1f079224081fa37df6e06587ff42b02e3e61f2daa0526c54d33"
UPSTREAM_CHECK_URI = "https://github.com/rsyslog/rsyslog/releases"
UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)"
@@ -46,8 +47,8 @@ EXTRA_OECONF:remove:riscv32 = "ap_cv_atomic_builtins=yes"
# first line is default yes in configure
PACKAGECONFIG ??= " \
- rsyslogd rsyslogrt klog inet regexp uuid libgcrypt \
- fmhttp imdiag gnutls imfile \
+ rsyslogd rsyslogrt klog inet regexp uuid libcap-ng libgcrypt \
+ fmhttp imdiag openssl imfile \
${@bb.utils.filter('DISTRO_FEATURES', 'snmp systemd', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'testbench relp ${VALGRIND}', '', d)} \
"
@@ -59,6 +60,7 @@ PACKAGECONFIG[rsyslogrt] = "--enable-rsyslogrt,--disable-rsyslogrt,,"
PACKAGECONFIG[fmhttp] = "--enable-fmhttp,--disable-fmhttp,curl,"
PACKAGECONFIG[inet] = "--enable-inet,--disable-inet,,"
PACKAGECONFIG[klog] = "--enable-klog,--disable-klog,,"
+PACKAGECONFIG[libcap-ng] = "--enable-libcap-ng,--disable-libcap-ng,libcap-ng,"
PACKAGECONFIG[regexp] = "--enable-regexp,--disable-regexp,,"
PACKAGECONFIG[uuid] = "--enable-uuid,--disable-uuid,util-linux,"
PACKAGECONFIG[libgcrypt] = "--enable-libgcrypt,--disable-libgcrypt,libgcrypt,"
@@ -70,7 +72,8 @@ PACKAGECONFIG[imdiag] = "--enable-imdiag,--disable-imdiag,,"
PACKAGECONFIG[imfile] = "--enable-imfile,--disable-imfile,,"
PACKAGECONFIG[snmp] = "--enable-snmp,--disable-snmp,net-snmp,"
PACKAGECONFIG[gnutls] = "--enable-gnutls,--disable-gnutls,gnutls,"
-PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,--without-systemdsystemunitdir,systemd,"
+PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl,"
+PACKAGECONFIG[systemd] = "--enable-libsystemd,--disable-libsystemd,systemd,"
PACKAGECONFIG[imjournal] = "--enable-imjournal,--disable-imjournal,"
PACKAGECONFIG[mmjsonparse] = "--enable-mmjsonparse,--disable-mmjsonparse,"
PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5,"
@@ -134,9 +137,9 @@ do_install_ptest() {
do_install:append() {
install -d "${D}${sysconfdir}/init.d"
install -d "${D}${sysconfdir}/logrotate.d"
- install -m 755 ${WORKDIR}/initscript ${D}${sysconfdir}/init.d/syslog
- install -m 644 ${WORKDIR}/rsyslog.conf ${D}${sysconfdir}/rsyslog.conf
- install -m 644 ${WORKDIR}/rsyslog.logrotate ${D}${sysconfdir}/logrotate.d/logrotate.rsyslog
+ install -m 755 ${UNPACKDIR}/initscript ${D}${sysconfdir}/init.d/syslog
+ install -m 644 ${UNPACKDIR}/rsyslog.conf ${D}${sysconfdir}/rsyslog.conf
+ install -m 644 ${UNPACKDIR}/rsyslog.logrotate ${D}${sysconfdir}/logrotate.d/logrotate.rsyslog
sed -i -e "s#@BINDIR@#${bindir}#g" ${D}${sysconfdir}/logrotate.d/logrotate.rsyslog
if ${@bb.utils.contains('PACKAGECONFIG', 'imjournal', 'true', 'false', d)}; then
@@ -149,7 +152,7 @@ do_install:append() {
fi
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
install -d ${D}${systemd_system_unitdir}
- install -m 644 ${WORKDIR}/rsyslog.service ${D}${systemd_system_unitdir}
+ install -m 644 ${UNPACKDIR}/rsyslog.service ${D}${systemd_system_unitdir}
sed -i -e "s,@sbindir@,${sbindir},g" ${D}${systemd_system_unitdir}/rsyslog.service
fi
}