summaryrefslogtreecommitdiff
path: root/meta-openembedded/meta-oe/dynamic-layers/perl-layer/recipes-support/rasdaemon/files/0001-libtrace-Use-XSI-version-of-strerror_r-on-non-glibc-.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openembedded/meta-oe/dynamic-layers/perl-layer/recipes-support/rasdaemon/files/0001-libtrace-Use-XSI-version-of-strerror_r-on-non-glibc-.patch')
-rw-r--r--meta-openembedded/meta-oe/dynamic-layers/perl-layer/recipes-support/rasdaemon/files/0001-libtrace-Use-XSI-version-of-strerror_r-on-non-glibc-.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/dynamic-layers/perl-layer/recipes-support/rasdaemon/files/0001-libtrace-Use-XSI-version-of-strerror_r-on-non-glibc-.patch b/meta-openembedded/meta-oe/dynamic-layers/perl-layer/recipes-support/rasdaemon/files/0001-libtrace-Use-XSI-version-of-strerror_r-on-non-glibc-.patch
new file mode 100644
index 0000000000..fef71afde5
--- /dev/null
+++ b/meta-openembedded/meta-oe/dynamic-layers/perl-layer/recipes-support/rasdaemon/files/0001-libtrace-Use-XSI-version-of-strerror_r-on-non-glibc-.patch
@@ -0,0 +1,35 @@
+From e415152b51eacab8705b6b3274cc0d1a274772e0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 30 Aug 2022 19:54:35 -0700
+Subject: [PATCH] libtrace: Use XSI version of strerror_r on non glibc systems
+
+The version used is glibc specific therefore make it so
+and provide a fallback for non-glibc systems
+
+Upstream-Status: Submitted [https://github.com/mchehab/rasdaemon/pull/70]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libtrace/event-parse.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/libtrace/event-parse.c b/libtrace/event-parse.c
+index 6c705c3..6b651d5 100644
+--- a/libtrace/event-parse.c
++++ b/libtrace/event-parse.c
+@@ -5071,7 +5071,13 @@ int pevent_strerror(struct pevent *pevent, enum pevent_errno errnum,
+ const char *msg;
+
+ if (errnum >= 0) {
++#if defined(__GLIBC__)
+ msg = strerror_r(errnum, buf, buflen);
++#else
++ if (strerror_r(errnum, buf, buflen) != 0)
++ snprintf(buf, buflen, "unknown error %i", errnum);
++ msg = buf;
++#endif
+ if (msg != buf) {
+ size_t len = strlen(msg);
+ memcpy(buf, msg, min(buflen - 1, len));
+--
+2.37.3
+