summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2009-10-05 08:00:47 +0000
committerMike Frysinger <vapier@gentoo.org>2009-10-05 08:00:47 +0000
commit2ecc616e804676dc6bcf4ed5723d27b6c0f4637b (patch)
tree412ffacd08a92136aca8a3dea37d51bc4a2fadff /sys-fs/mdadm
parentAvoid sandbox violations when xdg-mime is called during src_install, as repor... (diff)
downloadhistorical-2ecc616e804676dc6bcf4ed5723d27b6c0f4637b.tar.gz
historical-2ecc616e804676dc6bcf4ed5723d27b6c0f4637b.tar.bz2
historical-2ecc616e804676dc6bcf4ed5723d27b6c0f4637b.zip
Add fix from upstream for segfault #287338 by Marcin Mirosław.
Package-Manager: portage-2.2_rc42/cvs/Linux x86_64
Diffstat (limited to 'sys-fs/mdadm')
-rw-r--r--sys-fs/mdadm/ChangeLog8
-rw-r--r--sys-fs/mdadm/Manifest14
-rw-r--r--sys-fs/mdadm/files/mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch51
-rw-r--r--sys-fs/mdadm/mdadm-3.0.2-r1.ebuild63
4 files changed, 134 insertions, 2 deletions
diff --git a/sys-fs/mdadm/ChangeLog b/sys-fs/mdadm/ChangeLog
index 70bef600cd05..0b37ae1c2fb7 100644
--- a/sys-fs/mdadm/ChangeLog
+++ b/sys-fs/mdadm/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sys-fs/mdadm
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/mdadm/ChangeLog,v 1.115 2009/10/04 20:12:11 klausman Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/mdadm/ChangeLog,v 1.116 2009/10/05 08:00:46 vapier Exp $
+
+*mdadm-3.0.2-r1 (05 Oct 2009)
+
+ 05 Oct 2009; Mike Frysinger <vapier@gentoo.org> +mdadm-3.0.2-r1.ebuild,
+ +files/mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch:
+ Add fix from upstream for segfault #287338 by Marcin Mirosław.
04 Oct 2009; Tobias Klausmann <klausman@gentoo.org> mdadm-3.0.ebuild:
Stable on alpha, bug #287013
diff --git a/sys-fs/mdadm/Manifest b/sys-fs/mdadm/Manifest
index 90a587dff3f3..d2a72725099d 100644
--- a/sys-fs/mdadm/Manifest
+++ b/sys-fs/mdadm/Manifest
@@ -1,8 +1,12 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
AUX 64-md-raid.rules 738 RMD160 95f8934aded76f5b85e5f2ff9f9f250f8c4a4300 SHA1 4c4a103fd8ed7134f8b86b1f7d2f4f6cf439184e SHA256 9ad68b9efc5bf7785c1a5cc4b49568f54b25ad0b9783a7642e60a131ef238f3b
AUX mdadm-1.9.0-dont-make-man.patch 260 RMD160 439a95518c7890bf72ef463ec274c53437f4ac5e SHA1 b40ab96938d0a0d80a25d67fc263c94c76749269 SHA256 71c81dbbfa1d466e9ee2d3ff0afa8b2d57e75be5dbccdbdd837786723943f7cd
AUX mdadm-2.6-syslog-updates.patch 1117 RMD160 c7de674fc76eb444d1d5f97a5a4c59c955aa51b6 SHA1 c00f4f283acd226241aed07e35133f965bb8b154 SHA256 207fd5ec76829fed5310f766001686807c623fe3eee541701f3366f96ef77b86
AUX mdadm-2.6.4-mdassemble.patch 465 RMD160 4abcfcd75242d552f674a850ea116835a8f56aea SHA1 609161b594c51644f30de98a7a74473361bdb98b SHA256 015321cbb219f80444c9d56d01bde36f828d2814c57712a7655bdbae811ff8c4
AUX mdadm-3.0-dont-make-man.patch 278 RMD160 a0275251626d91dc53b3fadfab6543961f5d7608 SHA1 0c74b7f10fab185442654bb965ac557daa567c17 SHA256 bfc42300913a178c3bcd5f9af4c721893224b2741beddcfba6498d012b1d5679
+AUX mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch 1415 RMD160 2b625be99bcceb98bd4d795ed1a552177da4ce09 SHA1 5a2f5f131d049e0fe37807a2718af627f5d00bac SHA256 4c7ddaf790e2460238b34911836515bfcd12d97747eef2f8c6bba68c01b2f214
AUX mdadm.confd 205 RMD160 9b4af661ef05e6dbab9ead55506a1ef0670a9076 SHA1 46d75372ecfcfcb34b1576bd994c22cae24f2a79 SHA256 ec55674955af7a31da51b8b72b599e8519809287dad796a9b16155bcba471b79
AUX mdadm.rc 574 RMD160 69640d0b1fbd11bd7078c0e7791d247420653b73 SHA1 39044e7d6ad63c44669baf9775230670f04b201c SHA256 3073b14619cb7b2c99c33f2d6cfd1e59ce5557899bffebaa65fa52f3caffadc7
AUX mdraid.rc 637 RMD160 64741e62695e9dbefba5dcef37137e93d621f5e6 SHA1 c443e5cb47359b307515d942ca3d6b713b4f2244 SHA256 55c37752aa34db35bc36f566b0f093e21022ee9ae9dd11465e472d192a8631d2
@@ -19,7 +23,15 @@ DIST mdadm-3.0.2.tar.bz2 252754 RMD160 3cb6407272c797cebd7496cf19b2b3a52ee68633
DIST mdadm-3.0.tar.bz2 250775 RMD160 b54ef427b1561216995b43171114042ecd4b4368 SHA1 e94defc72c585bed607eff51075045d172894229 SHA256 6fd6ab77c4d996879192edd8ad90cd512165a857795c25c98fc35206df6c2e64
EBUILD mdadm-2.6.8.ebuild 1905 RMD160 544dee7abda556795d2cd00d357afa15305334b1 SHA1 946cbde625acd4be80514f3aeb94e15d2333ff46 SHA256 db3c592725b327caa5bc56fce00d504afe9b25eab19f7a8f502a38c2ed62cc44
EBUILD mdadm-2.6.9-r1.ebuild 1977 RMD160 41dd3c473fa25f4942f4b8f148f399495aff1f2d SHA1 475642c948ce06532965f8d3bbc4e591a53aa7be SHA256 a593744ea7bf85213781ec50d29554ae402da78e11046219d409428198ae76cc
+EBUILD mdadm-3.0.2-r1.ebuild 2059 RMD160 67abd4c018d55b94cb69b3323f08cf13dd61f614 SHA1 97553bd59b7f0eea30dced9e5c40b3d0b44dad69 SHA256 e0e86b80b4931ed77441ba3c4d5e111a86fa26e0589017e85e2e2b4c5f31a70e
EBUILD mdadm-3.0.2.ebuild 1975 RMD160 d8b2199b759aa74172d52c40cfb14818a590b13e SHA1 29e6a861feceaec8a90c5cedcf8ea2c1d0c26e2c SHA256 9b4c524887dcf527f0ddd8a29fc9e7f7b3b7cbcefb83dda0a9f9bfd403b698ac
EBUILD mdadm-3.0.ebuild 1973 RMD160 631efbf7509289fb9caed85b03c6ce1fcaa282cb SHA1 9cfd98f93657af48fe6d87045e82ae30f2079d8f SHA256 940ce0d33120efc94d7d95b7df5d3b1ceb5aa6bba480095f3d83b2c822d0e465
-MISC ChangeLog 18132 RMD160 110ec3d1241be3ec665217b671ed3f884816c9a6 SHA1 c86ca3d400620a0792837d02628bb6c581c1b26f SHA256 0c5cea5dfbf7ede0dbeab8fe55ca7cf5219477749157e181759dc08636b9d91a
+MISC ChangeLog 18370 RMD160 501fd42893e78ddcd28cb96ac323383b32be3997 SHA1 c0459521f4230dac6c668a57b9f3d31293d0f8a7 SHA256 7c4cff7bda8e23fa68ea1d89832d5ef85f8d883b98e54e49bd00a8a674d11141
MISC metadata.xml 164 RMD160 f43cbec30b7074319087c9acffdb9354b17b0db3 SHA1 9c213f5803676c56439df3716be07d6692588856 SHA256 f5f2891f2a4791cd31350bb2bb572131ad7235cd0eeb124c9912c187ac10ce92
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.11 (GNU/Linux)
+
+iEYEARECAAYFAkrJp7QACgkQlPl3HsVfCDoFrwCfaW5g5Vr1i/fNJv0wf9Kh5UYU
+7qYAn0pbBpowCm796xzcyXJZy3n6NNNY
+=9elf
+-----END PGP SIGNATURE-----
diff --git a/sys-fs/mdadm/files/mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch b/sys-fs/mdadm/files/mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch
new file mode 100644
index 000000000000..c740421487b0
--- /dev/null
+++ b/sys-fs/mdadm/files/mdadm-3.0.2-fix-null-dereference-in-set_member_info.patch
@@ -0,0 +1,51 @@
+http://bugs.gentoo.org/287338
+
+From 2b9aa337af7291d3f141322da96c9f667c99d53c Mon Sep 17 00:00:00 2001
+From: NeilBrown <neilb@suse.de>
+Date: Thu, 1 Oct 2009 12:51:04 +1000
+Subject: [PATCH] Fix null-dereference in set_member_info
+
+set_member_info would try to dereference ->metadata_version, without
+checking that it isn't NULL.
+
+Signed-off-by: NeilBrown <neilb@suse.de>
+---
+ mapfile.c | 15 +++++++++------
+ 1 files changed, 9 insertions(+), 6 deletions(-)
+
+diff --git a/mapfile.c b/mapfile.c
+index a3038be..ed59db5 100644
+--- a/mapfile.c
++++ b/mapfile.c
+@@ -303,19 +303,22 @@ struct map_ent *map_by_name(struct map_ent **map, char *name)
+ */
+ static void set_member_info(struct supertype *st, struct mdstat_ent *ent)
+ {
+- char version[strlen(ent->metadata_version)+1];
+
+ st->subarray[0] = '\0';
+
+- if (strncmp(ent->metadata_version, "external:", 9) != 0)
++ if (ent->metadata_version == NULL ||
++ strncmp(ent->metadata_version, "external:", 9) != 0)
+ return;
+
+- strcpy(version, ent->metadata_version);
+-
+- if (is_subarray(&version[9])) {
+- char *subarray = strrchr(version, '/');
++ if (is_subarray(&ent->metadata_version[9])) {
++ char version[strlen(ent->metadata_version)+1];
++ char *subarray;
+ char *name = &version[10];
+
++ strcpy(version, ent->metadata_version);
++ subarray = strrchr(version, '/');
++ name = &version[10];
++
+ if (!subarray)
+ return;
+ *subarray++ = '\0';
+--
+1.6.5.rc2
+
diff --git a/sys-fs/mdadm/mdadm-3.0.2-r1.ebuild b/sys-fs/mdadm/mdadm-3.0.2-r1.ebuild
new file mode 100644
index 000000000000..e5820ce92c34
--- /dev/null
+++ b/sys-fs/mdadm/mdadm-3.0.2-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/mdadm/mdadm-3.0.2-r1.ebuild,v 1.1 2009/10/05 08:00:46 vapier Exp $
+
+inherit eutils flag-o-matic
+
+DESCRIPTION="A useful tool for running RAID systems - it can be used as a replacement for the raidtools"
+HOMEPAGE="http://neil.brown.name/blog/mdadm"
+SRC_URI="mirror://kernel/linux/utils/raid/mdadm/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="static"
+
+DEPEND=""
+RDEPEND=">=sys-apps/util-linux-2.16"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${PN}-3.0-dont-make-man.patch
+ epatch "${FILESDIR}"/${PN}-2.6-syslog-updates.patch
+ epatch "${FILESDIR}"/${PN}-2.6.4-mdassemble.patch #211426
+ epatch "${FILESDIR}"/${P}-fix-null-dereference-in-set_member_info.patch #287338
+ use static && append-ldflags -static
+}
+
+src_compile() {
+ emake \
+ CROSS_COMPILE=${CHOST}- \
+ CWFLAGS="-Wall" \
+ CXFLAGS="${CFLAGS}" \
+ all mdassemble \
+ || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "make install failed"
+ into /
+ dosbin mdassemble || die
+ dodoc ChangeLog INSTALL TODO README* ANNOUNCE-${PV}
+
+ exeinto /$(get_libdir)/rcscripts/addons
+ newexe "${FILESDIR}"/raid-start.sh-3.0 raid-start.sh || die "addon failed"
+ newexe "${FILESDIR}"/raid-stop.sh raid-stop.sh || die "addon failed"
+
+ insinto /etc
+ newins mdadm.conf-example mdadm.conf
+ newinitd "${FILESDIR}"/mdadm.rc mdadm || die "installing mdadm.rc failed"
+ newconfd "${FILESDIR}"/mdadm.confd mdadm || die "installing mdadm.confd failed"
+ newinitd "${FILESDIR}"/mdraid.rc mdraid || die "installing mdraid.rc failed"
+
+ insinto /etc/udev/rules.d/
+ newins "${FILESDIR}"/udev-145-64-md-raid.rules 64-md-raid.rules || die
+}
+
+pkg_postinst() {
+ elog "If using baselayout-2 and not relying on kernel auto-detect"
+ elog "of your RAID devices, you need to add 'mdraid' to your 'boot'"
+ elog "runlevel. Run the following command:"
+ elog "rc-update add mdraid boot"
+}