All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Kanavin <alex.kanavin@gmail.com>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH 02/20] rpm: fix with musl and latest elfutils.
Date: Tue, 14 Jan 2020 14:59:49 +0100	[thread overview]
Message-ID: <20200114140007.36622-2-alex.kanavin@gmail.com> (raw)
In-Reply-To: <20200114140007.36622-1-alex.kanavin@gmail.com>

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...lugins.c-call-dlerror-prior-to-dlsym.patch | 29 +++++++++++++++++++
 meta/recipes-devtools/rpm/rpm_4.14.2.1.bb     |  1 +
 2 files changed, 30 insertions(+)
 create mode 100644 meta/recipes-devtools/rpm/files/0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch

diff --git a/meta/recipes-devtools/rpm/files/0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch b/meta/recipes-devtools/rpm/files/0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch
new file mode 100644
index 00000000000..8842e3ebd71
--- /dev/null
+++ b/meta/recipes-devtools/rpm/files/0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch
@@ -0,0 +1,29 @@
+From 6878a83f9bac015c64d83cee42530a20a264cc5a Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Tue, 7 Jan 2020 12:02:06 +0100
+Subject: [PATCH] rpmplugins.c: call dlerror() prior to dlsym()
+
+This is the recommended way in the manpage; if there is
+a lingering error from an unrelated dl*() call that was
+never obtained via dlerror(), it needs to be cleared
+prior to calling dlsym().
+
+Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/998]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ lib/rpmplugins.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/lib/rpmplugins.c b/lib/rpmplugins.c
+index 65e684e84..b950f85cf 100644
+--- a/lib/rpmplugins.c
++++ b/lib/rpmplugins.c
+@@ -68,6 +68,8 @@ static rpmPlugin rpmPluginNew(const char *name, const char *path,
+ 
+     /* make sure the plugin has the supported hooks flag */
+     hooks_name = rstrscat(NULL, name, "_hooks", NULL);
++    /* clear out any old errors that weren't fetched */
++    dlerror();
+     hooks = dlsym(handle, hooks_name);
+     if ((error = dlerror()) != NULL) {
+ 	rpmlog(RPMLOG_ERR, _("Failed to resolve symbol %s: %s\n"),
diff --git a/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb b/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
index 339bd7b8343..17255dc87a7 100644
--- a/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
+++ b/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
@@ -43,6 +43,7 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.14.x \
            file://0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch \
            file://0001-mono-find-provides-requires-do-not-use-monodis-from-.patch \
            file://0001-Rip-out-partial-support-for-unused-MD2-and-RIPEMD160.patch \
+           file://0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch \
            "
 
 PE = "1"
-- 
2.17.1



  reply	other threads:[~2020-01-14 14:00 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-14 13:59 [PATCH 01/20] rpm: switch to openssl from nss Alexander Kanavin
2020-01-14 13:59 ` Alexander Kanavin [this message]
2020-01-14 13:59 ` [PATCH 03/20] nss: update to 3.49.1 Alexander Kanavin
2020-01-14 21:22   ` Richard Purdie
2020-01-14 13:59 ` [PATCH 04/20] python3: update to 3.8.1 Alexander Kanavin
2020-01-15 13:39   ` Richard Purdie
2020-01-14 13:59 ` [PATCH 05/20] gstreamer1.0-python: add a patch to fix python 3.8 builds Alexander Kanavin
2020-01-14 13:59 ` [PATCH 06/20] acl/attr: update to latest upstream releases Alexander Kanavin
2020-01-14 13:59 ` [PATCH 07/20] pseudo: adjust for attr 2.4.48 Alexander Kanavin
2020-01-14 13:59 ` [PATCH 08/20] ltp: update to 20190930 Alexander Kanavin
2020-01-14 13:59 ` [PATCH 09/20] ifupdown: update 0.8.22 -> 0.8.35 Alexander Kanavin
2020-01-14 13:59 ` [PATCH 10/20] elfutils: upgrade 0.177 -> 0.178 Alexander Kanavin
2020-01-14 13:59 ` [PATCH 11/20] libcap: update to 2.31 Alexander Kanavin
2020-01-14 21:23   ` Richard Purdie
2020-01-14 13:59 ` [PATCH 12/20] busybox: fix failing ptests Alexander Kanavin
2020-01-14 14:00 ` [PATCH 13/20] dbus: fix failing ptest (by disabling as it needs X) Alexander Kanavin
2020-01-14 14:00 ` [PATCH 14/20] glib: disable a failing ptest Alexander Kanavin
2020-01-14 14:00 ` [PATCH 15/20] libevent: disable ptests that require a DNS and an intenet connection Alexander Kanavin
2020-01-14 14:00 ` [PATCH 16/20] iputils: resolve a name clash with latest libcap Alexander Kanavin
2020-01-14 14:00 ` [PATCH 17/20] perl: fix failing ptests Alexander Kanavin
2020-01-14 14:00 ` [PATCH 18/20] bash: exclude from ptests Alexander Kanavin
2020-01-14 14:00 ` [PATCH 19/20] strace: fix failing ptests Alexander Kanavin
2020-01-14 14:00 ` [PATCH 20/20] valgrind: partially fix ptests Alexander Kanavin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200114140007.36622-2-alex.kanavin@gmail.com \
    --to=alex.kanavin@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.