From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id E03E2158041 for ; Thu, 22 Feb 2024 19:57:59 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 015CDE2A65; Thu, 22 Feb 2024 19:57:59 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id D2835E2A65 for ; Thu, 22 Feb 2024 19:57:58 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id B32C63431EE for ; Thu, 22 Feb 2024 19:57:57 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 2051DE5F for ; Thu, 22 Feb 2024 19:57:56 +0000 (UTC) From: "Patrick McLean" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Patrick McLean" Message-ID: <1708631837.5d080387eead3b713ae6e98fb36dda7c0b184c4d.chutzpah@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sys-fs/multipath-tools/files/, sys-fs/multipath-tools/ X-VCS-Repository: repo/gentoo X-VCS-Files: sys-fs/multipath-tools/files/multipath-tools-0.9.7-null-pointer-dereference-in-uev_update_path.patch sys-fs/multipath-tools/multipath-tools-0.9.7-r1.ebuild X-VCS-Directories: sys-fs/multipath-tools/files/ sys-fs/multipath-tools/ X-VCS-Committer: chutzpah X-VCS-Committer-Name: Patrick McLean X-VCS-Revision: 5d080387eead3b713ae6e98fb36dda7c0b184c4d X-VCS-Branch: master Date: Thu, 22 Feb 2024 19:57:56 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: dba3f430-5289-4d64-bc65-2b675f460bf3 X-Archives-Hash: 9d41579f1717748cdef13a9ffee2294b commit: 5d080387eead3b713ae6e98fb36dda7c0b184c4d Author: Patrick McLean gentoo org> AuthorDate: Thu Feb 22 19:57:17 2024 +0000 Commit: Patrick McLean gentoo org> CommitDate: Thu Feb 22 19:57:17 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5d080387 sys-fs/multipath-tools: Revbump, fix segfault (bug #925189) Closes: https://bugs.gentoo.org/925189 Signed-off-by: Patrick McLean gentoo.org> ...ll-pointer-dereference-in-uev_update_path.patch | 28 ++++++ .../multipath-tools-0.9.7-r1.ebuild | 103 +++++++++++++++++++++ 2 files changed, 131 insertions(+) diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.9.7-null-pointer-dereference-in-uev_update_path.patch b/sys-fs/multipath-tools/files/multipath-tools-0.9.7-null-pointer-dereference-in-uev_update_path.patch new file mode 100644 index 000000000000..0210563bd7c0 --- /dev/null +++ b/sys-fs/multipath-tools/files/multipath-tools-0.9.7-null-pointer-dereference-in-uev_update_path.patch @@ -0,0 +1,28 @@ +From fc8b102c666d7fbad9242dea43a64941399a1c0d Mon Sep 17 00:00:00 2001 +From: Benjamin Marzinski +Date: Tue, 16 Jan 2024 20:19:11 -0500 +Subject: [PATCH] multipathd: fix null pointer dereference in uev_update_path + +The Auto-resize code added a check that deferences pp->mpp without +checking that it's non-NULL. Fix it. + +Fixes: 981b83ad1 ("multipathd: Add auto_resize config option") +Signed-off-by: Benjamin Marzinski +Reviewed-by: Martin Wilck +--- + multipathd/main.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/multipathd/main.c b/multipathd/main.c +index 74f6cd92..fbc3f8da 100644 +--- a/multipathd/main.c ++++ b/multipathd/main.c +@@ -1630,7 +1630,7 @@ uev_update_path (struct uevent *uev, struct vectors * vecs) + } + } + } +- if (auto_resize != AUTO_RESIZE_NEVER && ++ if (auto_resize != AUTO_RESIZE_NEVER && mpp && + !mpp->wait_for_udev) { + struct pathgroup *pgp; + struct path *pp2; diff --git a/sys-fs/multipath-tools/multipath-tools-0.9.7-r1.ebuild b/sys-fs/multipath-tools/multipath-tools-0.9.7-r1.ebuild new file mode 100644 index 000000000000..d0757b9e83ff --- /dev/null +++ b/sys-fs/multipath-tools/multipath-tools-0.9.7-r1.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic linux-info systemd tmpfiles toolchain-funcs udev + +DESCRIPTION="Device mapper target autoconfig" +HOMEPAGE="http://christophe.varoqui.free.fr/" +SRC_URI="https://github.com/opensvc/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="systemd test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-libs/json-c:= + dev-libs/libaio + dev-libs/userspace-rcu:= + >=sys-fs/lvm2-2.02.45 + sys-libs/readline:= + >=virtual/libudev-232-r3 + systemd? ( sys-apps/systemd ) +" +DEPEND=" + ${RDEPEND} + test? ( dev-util/cmocka ) +" +BDEPEND="virtual/pkgconfig" + +CONFIG_CHECK="~DM_MULTIPATH" + +PATCHES=( + "${FILESDIR}"/${PN}-0.9.7-remove-Werror.patch + "${FILESDIR}"/${P}-null-pointer-dereference-in-uev_update_path.patch +) + +myemake() { + local myemakeargs=( + prefix="${EPREFIX}" + usr_prefix="${EPREFIX}/usr" + LIB="$(get_libdir)" + RUN=run + plugindir="${EPREFIX}/$(get_libdir)/multipath" + unitdir="$(systemd_get_systemunitdir)" + libudevdir="${EPREFIX}$(get_udevdir)" + GENTOO_CFLAGS="${CFLAGS}" + GENTOO_CPPFLAGS="${CPPFLAGS}" + FORTIFY_OPT= + OPTFLAGS= + FAKEVAR=1 + V=1 + ) + + emake "${myemakeargs[@]}" "$@" +} + +src_prepare() { + default + + sed -r -i -e '/^(CPPFLAGS|CFLAGS)\>/s,^(CPPFLAGS|CFLAGS)\>[[:space:]]+:=,\1 := $(GENTOO_\1),' \ + "${S}"/Makefile.inc || die +} + +src_compile() { + tc-export CC + # Breaks with always_inline + filter-flags -fno-semantic-interposition + myemake +} + +src_test() { + myemake test +} + +src_install() { + dodir /sbin + + myemake DESTDIR="${ED}" install + + einstalldocs + + newinitd "${FILESDIR}"/multipathd-r1.rc multipathd + newinitd "${FILESDIR}"/multipath.rc multipath + + find "${ED}" -type f -name '*.la' -delete || die +} + +pkg_postinst() { + tmpfiles_process /usr/lib/tmpfiles.d/multipath.conf + udev_reload + + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog "If you need multipath on your system, you must" + elog "add 'multipath' into your boot runlevel!" + fi +} + +pkg_postrm() { + udev_reload +}