Adding a fix for the 2.4 kNFSd security vulnerability and the 2.6 /dev/ptmx DoS,...
authorTim Yamin <plasmaroo@gentoo.org>
Tue, 9 Nov 2004 19:27:14 +0000 (19:27 +0000)
committerTim Yamin <plasmaroo@gentoo.org>
Tue, 9 Nov 2004 19:27:14 +0000 (19:27 +0000)
sys-kernel/uclinux-sources/ChangeLog
sys-kernel/uclinux-sources/Manifest
sys-kernel/uclinux-sources/files/digest-uclinux-sources-2.4.26_p0-r7 [moved from sys-kernel/uclinux-sources/files/digest-uclinux-sources-2.4.26_p0-r6 with 74% similarity]
sys-kernel/uclinux-sources/files/digest-uclinux-sources-2.6.7_p0-r7 [moved from sys-kernel/uclinux-sources/files/digest-uclinux-sources-2.6.7_p0-r6 with 73% similarity]
sys-kernel/uclinux-sources/files/uclinux-sources-2.4.26_p0.XDRWrapFix.patch [new file with mode: 0644]
sys-kernel/uclinux-sources/files/uclinux-sources-2.6.devPtmx.patch [new file with mode: 0644]
sys-kernel/uclinux-sources/uclinux-sources-2.4.26_p0-r7.ebuild [moved from sys-kernel/uclinux-sources/uclinux-sources-2.4.26_p0-r6.ebuild with 84% similarity]
sys-kernel/uclinux-sources/uclinux-sources-2.6.7_p0-r7.ebuild [moved from sys-kernel/uclinux-sources/uclinux-sources-2.6.7_p0-r6.ebuild with 83% similarity]

index 250804f32f5dc60533a6480eb5d88a717371ec12..6e153df729f7712a072075f207c0f9adc9c8d8b7 100644 (file)
@@ -1,6 +1,16 @@
 # ChangeLog for sys-kernel/uclinux-sources
 # Copyright 2000-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-kernel/uclinux-sources/ChangeLog,v 1.19 2004/10/21 18:26:55 plasmaroo Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/uclinux-sources/ChangeLog,v 1.20 2004/11/09 19:27:14 plasmaroo Exp $
+
+*uclinux-sources-2.4.26_p0-r7 (09 Nov 2004)
+
+  09 Nov 2004; <plasmaroo@gentoo.org> -uclinux-sources-2.4.26_p0-r6.ebuild,
+  +uclinux-sources-2.4.26_p0-r7.ebuild, -uclinux-sources-2.6.7_p0-r6.ebuild,
+  +uclinux-sources-2.6.7_p0-r7.ebuild,
+  +files/uclinux-sources-2.4.26_p0.XDRWrapFix.patch,
+  +files/uclinux-sources-2.6.devPtmx.patch:
+  Adding a fix for the 2.4 kNFSd security vulnerability and the 2.6 /dev/ptmx
+  DoS, bug #62524. Also fixed CAN-2004-0814 for 2.4 and 2.6, bug #68421.
 
 *uclinux-sources-2.6.7_p0-r6 (21 Oct 2004)
 
index 71b0d8e78d599d66bcc50269836183e800d0bb51..852e4c4aeb972ab1479e937caa93582d7977dad4 100644 (file)
@@ -1,18 +1,20 @@
-MD5 3230d51f1d8b876f1f7a8edcdb453d66 ChangeLog 5388
+MD5 0679dc6096268305dc35e6366ad255a7 ChangeLog 5874
+MD5 070c055de0f3423958cc872d27f7b338 uclinux-sources-2.4.26_p0-r7.ebuild 2398
 MD5 f3fa6c474b8727f8215534b7fc9c93ba metadata.xml 304
-MD5 6338c28a13241723e68a16b683b1ee85 uclinux-sources-2.4.26_p0-r6.ebuild 2114
-MD5 3bf0e352a2d08503e6adc21f074cd057 uclinux-sources-2.6.7_p0-r6.ebuild 2073
+MD5 ab6e72d33b41532b4139ce2981fbb9c8 uclinux-sources-2.6.7_p0-r7.ebuild 2355
+MD5 2b3ddb8b8b15f8da35ade38544b57857 files/uclinux-sources-2.4.26_p0.XDRWrapFix.patch 1499
 MD5 dc18e982f8149588a291956481885a8c files/uclinux-sources-2.4.26_p0.CAN-2004-0495.patch 17549
 MD5 c2510fe1891f5a9effb12c2196922206 files/uclinux-sources-2.6.cmdlineLeak.patch 281
