diff options
author | Tim Yamin <plasmaroo@gentoo.org> | 2004-04-15 18:04:23 +0000 |
---|---|---|
committer | Tim Yamin <plasmaroo@gentoo.org> | 2004-04-15 18:04:23 +0000 |
commit | 3e1adcdb68abd33b79699a764c7751ec95b0cd62 (patch) | |
tree | f47fa3cea328e4787f0cbf9ea0fbff185260ff62 /sys-kernel/usermode-sources | |
parent | spaaaaaaarc (Manifest recommit) (diff) | |
download | gentoo-2-3e1adcdb68abd33b79699a764c7751ec95b0cd62.tar.gz gentoo-2-3e1adcdb68abd33b79699a764c7751ec95b0cd62.tar.bz2 gentoo-2-3e1adcdb68abd33b79699a764c7751ec95b0cd62.zip |
Version bump for the CAN-2004-0109 issue; bug #47881.
Diffstat (limited to 'sys-kernel/usermode-sources')
-rw-r--r-- | sys-kernel/usermode-sources/ChangeLog | 11 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/digest-usermode-sources-2.4.24-r2 (renamed from sys-kernel/usermode-sources/files/digest-usermode-sources-2.4.24-r1) | 0 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.3-r2 (renamed from sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.3-r1) | 0 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/usermode-sources-2.4.24.CAN-2004-0109.patch | 87 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/usermode-sources-2.6.3.CAN-2004-0109.patch | 88 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/usermode-sources-2.4.24-r2.ebuild (renamed from sys-kernel/usermode-sources/usermode-sources-2.4.24-r1.ebuild) | 26 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/usermode-sources-2.6.3-r2.ebuild (renamed from sys-kernel/usermode-sources/usermode-sources-2.6.3-r1.ebuild) | 6 |
7 files changed, 197 insertions, 21 deletions
diff --git a/sys-kernel/usermode-sources/ChangeLog b/sys-kernel/usermode-sources/ChangeLog index f33dd681b317..18bca9320f2c 100644 --- a/sys-kernel/usermode-sources/ChangeLog +++ b/sys-kernel/usermode-sources/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for sys-kernel/usermode-sources # Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/usermode-sources/ChangeLog,v 1.29 2004/04/12 16:36:23 aliz Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/usermode-sources/ChangeLog,v 1.30 2004/04/15 18:04:22 plasmaroo Exp $ + +*usermode-sources-2.6.3-r2 (15 Apr 2004) + + 15 Apr 2004; <plasmaroo@gentoo.org> + +files/usermode-sources-2.4.24.CAN-2004-0109.patch, + +files/usermode-sources-2.6.3.CAN-2004-0109.patch, + -usermode-sources-2.4.24-r1.ebuild, +usermode-sources-2.4.24-r2.ebuild, + -usermode-sources-2.6.3-r1.ebuild, +usermode-sources-2.6.3-r2.ebuild: + Version bump for the CAN-2004-0109 issue; bug #47881. 12 Apr 2004; Daniel Ahlberg <aliz@gentoo.org> usermode-sources-2.6.3-r1.ebuild: diff --git a/sys-kernel/usermode-sources/files/digest-usermode-sources-2.4.24-r1 b/sys-kernel/usermode-sources/files/digest-usermode-sources-2.4.24-r2 index 1afde5baa80a..1afde5baa80a 100644 --- a/sys-kernel/usermode-sources/files/digest-usermode-sources-2.4.24-r1 +++ b/sys-kernel/usermode-sources/files/digest-usermode-sources-2.4.24-r2 diff --git a/sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.3-r1 b/sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.3-r2 index 4648c8799288..4648c8799288 100644 --- a/sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.3-r1 +++ b/sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.3-r2 diff --git a/sys-kernel/usermode-sources/files/usermode-sources-2.4.24.CAN-2004-0109.patch b/sys-kernel/usermode-sources/files/usermode-sources-2.4.24.CAN-2004-0109.patch new file mode 100644 index 000000000000..d02b51c57fc6 --- /dev/null +++ b/sys-kernel/usermode-sources/files/usermode-sources-2.4.24.CAN-2004-0109.patch @@ -0,0 +1,87 @@ +--- linux/fs/isofs/rock.c.orig ++++ linux/fs/isofs/rock.c +@@ -14,6 +14,7 @@ + #include <linux/slab.h> + #include <linux/pagemap.h> + #include <linux/smp_lock.h> ++#include <asm/page.h> + + #include "rock.h" + +@@ -419,7 +420,7 @@ + return 0; + } + +-static char *get_symlink_chunk(char *rpnt, struct rock_ridge *rr) ++static char *get_symlink_chunk(char *rpnt, struct rock_ridge *rr, char *plimit) + { + int slen; + int rootflag; +@@ -431,16 +432,25 @@ + rootflag = 0; + switch (slp->flags & ~1) { + case 0: ++ if (slp->len > plimit - rpnt) ++ return NULL; + memcpy(rpnt, slp->text, slp->len); + rpnt+=slp->len; + break; ++ case 2: ++ if (rpnt >= plimit) ++ return NULL; ++ *rpnt++='.'; ++ break; + case 4: ++ if (2 > plimit - rpnt) ++ return NULL; + *rpnt++='.'; +- /* fallthru */ +- case 2: + *rpnt++='.'; + break; + case 8: ++ if (rpnt >= plimit) ++ return NULL; + rootflag = 1; + *rpnt++='/'; + break; +@@ -457,17 +467,23 @@ + * If there is another SL record, and this component + * record isn't continued, then add a slash. + */ +- if ((!rootflag) && (rr->u.SL.flags & 1) && !(oldslp->flags & 1)) ++ if ((!rootflag) && (rr->u.SL.flags & 1) && ++ !(oldslp->flags & 1)) { ++ if (rpnt >= plimit) ++ return NULL; + *rpnt++='/'; ++ } + break; + } + + /* + * If this component record isn't continued, then append a '/'. + */ +- if (!rootflag && !(oldslp->flags & 1)) ++ if (!rootflag && !(oldslp->flags & 1)) { ++ if (rpnt >= plimit) ++ return NULL; + *rpnt++='/'; +- ++ } + } + return rpnt; + } +@@ -548,7 +564,10 @@ + CHECK_SP(goto out); + break; + case SIG('S', 'L'): +- rpnt = get_symlink_chunk(rpnt, rr); ++ rpnt = get_symlink_chunk(rpnt, rr, ++ link + (PAGE_SIZE - 1)); ++ if (rpnt == NULL) ++ goto out; + break; + case SIG('C', 'E'): + /* This tells is if there is a continuation record */ + diff --git a/sys-kernel/usermode-sources/files/usermode-sources-2.6.3.CAN-2004-0109.patch b/sys-kernel/usermode-sources/files/usermode-sources-2.6.3.CAN-2004-0109.patch new file mode 100644 index 000000000000..d7726c2e5aaf --- /dev/null +++ b/sys-kernel/usermode-sources/files/usermode-sources-2.6.3.CAN-2004-0109.patch @@ -0,0 +1,88 @@ +--- linux/fs/isofs/rock.c.orig ++++ linux/fs/isofs/rock.c +@@ -14,6 +14,7 @@ + #include <linux/slab.h> + #include <linux/pagemap.h> + #include <linux/smp_lock.h> + #include <linux/buffer_head.h> ++#include <asm/page.h> + + #include "rock.h" +@@ -419,7 +420,7 @@ int parse_rock_ridge_inode_internal(stru + return 0; + } + +-static char *get_symlink_chunk(char *rpnt, struct rock_ridge *rr) ++static char *get_symlink_chunk(char *rpnt, struct rock_ridge *rr, char *plimit) + { + int slen; + int rootflag; +@@ -431,16 +432,25 @@ static char *get_symlink_chunk(char *rpn + rootflag = 0; + switch (slp->flags & ~1) { + case 0: ++ if (slp->len > plimit - rpnt) ++ return NULL; + memcpy(rpnt, slp->text, slp->len); + rpnt+=slp->len; + break; ++ case 2: ++ if (rpnt >= plimit) ++ return NULL; ++ *rpnt++='.'; ++ break; + case 4: ++ if (2 > plimit - rpnt) ++ return NULL; + *rpnt++='.'; +- /* fallthru */ +- case 2: + *rpnt++='.'; + break; + case 8: ++ if (rpnt >= plimit) ++ return NULL; + rootflag = 1; + *rpnt++='/'; + break; +@@ -457,17 +467,23 @@ static char *get_symlink_chunk(char *rpn + * If there is another SL record, and this component + * record isn't continued, then add a slash. + */ +- if ((!rootflag) && (rr->u.SL.flags & 1) && !(oldslp->flags & 1)) ++ if ((!rootflag) && (rr->u.SL.flags & 1) && ++ !(oldslp->flags & 1)) { ++ if (rpnt >= plimit) ++ return NULL; + *rpnt++='/'; ++ } + break; + } + + /* + * If this component record isn't continued, then append a '/'. + */ +- if (!rootflag && !(oldslp->flags & 1)) ++ if (!rootflag && !(oldslp->flags & 1)) { ++ if (rpnt >= plimit) ++ return NULL; + *rpnt++='/'; +- ++ } + } + return rpnt; + } +@@ -548,7 +564,10 @@ static int rock_ridge_symlink_readpage(s + CHECK_SP(goto out); + break; + case SIG('S', 'L'): +- rpnt = get_symlink_chunk(rpnt, rr); ++ rpnt = get_symlink_chunk(rpnt, rr, ++ link + (PAGE_SIZE - 1)); ++ if (rpnt == NULL) ++ goto out; + break; + case SIG('C', 'E'): + /* This tells is if there is a continuation record */ + + diff --git a/sys-kernel/usermode-sources/usermode-sources-2.4.24-r1.ebuild b/sys-kernel/usermode-sources/usermode-sources-2.4.24-r2.ebuild index 283e7bc8831d..65c140cb52e4 100644 --- a/sys-kernel/usermode-sources/usermode-sources-2.4.24-r1.ebuild +++ b/sys-kernel/usermode-sources/usermode-sources-2.4.24-r2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2004 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/usermode-sources/usermode-sources-2.4.24-r1.ebuild,v 1.1 2004/02/18 18:48:56 iggy Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/usermode-sources/usermode-sources-2.4.24-r2.ebuild,v 1.1 2004/04/15 18:04:22 plasmaroo Exp $ ETYPE="sources" inherit kernel eutils @@ -13,9 +13,9 @@ SRC_URI="mirror://kernel/linux/kernel/v2.4/linux-${PV}.tar.bz2 mirror://sourceforge/user-mode-linux/${UML_PATCH}.bz2" HOMEPAGE="http://www.kernel.org/ http://user-mode-linux.sourceforge.net" LICENSE="GPL-2" -SLOT="${PV}" +SLOT="${PV}-${PR}" KEYWORDS="x86" -EXTRAVERSION=${PR} +EXTRAVERSION="-uml1-${PR}" RESTRICT="nomirror" # console-tools is needed to solve the loadkeys fiasco. @@ -23,28 +23,20 @@ RESTRICT="nomirror" DEPEND=">=sys-devel/binutils-2.11.90.0.31 dev-lang/perl" RDEPEND=">=sys-libs/ncurses-5.2" -S=${WORKDIR}/linux-${PV} +S=${WORKDIR}/linux-${PV}${EXTRAVERSION} src_unpack() { - # unpack vanilla sources cd ${WORKDIR} unpack linux-${PV}.tar.bz2 - # apply usermode patch - cd ${S} + mv linux-${PV} ${S} && cd ${S} epatch ${DISTDIR}/${UML_PATCH}.bz2 - epatch ${FILESDIR}/${P}.munmap.patch || die "failed to apply munmap patch" - - #epatch ${FILESDIR}/${PN}.CAN-2003-0985.patch || die "Failed to patch mremap() vulnerability!" - #epatch ${FILESDIR}/${PN}-2.4.22.rtc_fix.patch || die "Failed to patch RTC vulnerabilities!" + epatch ${FILESDIR}/${P}.munmap.patch || die "Failed to apply munmap patch!" + epatch ${FILESDIR}/${P}.CAN-2004-0109.patch || die "Failed to patch CAN-2004-0109 vulnerability!" kernel_universal_unpack } -src_compile() { - true -} - src_install() { mkdir -p ${D}/usr/src/uml @@ -53,7 +45,7 @@ src_install() { chown -R root:root * chmod -R a+r-w+X,u+w * - mv linux-${PV} ${D}/usr/src/uml/ + mv linux-${PV}${EXTRAVERSION} ${D}/usr/src/uml/ } pkg_postinst() { @@ -61,6 +53,6 @@ pkg_postinst() { if [ ! -e ${ROOT}usr/src/uml/linux ] then rm -f ${ROOT}usr/src/uml/linux - ln -sf ${ROOT}usr/src/uml/linux-${PV} ${ROOT}usr/src/uml/linux + ln -sf ${ROOT}usr/src/uml/linux-${PV}${EXTRAVERSION} ${ROOT}usr/src/uml/linux fi } diff --git a/sys-kernel/usermode-sources/usermode-sources-2.6.3-r1.ebuild b/sys-kernel/usermode-sources/usermode-sources-2.6.3-r2.ebuild index 89ac67df62fb..38a3eb4a9a91 100644 --- a/sys-kernel/usermode-sources/usermode-sources-2.6.3-r1.ebuild +++ b/sys-kernel/usermode-sources/usermode-sources-2.6.3-r2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2004 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/usermode-sources/usermode-sources-2.6.3-r1.ebuild,v 1.2 2004/04/12 16:36:23 aliz Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/usermode-sources/usermode-sources-2.6.3-r2.ebuild,v 1.1 2004/04/15 18:04:22 plasmaroo Exp $ K_NOUSENAME="yes" ETYPE="sources" @@ -8,12 +8,12 @@ ETYPE="sources" inherit kernel-2 UML_PATCH="uml-patch-2.6.3-rc2-1" OKV="${PV}" -EXTRAVERSION="-${UML_PATCH//-*-/}" +EXTRAVERSION="-${UML_PATCH//-*-/}-${PR}" KV="${OKV}${EXTRAVERSION}" S="${WORKDIR}/linux-${KV}" IUSE="" -UNIPATCH_LIST="${DISTDIR}/${UML_PATCH}.bz2" +UNIPATCH_LIST="${DISTDIR}/${UML_PATCH}.bz2 ${FILESDIR}/${P}.CAN-2004-0109.patch" DESCRIPTION="Full (vanilla) sources for the User Mode Linux kernel" SRC_URI="mirror://kernel/linux/kernel/v2.6/linux-${PV}.tar.bz2 |