-MD5 c72fc64f2fd878daf2c62d998239c803 files/digest-uclinux-sources-2.6.7_p0-r6 211
 MD5 60d25ff310fc6abfdce39ec9e47345af files/uclinux-sources-2.4.26_p0.CAN-2004-0685.patch 2809
 MD5 d4a740ae56c2049247083af387a22a85 files/uclinux-sources-2.4.26_p0.CAN-2004-0394.patch 350
-MD5 68a561b1216380268e96d2fcea905cd2 files/digest-uclinux-sources-2.4.26_p0-r6 225
 MD5 0f66013f643c79c97fda489618a4e2fd files/uclinux-sources-2.4.26_p0.CAN-2004-0535.patch 476
 MD5 95708646470a95668e8789cd415844ed files/uclinux-sources.CAN-2004-0497.patch 846
 MD5 c9da1bc82b906f6abc648c056e7bf662 files/uclinux-sources-2.4.26_p0.FPULockup-53804.patch 354
 MD5 39361f8d16b1fe5891aab62e92f8cd30 files/uclinux-sources-2.6.IPTables-RDoS.patch 390
 MD5 aa595005721b58929ee55e2e8f4b6ba0 files/uclinux-sources-2.6.CAN-2004-0816.patch 1693
+MD5 040a6d66b9567c30bf1a0cb1ce27c9db files/digest-uclinux-sources-2.6.7_p0-r7 287
+MD5 452e04a312368605e145428c35bd0e05 files/uclinux-sources-2.6.devPtmx.patch 572
 MD5 b738cb0120a32aa92cfcfdbd564dd21f files/uclinux-sources-2.6.ProcPerms.patch 1368
 MD5 8204afea1d572b49a4a80d8da4eef0c9 files/uclinux-sources-2.6.CAN-2004-0596.patch 1033
+MD5 d306514f5f3dc06853daf8c3e60d01c9 files/digest-uclinux-sources-2.4.26_p0-r7 301
 MD5 d1ccc2047be533c992f67270a150a210 files/uclinux-sources-2.4.26_p0.cmdlineLeak.patch 388
similarity index 74%
rename from sys-kernel/uclinux-sources/files/digest-uclinux-sources-2.4.26_p0-r6
rename to sys-kernel/uclinux-sources/files/digest-uclinux-sources-2.4.26_p0-r7
index 756581fa999d8d967453c5c93c5d029c6a44fcab..8629e7c2dfd9029aad5c0b54877ec9e2eb17fbce 100644 (file)
@@ -1,3 +1,4 @@
 MD5 88d7aefa03c92739cb70298a0b486e2c linux-2.4.26.tar.bz2 30772389
 MD5 8c2a75543abe268ff71d59c85b7607ac uClinux-2.4.26-uc0.diff.gz 4062854
 MD5 dd070e146fc1938fef307386976eb87e uclinux-sources-2.4.26-CAN-2004-0415.patch 90160
+MD5 d4c051e7c6062704be85192e25e2f5b2 linux-2.4.26-CAN-2004-0814.patch 81508
similarity index 73%
rename from sys-kernel/uclinux-sources/files/digest-uclinux-sources-2.6.7_p0-r6
rename to sys-kernel/uclinux-sources/files/digest-uclinux-sources-2.6.7_p0-r7
index 2f8ad3b4942c842ddabdab09e830491703a92f2d..23b9296ce2d4820601c200479d5e01b1c1df57bb 100644 (file)
@@ -1,3 +1,4 @@
 MD5 a74671ea68b0e3c609e8785ed8497c14 linux-2.6.7.tar.bz2 35092228
 MD5 9f8265eee2179199a81e0a00268eb1a6 linux-2.6.7-uc0.patch.gz 184811
 MD5 52996b643afbd6ed9ba38b9483c2cac3 linux-2.6.7-CAN-2004-0415.patch 112612
+MD5 c9c9ed2f30afd3750287953184100529 linux-2.6.7-CAN-2004-0814.patch 129565
diff --git a/sys-kernel/uclinux-sources/files/uclinux-sources-2.4.26_p0.XDRWrapFix.patch b/sys-kernel/uclinux-sources/files/uclinux-sources-2.4.26_p0.XDRWrapFix.patch
new file mode 100644 (file)
index 0000000..9a336ab
--- /dev/null
@@ -0,0 +1,48 @@
+# This is a BitKeeper generated diff -Nru style patch.
+#
+# ChangeSet
+#   2004/08/16 14:50:04-03:00 neilb@cse.unsw.edu.au 
+#   [PATCH] Fixed possibly xdr parsing error if write size exceed 2^31
+#   
+#   xdr_argsize_check needs to cope with the possibility that the
+#   pointer has wrapped and could be below buf->base.
+#   
+#   Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
+#   
+#   ### Diffstat output
+#    ./fs/nfsd/nfs3xdr.c         |    2 +-
+#    ./include/linux/nfsd/xdr3.h |    2 +-
+#    2 files changed, 2 insertions(+), 2 deletions(-)
+# 
+# fs/nfsd/nfs3xdr.c
+#   2004/08/14 00:23:06-03:00 neilb@cse.unsw.edu.au +1 -1
+#   Fixed possibly xdr parsing error if write size exceed 2^31
+# 
+# include/linux/nfsd/xdr3.h
+#   2004/08/15 20:48:43-03:00 neilb@cse.unsw.edu.au +1 -1
+#   Fixed possibly xdr parsing error if write size exceed 2^31
+# 
+diff -Nru a/fs/nfsd/nfs3xdr.c b/fs/nfsd/nfs3xdr.c
+--- a/fs/nfsd/nfs3xdr.c        2004-09-06 11:20:28 -07:00
++++ b/fs/nfsd/nfs3xdr.c        2004-09-06 11:20:28 -07:00
+@@ -273,7 +273,7 @@
+ {
+       struct svc_buf  *buf = &rqstp->rq_argbuf;
+ 
+-      return p - buf->base <= buf->buflen;
++      return p >= buf->base && p <= buf->base + buf->buflen ;
+ }
+ 
+ static inline int
+diff -Nru a/include/linux/nfsd/xdr3.h b/include/linux/nfsd/xdr3.h
+--- a/include/linux/nfsd/xdr3.h        2004-09-06 11:20:28 -07:00
++++ b/include/linux/nfsd/xdr3.h        2004-09-06 11:20:28 -07:00
+@@ -41,7 +41,7 @@
+       __u32                   count;
+       int                     stable;
+       __u8 *                  data;
+-      int                     len;
++      __u32                   len;
+ };
+ 
+ struct nfsd3_createargs {
diff --git a/sys-kernel/uclinux-sources/files/uclinux-sources-2.6.devPtmx.patch b/sys-kernel/uclinux-sources/files/uclinux-sources-2.6.devPtmx.patch
new file mode 100644 (file)
index 0000000..2312a2b
--- /dev/null
@@ -0,0 +1,21 @@
+Index: linux-2.6.5/fs/devpts/inode.c
+===================================================================
+--- linux-2.6.5.orig/fs/devpts/inode.c
++++ linux-2.6.5/fs/devpts/inode.c
+@@ -178,9 +178,13 @@ struct tty_struct *devpts_get_tty(int nu
+ {
+       struct dentry *dentry = get_node(number);
+       struct tty_struct *tty;
+-
+-      tty = (IS_ERR(dentry) || !dentry->d_inode) ? NULL :
+-                      dentry->d_inode->u.generic_ip;
++      
++      tty = NULL;
++      if (!IS_ERR(dentry)) {
++              if (dentry->d_inode)
++                      tty = dentry->d_inode->u.generic_ip;
++              dput(dentry);
++      }
+ 
+       up(&devpts_root->d_inode->i_sem);
+ 
similarity index 84%
rename from sys-kernel/uclinux-sources/uclinux-sources-2.4.26_p0-r6.ebuild
rename to sys-kernel/uclinux-sources/uclinux-sources-2.4.26_p0-r7.ebuild
index 6cf8c054eba1483b5c759bd43f33d4ba5e617160..67103cc3f15b2fd82b1eea216c4f7f89a1d3eb03 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2004 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-kernel/uclinux-sources/uclinux-sources-2.4.26_p0-r6.ebuild,v 1.1 2004/08/10 00:21:58 plasmaroo Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/uclinux-sources/uclinux-sources-2.4.26_p0-r7.ebuild,v 1.1 2004/11/09 19:27:14 plasmaroo Exp $
 
 IUSE=""
 
@@ -29,7 +29,8 @@ S=${WORKDIR}/linux-${KV}
 DESCRIPTION="uCLinux kernel patches for CPUs without MMUs"
 SRC_URI="mirror://kernel/v${MMV}/linux-${OKV}.tar.bz2
        http://www.uclinux.org/pub/uClinux/uClinux-${MMV}.x/${MY_P/linux/${base}}.${patch}.gz
-       http://dev.gentoo.org/~plasmaroo/patches/kernel/misc/security/${POV}-CAN-2004-0415.patch"
+       http://dev.gentoo.org/~plasmaroo/patches/kernel/misc/security/${POV}-CAN-2004-0415.patch
+       http://dev.gentoo.org/~plasmaroo/patches/kernel/misc/security/linux-${OKV}-CAN-2004-0814.patch"
 
 HOMEPAGE="http://www.uclinux.org/"
 KEYWORDS="~x86 -ppc"
@@ -52,8 +53,10 @@ src_unpack() {
        epatch ${FILESDIR}/${PN}.CAN-2004-0497.patch || die "Failed to add the CAN-2004-0497 patch!"
        epatch ${FILESDIR}/${P}.CAN-2004-0535.patch || die "Failed to add the CAN-2004-0535 patch!"
        epatch ${FILESDIR}/${P}.CAN-2004-0685.patch || die "Failed to add the CAN-2004-0685 patch!"
+       epatch ${DISTDIR}/linux-${OKV}-CAN-2004-0814.patch || die "Failed to add the CAN-2004-0814 patch!"
        epatch ${FILESDIR}/${P}.FPULockup-53804.patch || die "Failed to apply FPU-lockup patch!"
        epatch ${FILESDIR}/${P}.cmdlineLeak.patch || die "Failed to apply the /proc/cmdline patch!"
+       epatch ${FILESDIR}/${P}.XDRWrapFix.patch || die "Failed to apply the kNFSd XDR patch!"
 
        kernel_universal_unpack
        set ARCH=${MY_ARCH}
similarity index 83%
rename from sys-kernel/uclinux-sources/uclinux-sources-2.6.7_p0-r6.ebuild
rename to sys-kernel/uclinux-sources/uclinux-sources-2.6.7_p0-r7.ebuild
index 45a52b61a43b894ba7d7640a7db5bedacba25048..db82cb425c1da90d923366f83aa99ec860496e09 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2004 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-kernel/uclinux-sources/uclinux-sources-2.6.7_p0-r6.ebuild,v 1.1 2004/10/21 18:26:55 plasmaroo Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/uclinux-sources/uclinux-sources-2.6.7_p0-r7.ebuild,v 1.1 2004/11/09 19:27:14 plasmaroo Exp $
 
 IUSE=""
 
@@ -28,7 +28,8 @@ S=${WORKDIR}/linux-${KV}
 DESCRIPTION="uCLinux kernel patches for CPUs without MMUs"
 SRC_URI="mirror://kernel/v${MMV}/linux-${OKV}.tar.bz2
        http://www.uclinux.org/pub/uClinux/uClinux-${MMV}.x/${MY_P/linux/${base}}.${patch}.gz
-       http://dev.gentoo.org/~plasmaroo/patches/kernel/misc/security/linux-${OKV}-CAN-2004-0415.patch"
+       http://dev.gentoo.org/~plasmaroo/patches/kernel/misc/security/linux-${OKV}-CAN-2004-0415.patch
+       http://dev.gentoo.org/~plasmaroo/patches/kernel/misc/security/linux-${OKV}-CAN-2004-0814.patch"
 
 HOMEPAGE="http://www.uclinux.org/"
 KEYWORDS="~x86 -ppc"
@@ -43,10 +44,12 @@ src_unpack() {
        epatch ${DISTDIR}/linux-${OKV}-CAN-2004-0415.patch || die "Failed to add the CAN-2004-0415 patch!"
        epatch ${FILESDIR}/${PN}.CAN-2004-0497.patch || die "Failed to add the CAN-2004-0497 patch!"
        epatch ${FILESDIR}/${PN}-2.6.CAN-2004-0596.patch || die "Failed to apply the CAN-2004-0596 security patch!"
+       epatch ${DISTDIR}/linux-${OKV}-CAN-2004-0814.patch || die "Failed to add the CAN-2004-0814 patch!"
        epatch ${FILESDIR}/${PN}-2.6.IPTables-RDoS.patch || die "Failed to apply the IPTables RDoS security patch!"
        epatch ${FILESDIR}/${PN}-2.6.ProcPerms.patch || die "Failed to apply the /proc permissions security patch!"
        epatch ${FILESDIR}/${PN}-2.6.cmdlineLeak.patch || die "Failed to apply the /proc/cmdline patch!"
        epatch ${FILESDIR}/${PN}-2.6.CAN-2004-0816.patch || die "Failed to apply the CAN-2004-0816 patch!"
+       epatch ${FILESDIR}/${PN}-2.6.devPtmx.patch || die "Failed to apply /dev/ptmx patch!"
 
        set MY_ARCH=${ARCH}
        unset ARCH