diff options
author | Tim Yamin <plasmaroo@gentoo.org> | 2004-10-21 18:15:54 +0000 |
---|---|---|
committer | Tim Yamin <plasmaroo@gentoo.org> | 2004-10-21 18:15:54 +0000 |
commit | 6a4a800d2fe6c5092391b3cd89ac0a1cdba91c9c (patch) | |
tree | 50f4ed1c548e4f3b650491e151346c3d1f7649e1 /sys-kernel/usermode-sources | |
parent | Version bump. (Manifest recommit) (diff) | |
download | gentoo-2-6a4a800d2fe6c5092391b3cd89ac0a1cdba91c9c.tar.gz gentoo-2-6a4a800d2fe6c5092391b3cd89ac0a1cdba91c9c.tar.bz2 gentoo-2-6a4a800d2fe6c5092391b3cd89ac0a1cdba91c9c.zip |
Version bump - closes bug #68278. Old version removed due to security issues, bug #68375.
Diffstat (limited to 'sys-kernel/usermode-sources')
-rw-r--r-- | sys-kernel/usermode-sources/ChangeLog | 14 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/Manifest | 37 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.6-r6 | 3 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.8.1-r1 | 2 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/usermode-sources-2.6.6.CAN-2004-0495-0496.patch | 911 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/usermode-sources-2.6.6.FPULockup-53804.patch | 24 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/usermode-sources-2.6.6.ProcPerms.patch | 49 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/usermode-sources-2.6.CAN-2004-0596.patch | 46 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/files/usermode-sources-2.6.IPTables-RDoS.patch | 11 | ||||
-rw-r--r-- | sys-kernel/usermode-sources/usermode-sources-2.6.8.1-r1.ebuild (renamed from sys-kernel/usermode-sources/usermode-sources-2.6.6-r6.ebuild) | 16 |
10 files changed, 35 insertions, 1078 deletions
diff --git a/sys-kernel/usermode-sources/ChangeLog b/sys-kernel/usermode-sources/ChangeLog index 3f994d323a5d..8817de59647f 100644 --- a/sys-kernel/usermode-sources/ChangeLog +++ b/sys-kernel/usermode-sources/ChangeLog @@ -1,6 +1,18 @@ # ChangeLog for sys-kernel/usermode-sources # Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/usermode-sources/ChangeLog,v 1.47 2004/10/20 21:21:48 hansmi Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/usermode-sources/ChangeLog,v 1.48 2004/10/21 18:15:54 plasmaroo Exp $ + +*usermode-sources-2.6.8.1-r1 (21 Oct 2004) + + 21 Oct 2004; <plasmaroo@gentoo.org> -usermode-sources-2.6.6-r6.ebuild, + +usermode-sources-2.6.8.1-r1.ebuild, + -files/usermode-sources-2.6.6.CAN-2004-0495-0496.patch, + -files/usermode-sources-2.6.6.FPULockup-53804.patch, + -files/usermode-sources-2.6.6.ProcPerms.patch, + -files/usermode-sources-2.6.CAN-2004-0596.patch, + -files/usermode-sources-2.6.IPTables-RDoS.patch: + Version bump - closes bug #68278. Old version removed due to security issues, + bug #68375. 20 Oct 2004; Michael Hanselmann <hansmi@gentoo.org> usermode-sources-2.6.6-r6.ebuild: diff --git a/sys-kernel/usermode-sources/Manifest b/sys-kernel/usermode-sources/Manifest index 6f3f09793d02..95f5a0f56ccf 100644 --- a/sys-kernel/usermode-sources/Manifest +++ b/sys-kernel/usermode-sources/Manifest @@ -1,29 +1,24 @@ -MD5 7a710225b7d53d08c4dca7162362b938 usermode-sources-2.4.26-r6.ebuild 2364 +MD5 141efdf526a9b2f09078f2687b91033e ChangeLog 12506 MD5 a76f13cb946fc2720c04b189616da2de metadata.xml 159 -MD5 ab0b376992a6aec9f7504a673c32e513 ChangeLog 11991 -MD5 99bf3dd3fb900685e801e52f1764c1d1 usermode-sources-2.6.6-r6.ebuild 1224 +MD5 90efbffee6d05b555af1756ade9d2258 usermode-sources-2.6.8.1-r1.ebuild 841 +MD5 7a710225b7d53d08c4dca7162362b938 usermode-sources-2.4.26-r6.ebuild 2364 MD5 b4107555322557e7b03f23f2ed852bf5 usermode-sources-2.4.24-r9.ebuild 3092 -MD5 2cb392a6f9f8724f6a40b85afac9d47f files/digest-usermode-sources-2.4.24-r9 210 -MD5 c9da1bc82b906f6abc648c056e7bf662 files/usermode-sources-2.4.FPULockup-53804.patch 354 -MD5 147fec50180ad91b6260fc7201dcb90f files/usermode-sources-2.4.24.CAN-2004-0010.patch 6050 -MD5 21f3a4f186017d925067335e24db36a1 files/usermode-sources-2.4.24.CAN-2004-0109.patch 1877 MD5 d1ccc2047be533c992f67270a150a210 files/usermode-sources-2.4.cmdlineLeak.patch 388 -MD5 02c062ec3a11a6a1498cdf0b1716c90a files/usermode-sources-2.6.6.FPULockup-53804.patch 895 +MD5 9c816c892d6e3d3f0b7b77d3d503ab10 files/usermode-sources-2.4.24.CAN-2004-0075.patch 634 +MD5 174438d215b70cad5ffb00ca8123c062 files/usermode-sources-2.4.24.munmap.patch 837 +MD5 c460ea130cb4ae84a5063ba044e3ce72 files/usermode-sources-2.4.24.CAN-2004-0427.patch 460 +MD5 147fec50180ad91b6260fc7201dcb90f files/usermode-sources-2.4.24.CAN-2004-0010.patch 6050 MD5 dc18e982f8149588a291956481885a8c files/usermode-sources-2.4.CAN-2004-0495.patch 17549 -MD5 b738cb0120a32aa92cfcfdbd564dd21f files/usermode-sources-2.6.6.ProcPerms.patch 1368 -MD5 c2510fe1891f5a9effb12c2196922206 files/usermode-sources-2.6.cmdlineLeak.patch 281 -MD5 95708646470a95668e8789cd415844ed files/usermode-sources.CAN-2004-0497.patch 846 -MD5 eb70acb35ba13daa4b1fda53cb61fc01 files/usermode-sources-2.6.6.CAN-2004-0495-0496.patch 23861 -MD5 eaeda68a619caaddd5b8fdc5e7c39932 files/usermode-sources-2.4.24.CAN-2004-0177.patch 384 +MD5 9a62b569225a94c0fdfa491097a1da4f files/digest-usermode-sources-2.6.8.1-r1 136 +MD5 de75cfa969ed092578d9ddda6c5be334 files/usermode-sources-2.4.24.CAN-2004-0181.patch 1233 +MD5 ac42024b6e6ee1e2165914db4b22a61c files/usermode-sources-2.4.24.CAN-2004-0178.patch 424 MD5 d4a740ae56c2049247083af387a22a85 files/usermode-sources-2.4.26.CAN-2004-0394.patch 350 -MD5 9c816c892d6e3d3f0b7b77d3d503ab10 files/usermode-sources-2.4.24.CAN-2004-0075.patch 634 MD5 60d25ff310fc6abfdce39ec9e47345af files/usermode-sources-2.4.CAN-2004-0685.patch 2809 -MD5 39361f8d16b1fe5891aab62e92f8cd30 files/usermode-sources-2.6.IPTables-RDoS.patch 390 MD5 0f66013f643c79c97fda489618a4e2fd files/usermode-sources-2.4.CAN-2004-0535.patch 476 -MD5 174438d215b70cad5ffb00ca8123c062 files/usermode-sources-2.4.24.munmap.patch 837 -MD5 df4521ac96bfad5fce730fda7300a611 files/digest-usermode-sources-2.6.6-r6 208 -MD5 ac42024b6e6ee1e2165914db4b22a61c files/usermode-sources-2.4.24.CAN-2004-0178.patch 424 -MD5 de75cfa969ed092578d9ddda6c5be334 files/usermode-sources-2.4.24.CAN-2004-0181.patch 1233 -MD5 c460ea130cb4ae84a5063ba044e3ce72 files/usermode-sources-2.4.24.CAN-2004-0427.patch 460 +MD5 2cb392a6f9f8724f6a40b85afac9d47f files/digest-usermode-sources-2.4.24-r9 210 +MD5 c2510fe1891f5a9effb12c2196922206 files/usermode-sources-2.6.cmdlineLeak.patch 281 +MD5 95708646470a95668e8789cd415844ed files/usermode-sources.CAN-2004-0497.patch 846 MD5 23a31ff55169c3f9a2c391af8cb91cd9 files/digest-usermode-sources-2.4.26-r6 210 -MD5 8204afea1d572b49a4a80d8da4eef0c9 files/usermode-sources-2.6.CAN-2004-0596.patch 1033 +MD5 c9da1bc82b906f6abc648c056e7bf662 files/usermode-sources-2.4.FPULockup-53804.patch 354 +MD5 eaeda68a619caaddd5b8fdc5e7c39932 files/usermode-sources-2.4.24.CAN-2004-0177.patch 384 +MD5 21f3a4f186017d925067335e24db36a1 files/usermode-sources-2.4.24.CAN-2004-0109.patch 1877 diff --git a/sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.6-r6 b/sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.6-r6 deleted file mode 100644 index 101ddaeed671..000000000000 --- a/sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.6-r6 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 5218790bc3db41e77a7422969639a9ad linux-2.6.6.tar.bz2 34896138 -MD5 ac6131657b587aba2d306d3708142ec6 uml-patch-2.6.6-1.bz2 104357 -MD5 a2a7d84919dd8f11766166ff75e40ac9 linux-2.6.6-CAN-2004-0415.patch 113158 diff --git a/sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.8.1-r1 b/sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.8.1-r1 new file mode 100644 index 000000000000..0f69749aa81f --- /dev/null +++ b/sys-kernel/usermode-sources/files/digest-usermode-sources-2.6.8.1-r1 @@ -0,0 +1,2 @@ +MD5 9517ca999e822b898fbdc7e72796b1aa linux-2.6.8.1.tar.bz2 35628066 +MD5 71cbf81acbd2a4229024a5cf2f9a7119 uml-patch-2.6.8.1-1.bz2 142306 diff --git a/sys-kernel/usermode-sources/files/usermode-sources-2.6.6.CAN-2004-0495-0496.patch b/sys-kernel/usermode-sources/files/usermode-sources-2.6.6.CAN-2004-0495-0496.patch deleted file mode 100644 index 6f67f9fdc912..000000000000 --- a/sys-kernel/usermode-sources/files/usermode-sources-2.6.6.CAN-2004-0495-0496.patch +++ /dev/null @@ -1,911 +0,0 @@ -# <plasmaroo@gentoo.org> -# This is a patch which should fix both CAN-2004-0495 and CAN-2004-0496 on 2.6... - -# * -0495 applies to 2.4 as well; use a separate patch for that. -# * -0496 is a 2.6 only issue which this patch addresses. - ---- 1.20/net/decnet/dn_dev.c 2004-07-21 14:50:27 -07:00 -+++ 1.21/net/decnet/dn_dev.c 2004-07-21 14:50:27 -07:00 -@@ -1294,35 +1294,43 @@ - * it as a compile time option. Probably you should use the - * rtnetlink interface instead. - */ --int dnet_gifconf(struct net_device *dev, char *buf, int len) -+int dnet_gifconf(struct net_device *dev, char __user *buf, int len) - { - struct dn_dev *dn_db = (struct dn_dev *)dev->dn_ptr; - struct dn_ifaddr *ifa; -- struct ifreq *ifr = (struct ifreq *)buf; -+ char buffer[DN_IFREQ_SIZE]; -+ struct ifreq *ifr = (struct ifreq *)buffer; -+ struct sockaddr_dn *addr = (struct sockaddr_dn *)&ifr->ifr_addr; - int done = 0; - - if ((dn_db == NULL) || ((ifa = dn_db->ifa_list) == NULL)) - return 0; - - for(; ifa; ifa = ifa->ifa_next) { -- if (!ifr) { -+ if (!buf) { - done += sizeof(DN_IFREQ_SIZE); - continue; - } - if (len < DN_IFREQ_SIZE) - return done; -- memset(ifr, 0, DN_IFREQ_SIZE); -+ memset(buffer, 0, DN_IFREQ_SIZE); - - if (ifa->ifa_label) - strcpy(ifr->ifr_name, ifa->ifa_label); - else - strcpy(ifr->ifr_name, dev->name); - -- (*(struct sockaddr_dn *) &ifr->ifr_addr).sdn_family = AF_DECnet; -- (*(struct sockaddr_dn *) &ifr->ifr_addr).sdn_add.a_len = 2; -- (*(dn_address *)(*(struct sockaddr_dn *) &ifr->ifr_addr).sdn_add.a_addr) = ifa->ifa_local; -+ addr->sdn_family = AF_DECnet; -+ addr->sdn_add.a_len = 2; -+ memcpy(addr->sdn_add.a_addr, &ifa->ifa_local, -+ sizeof(dn_address)); - -- ifr = (struct ifreq *)((char *)ifr + DN_IFREQ_SIZE); -+ if (copy_to_user(buf, buffer, DN_IFREQ_SIZE)) { -+ done = -EFAULT; -+ break; -+ } -+ -+ buf += DN_IFREQ_SIZE; - len -= DN_IFREQ_SIZE; - done += DN_IFREQ_SIZE; - } ---- 1.90/drivers/net/wireless/airo.c 2004-07-21 14:48:16 -07:00 -+++ 1.91/drivers/net/wireless/airo.c 2004-07-21 14:48:16 -07:00 -@@ -4272,12 +4272,12 @@ - */ - - static ssize_t proc_read( struct file *file, -- char *buffer, -+ char __user *buffer, - size_t len, - loff_t *offset); - - static ssize_t proc_write( struct file *file, -- const char *buffer, -+ const char __user *buffer, - size_t len, - loff_t *offset ); - static int proc_close( struct inode *inode, struct file *file ); -@@ -4482,23 +4482,26 @@ - * to supply the data. - */ - static ssize_t proc_read( struct file *file, -- char *buffer, -+ char __user *buffer, - size_t len, - loff_t *offset ) - { -- int i; -- int pos; -+ loff_t pos = *offset; - struct proc_data *priv = (struct proc_data*)file->private_data; - -- if( !priv->rbuffer ) return -EINVAL; -+ if (!priv->rbuffer) -+ return -EINVAL; - -- pos = *offset; -- for( i = 0; i+pos < priv->readlen && i < len; i++ ) { -- if (put_user( priv->rbuffer[i+pos], buffer+i )) -- return -EFAULT; -- } -- *offset += i; -- return i; -+ if (pos < 0) -+ return -EINVAL; -+ if (pos >= priv->readlen) -+ return 0; -+ if (len > priv->readlen - pos) -+ len = priv->readlen - pos; -+ if (copy_to_user(buffer, priv->rbuffer + pos, len)) -+ return -EFAULT; -+ *offset = pos + len; -+ return len; - } - - /* -@@ -4506,28 +4509,26 @@ - * to supply the data. - */ - static ssize_t proc_write( struct file *file, -- const char *buffer, -+ const char __user *buffer, - size_t len, - loff_t *offset ) - { -- int i; -- int pos; -+ loff_t pos = *offset; - struct proc_data *priv = (struct proc_data*)file->private_data; - -- if ( !priv->wbuffer ) { -+ if (!priv->wbuffer) - return -EINVAL; -- } -- -- pos = *offset; - -- for( i = 0; i + pos < priv->maxwritelen && -- i < len; i++ ) { -- if (get_user( priv->wbuffer[i+pos], buffer + i )) -- return -EFAULT; -- } -- if ( i+pos > priv->writelen ) priv->writelen = i+file->f_pos; -- *offset += i; -- return i; -+ if (pos < 0) -+ return -EINVAL; -+ if (pos >= priv->maxwritelen) -+ return 0; -+ if (len > priv->maxwritelen - pos) -+ len = priv->maxwritelen - pos; -+ if (copy_from_user(priv->wbuffer + pos, buffer, len)) -+ return -EFAULT; -+ *offset = pos + len; -+ return len; - } - - static int proc_status_open( struct inode *inode, struct file *file ) { ---- 1.14/sound/oss/mpu401.c 2004-07-21 14:44:27 -07:00 -+++ 1.15/sound/oss/mpu401.c 2004-07-21 14:44:27 -07:00 -@@ -728,7 +728,7 @@ - return 0; - } - --static int mpu401_ioctl(int dev, unsigned cmd, caddr_t arg) -+static int mpu401_ioctl(int dev, unsigned cmd, void __user *arg) - { - struct mpu_config *devc; - mpu_command_rec rec; -@@ -742,7 +742,7 @@ - printk(KERN_WARNING "mpu401: Intelligent mode not supported by the HW\n"); - return -EINVAL; - } -- if (get_user(val, (int *)arg)) -+ if (get_user(val, (int __user *)arg)) - return -EFAULT; - set_uart_mode(dev, devc, !val); - return 0; -@@ -772,8 +772,7 @@ - */ - } - --static int mpu_synth_ioctl(int dev, -- unsigned int cmd, caddr_t arg) -+static int mpu_synth_ioctl(int dev, unsigned int cmd, void __user *arg) - { - int midi_dev; - struct mpu_config *devc; -@@ -789,8 +788,7 @@ - { - - case SNDCTL_SYNTH_INFO: -- if (copy_to_user((&((char *) arg)[0]), -- (char *) &mpu_synth_info[midi_dev], -+ if (copy_to_user(arg, &mpu_synth_info[midi_dev], - sizeof(struct synth_info))) - return -EFAULT; - return 0; -@@ -1508,17 +1506,19 @@ - return curr_ticks; - } - --static int mpu_timer_ioctl(int dev, unsigned int command, caddr_t arg) -+static int mpu_timer_ioctl(int dev, unsigned int command, void __user *arg) - { - int midi_dev = sound_timer_devs[dev]->devlink; -+ int __user *p = (int __user *)arg; - - switch (command) - { - case SNDCTL_TMR_SOURCE: - { - int parm; -- -- parm = *(int *) arg; -+ -+ if (get_user(parm, p)) -+ return -EFAULT; - parm &= timer_caps; - - if (parm != 0) -@@ -1530,7 +1530,9 @@ - else if (timer_mode & TMR_MODE_SMPTE) - mpu_cmd(midi_dev, 0x3d, 0); /* Use SMPTE sync */ - } -- return (*(int *) arg = timer_mode); -+ if (put_user(timer_mode, p)) -+ return -EFAULT; -+ return timer_mode; - } - break; - -@@ -1554,11 +1556,13 @@ - case SNDCTL_TMR_TIMEBASE: - { - int val; -- -- val = *(int *) arg; -+ if (get_user(val, p)) -+ return -EFAULT; - if (val) - set_timebase(midi_dev, val); -- return (*(int *) arg = curr_timebase); -+ if (put_user(curr_timebase, p)) -+ return -EFAULT; -+ return curr_timebase; - } - break; - -@@ -1567,7 +1571,8 @@ - int val; - int ret; - -- val = *(int *) arg; -+ if (get_user(val, p)) -+ return -EFAULT; - - if (val) - { -@@ -1582,26 +1587,35 @@ - } - curr_tempo = val; - } -- return (*(int *) arg = curr_tempo); -+ if (put_user(curr_tempo, p)) -+ return -EFAULT; -+ return curr_tempo; - } - break; - - case SNDCTL_SEQ_CTRLRATE: - { - int val; -+ if (get_user(val, p)) -+ return -EFAULT; - -- val = *(int *) arg; - if (val != 0) /* Can't change */ - return -EINVAL; -- return (*(int *) arg = ((curr_tempo * curr_timebase) + 30) / 60); -+ val = ((curr_tempo * curr_timebase) + 30)/60; -+ if (put_user(val, p)) -+ return -EFAULT; -+ return val; - } - break; - - case SNDCTL_SEQ_GETTIME: -- return (*(int *) arg = curr_ticks); -+ if (put_user(curr_ticks, p)) -+ return -EFAULT; -+ return curr_ticks; - - case SNDCTL_TMR_METRONOME: -- metronome_mode = *(int *) arg; -+ if (get_user(metronome_mode, p)) -+ return -EFAULT; - setup_metronome(midi_dev); - return 0; - ---- 1.11/drivers/acpi/asus_acpi.c 2004-07-21 14:16:19 -07:00 -+++ 1.12/drivers/acpi/asus_acpi.c 2004-07-21 14:16:19 -07:00 -@@ -40,6 +40,7 @@ - #include <linux/proc_fs.h> - #include <acpi/acpi_drivers.h> - #include <acpi/acpi_bus.h> -+#include <asm/uaccess.h> - - #define ASUS_ACPI_VERSION "0.28" - -@@ -480,16 +481,31 @@ - return (hotk->status & ledmask) ? 1 : 0; - } - -+static int parse_arg(const char __user *buf, unsigned long count, int *val) -+{ -+ char s[32]; -+ if (!count) -+ return 0; -+ if (count > 31) -+ return -EINVAL; -+ if (copy_from_user(s, buf, count)) -+ return -EFAULT; -+ s[count] = 0; -+ if (sscanf(s, "%i", val) != 1) -+ return -EINVAL; -+ return count; -+} - - /* FIXME: kill extraneous args so it can be called independently */ - static int --write_led(const char *buffer, unsigned long count, struct asus_hotk *hotk, -+write_led(const char __user *buffer, unsigned long count, struct asus_hotk *hotk, - char *ledname, int ledmask, int invert) - { - int value; - int led_out = 0; - -- if (sscanf(buffer, "%i", &value) == 1) -+ count = parse_arg(buffer, count, &value); -+ if (count > 0) - led_out = value ? 1 : 0; - - hotk->status = -@@ -518,7 +534,7 @@ - - - static int --proc_write_mled(struct file *file, const char *buffer, -+proc_write_mled(struct file *file, const char __user *buffer, - unsigned long count, void *data) - { - struct asus_hotk *hotk = (struct asus_hotk *) data; -@@ -537,7 +553,7 @@ - } - - static int --proc_write_wled(struct file *file, const char *buffer, -+proc_write_wled(struct file *file, const char __user *buffer, - unsigned long count, void *data) - { - struct asus_hotk *hotk = (struct asus_hotk *) data; -@@ -556,7 +572,7 @@ - } - - static int --proc_write_tled(struct file *file, const char *buffer, -+proc_write_tled(struct file *file, const char __user *buffer, - unsigned long count, void *data) - { - struct asus_hotk *hotk = (struct asus_hotk *) data; -@@ -640,13 +656,14 @@ - - - static int --proc_write_lcd(struct file *file, const char *buffer, -+proc_write_lcd(struct file *file, const char __user *buffer, - unsigned long count, void *data) - { - int value; - struct asus_hotk *hotk = (struct asus_hotk *) data; - -- if (sscanf(buffer, "%i", &value) == 1) -+ count = parse_arg(buffer, count, &value); -+ if (count > 0) - set_lcd_state(hotk, value); - return count; - } -@@ -707,17 +724,18 @@ - } - - static int --proc_write_brn(struct file *file, const char *buffer, -+proc_write_brn(struct file *file, const char __user *buffer, - unsigned long count, void *data) - { - int value; - struct asus_hotk *hotk = (struct asus_hotk *) data; - -- if (sscanf(buffer, "%d", &value) == 1) { -+ count = parse_arg(buffer, count, &value); -+ if (count > 0) { - value = (0 < value) ? ((15 < value) ? 15 : value) : 0; - /* 0 <= value <= 15 */ - set_brightness(value, hotk); -- } else { -+ } else if (count < 0) { - printk(KERN_WARNING "Asus ACPI: Error reading user input\n"); - } - -@@ -756,17 +774,17 @@ - * simultaneously, so be warned. See the acpi4asus README for more info. - */ - static int --proc_write_disp(struct file *file, const char *buffer, -+proc_write_disp(struct file *file, const char __user *buffer, - unsigned long count, void *data) - { - int value; - struct asus_hotk *hotk = (struct asus_hotk *) data; - -- if (sscanf(buffer, "%d", &value) == 1) -+ count = parse_arg(buffer, count, &value); -+ if (count > 0) - set_display(value, hotk); -- else { -+ else if (count < 0) - printk(KERN_WARNING "Asus ACPI: Error reading user input\n"); -- } - - return count; - } -@@ -774,7 +792,7 @@ - - typedef int (proc_readfunc)(char *page, char **start, off_t off, int count, - int *eof, void *data); --typedef int (proc_writefunc)(struct file *file, const char *buffer, -+typedef int (proc_writefunc)(struct file *file, const char __user *buffer, - unsigned long count, void *data); - - static int ---- 1.30/sound/core/timer.c 2004-07-21 14:22:06 -07:00 -+++ 1.31/sound/core/timer.c 2004-07-21 14:22:06 -07:00 -@@ -1437,7 +1437,7 @@ - err = -ENODEV; - } - up(®ister_mutex); -- if (err >= 0 && copy_from_user(_gstatus, &gstatus, sizeof(gstatus))) -+ if (err >= 0 && copy_to_user(_gstatus, &gstatus, sizeof(gstatus))) - err = -EFAULT; - return err; - } ---- 1.11/sound/oss/pss.c 2004-07-21 14:25:23 -07:00 -+++ 1.12/sound/oss/pss.c 2004-07-21 14:25:23 -07:00 -@@ -453,20 +453,36 @@ - } - } - --static void arg_to_volume_mono(unsigned int volume, int *aleft) -+static int set_volume_mono(unsigned __user *p, int *aleft) - { - int left; -+ unsigned volume; -+ if (get_user(volume, p)) -+ return -EFAULT; - -- left = volume & 0x00ff; -+ left = volume & 0xff; - if (left > 100) - left = 100; - *aleft = left; -+ return 0; - } - --static void arg_to_volume_stereo(unsigned int volume, int *aleft, int *aright) -+static int set_volume_stereo(unsigned __user *p, int *aleft, int *aright) - { -- arg_to_volume_mono(volume, aleft); -- arg_to_volume_mono(volume >> 8, aright); -+ int left, right; -+ unsigned volume; -+ if (get_user(volume, p)) -+ return -EFAULT; -+ -+ left = volume & 0xff; -+ if (left > 100) -+ left = 100; -+ right = (volume >> 8) & 0xff; -+ if (right > 100) -+ right = 100; -+ *aleft = left; -+ *aright = right; -+ return 0; - } - - static int ret_vol_mono(int left) -@@ -479,7 +495,7 @@ - return ((right << 8) | left); - } - --static int call_ad_mixer(pss_confdata *devc,unsigned int cmd, caddr_t arg) -+static int call_ad_mixer(pss_confdata *devc,unsigned int cmd, void __user *arg) - { - if (devc->ad_mixer_dev != NO_WSS_MIXER) - return mixer_devs[devc->ad_mixer_dev]->ioctl(devc->ad_mixer_dev, cmd, arg); -@@ -487,7 +503,7 @@ - return -EINVAL; - } - --static int pss_mixer_ioctl (int dev, unsigned int cmd, caddr_t arg) -+static int pss_mixer_ioctl (int dev, unsigned int cmd, void __user *arg) - { - pss_confdata *devc = mixer_devs[dev]->devc; - int cmdf = cmd & 0xff; -@@ -513,33 +529,38 @@ - return call_ad_mixer(devc, cmd, arg); - else - { -- if (*(int *)arg != 0) -+ int v; -+ if (get_user(v, (int __user *)arg)) -+ return -EFAULT; -+ if (v != 0) - return -EINVAL; - return 0; - } - case SOUND_MIXER_VOLUME: -- arg_to_volume_stereo(*(unsigned int *)arg, &devc->mixer.volume_l, -- &devc->mixer.volume_r); -+ if (set_volume_stereo(arg, -+ &devc->mixer.volume_l, -+ &devc->mixer.volume_r)) -+ return -EFAULT; - set_master_volume(devc, devc->mixer.volume_l, - devc->mixer.volume_r); - return ret_vol_stereo(devc->mixer.volume_l, - devc->mixer.volume_r); - - case SOUND_MIXER_BASS: -- arg_to_volume_mono(*(unsigned int *)arg, -- &devc->mixer.bass); -+ if (set_volume_mono(arg, &devc->mixer.bass)) -+ return -EFAULT; - set_bass(devc, devc->mixer.bass); - return ret_vol_mono(devc->mixer.bass); - - case SOUND_MIXER_TREBLE: -- arg_to_volume_mono(*(unsigned int *)arg, -- &devc->mixer.treble); -+ if (set_volume_mono(arg, &devc->mixer.treble)) -+ return -EFAULT; - set_treble(devc, devc->mixer.treble); - return ret_vol_mono(devc->mixer.treble); - - case SOUND_MIXER_SYNTH: -- arg_to_volume_mono(*(unsigned int *)arg, -- &devc->mixer.synth); -+ if (set_volume_mono(arg, &devc->mixer.synth)) -+ return -EFAULT; - set_synth_volume(devc, devc->mixer.synth); - return ret_vol_mono(devc->mixer.synth); - -@@ -549,54 +570,67 @@ - } - else - { -+ int val, and_mask = 0, or_mask = 0; - /* - * Return parameters - */ - switch (cmdf) - { -- - case SOUND_MIXER_DEVMASK: - if (call_ad_mixer(devc, cmd, arg) == -EINVAL) -- *(int *)arg = 0; /* no mixer devices */ -- return (*(int *)arg |= SOUND_MASK_VOLUME | SOUND_MASK_BASS | SOUND_MASK_TREBLE | SOUND_MASK_SYNTH); -+ break; -+ and_mask = ~0; -+ or_mask = SOUND_MASK_VOLUME | SOUND_MASK_BASS | SOUND_MASK_TREBLE | SOUND_MASK_SYNTH; -+ break; - - case SOUND_MIXER_STEREODEVS: - if (call_ad_mixer(devc, cmd, arg) == -EINVAL) -- *(int *)arg = 0; /* no stereo devices */ -- return (*(int *)arg |= SOUND_MASK_VOLUME); -+ break; -+ and_mask = ~0; -+ or_mask = SOUND_MASK_VOLUME; -+ break; - - case SOUND_MIXER_RECMASK: - if (devc->ad_mixer_dev != NO_WSS_MIXER) - return call_ad_mixer(devc, cmd, arg); -- else -- return (*(int *)arg = 0); /* no record devices */ -+ break; - - case SOUND_MIXER_CAPS: - if (devc->ad_mixer_dev != NO_WSS_MIXER) - return call_ad_mixer(devc, cmd, arg); -- else -- return (*(int *)arg = SOUND_CAP_EXCL_INPUT); -+ or_mask = SOUND_CAP_EXCL_INPUT; -+ break; - - case SOUND_MIXER_RECSRC: - if (devc->ad_mixer_dev != NO_WSS_MIXER) - return call_ad_mixer(devc, cmd, arg); -- else -- return (*(int *)arg = 0); /* no record source */ -+ break; - - case SOUND_MIXER_VOLUME: -- return (*(int *)arg = ret_vol_stereo(devc->mixer.volume_l, devc->mixer.volume_r)); -+ or_mask = ret_vol_stereo(devc->mixer.volume_l, devc->mixer.volume_r); -+ break; - - case SOUND_MIXER_BASS: -- return (*(int *)arg = ret_vol_mono(devc->mixer.bass)); -+ or_mask = ret_vol_mono(devc->mixer.bass); -+ break; - - case SOUND_MIXER_TREBLE: -- return (*(int *)arg = ret_vol_mono(devc->mixer.treble)); -+ or_mask = ret_vol_mono(devc->mixer.treble); -+ break; - - case SOUND_MIXER_SYNTH: -- return (*(int *)arg = ret_vol_mono(devc->mixer.synth)); -+ or_mask = ret_vol_mono(devc->mixer.synth); -+ break; - default: - return -EINVAL; - } -+ if (get_user(val, (int __user *)arg)) -+ return -EFAULT; -+ val &= and_mask; -+ val |= or_mask; -+ if (put_user(val, (int __user *)arg)) -+ return -EFAULT; -+ return val; - } - } - -@@ -803,7 +837,7 @@ - return 0; - } - --static int pss_coproc_ioctl(void *dev_info, unsigned int cmd, caddr_t arg, int local) -+static int pss_coproc_ioctl(void *dev_info, unsigned int cmd, void __user *arg, int local) - { - copr_buffer *buf; - copr_msg *mbuf; ---- 1.15/sound/oss/msnd_pinnacle.c 2004-07-21 14:51:56 -07:00 -+++ 1.16/sound/oss/msnd_pinnacle.c 2004-07-21 14:51:56 -07:00 -@@ -809,7 +809,7 @@ - - static __inline__ int pack_DARQ_to_DARF(register int bank) - { -- register int size, n, timeout = 3; -+ register int size, timeout = 3; - register WORD wTmp; - LPDAQD DAQD; - -@@ -830,13 +830,10 @@ - /* Read data from the head (unprotected bank 1 access okay - since this is only called inside an interrupt) */ - outb(HPBLKSEL_1, dev.io + HP_BLKS); -- if ((n = msnd_fifo_write( -+ msnd_fifo_write( - &dev.DARF, - (char *)(dev.base + bank * DAR_BUFF_SIZE), -- size, 0)) <= 0) { -- outb(HPBLKSEL_0, dev.io + HP_BLKS); -- return n; -- } -+ size); - outb(HPBLKSEL_0, dev.io + HP_BLKS); - - return 1; -@@ -858,21 +855,16 @@ - if (protect) { - /* Critical section: protect fifo in non-interrupt */ - spin_lock_irqsave(&dev.lock, flags); -- if ((n = msnd_fifo_read( -+ n = msnd_fifo_read( - &dev.DAPF, - (char *)(dev.base + bank_num * DAP_BUFF_SIZE), -- DAP_BUFF_SIZE, 0)) < 0) { -- spin_unlock_irqrestore(&dev.lock, flags); -- return n; -- } -+ DAP_BUFF_SIZE); - spin_unlock_irqrestore(&dev.lock, flags); - } else { -- if ((n = msnd_fifo_read( -+ n = msnd_fifo_read( - &dev.DAPF, - (char *)(dev.base + bank_num * DAP_BUFF_SIZE), -- DAP_BUFF_SIZE, 0)) < 0) { -- return n; -- } -+ DAP_BUFF_SIZE); - } - if (!n) - break; -@@ -899,30 +891,43 @@ - static int dsp_read(char *buf, size_t len) - { - int count = len; -+ char *page = (char *)__get_free_page(PAGE_SIZE); -+ -+ if (!page) -+ return -ENOMEM; - - while (count > 0) { -- int n; -+ int n, k; - unsigned long flags; - -+ k = PAGE_SIZE; -+ if (k > count) -+ k = count; -+ - /* Critical section: protect fifo in non-interrupt */ - spin_lock_irqsave(&dev.lock, flags); -- if ((n = msnd_fifo_read(&dev.DARF, buf, count, 1)) < 0) { -- printk(KERN_WARNING LOGNAME ": FIFO read error\n"); -- spin_unlock_irqrestore(&dev.lock, flags); -- return n; -- } -+ n = msnd_fifo_read(&dev.DARF, page, k); - spin_unlock_irqrestore(&dev.lock, flags); -+ if (copy_to_user(buf, page, n)) { -+ free_page((unsigned long)page); -+ return -EFAULT; -+ } - buf += n; - count -= n; - -+ if (n == k && count) -+ continue; -+ - if (!test_bit(F_READING, &dev.flags) && dev.mode & FMODE_READ) { - dev.last_recbank = -1; - if (chk_send_dsp_cmd(&dev, HDEX_RECORD_START) == 0) - set_bit(F_READING, &dev.flags); - } - -- if (dev.rec_ndelay) -+ if (dev.rec_ndelay) { -+ free_page((unsigned long)page); - return count == len ? -EAGAIN : len - count; -+ } - - if (count > 0) { - set_bit(F_READBLOCK, &dev.flags); -@@ -931,41 +936,57 @@ - get_rec_delay_jiffies(DAR_BUFF_SIZE))) - clear_bit(F_READING, &dev.flags); - clear_bit(F_READBLOCK, &dev.flags); -- if (signal_pending(current)) -+ if (signal_pending(current)) { -+ free_page((unsigned long)page); - return -EINTR; -+ } - } - } -- -+ free_page((unsigned long)page); - return len - count; - } - - static int dsp_write(const char *buf, size_t len) - { - int count = len; -+ char *page = (char *)__get_free_page(GFP_KERNEL); -+ -+ if (!page) -+ return -ENOMEM; - - while (count > 0) { -- int n; -+ int n, k; - unsigned long flags; - -+ k = PAGE_SIZE; -+ if (k > count) -+ k = count; -+ -+ if (copy_from_user(page, buf, k)) { -+ free_page((unsigned long)page); -+ return -EFAULT; -+ } -+ - /* Critical section: protect fifo in non-interrupt */ - spin_lock_irqsave(&dev.lock, flags); -- if ((n = msnd_fifo_write(&dev.DAPF, buf, count, 1)) < 0) { -- printk(KERN_WARNING LOGNAME ": FIFO write error\n"); -- spin_unlock_irqrestore(&dev.lock, flags); -- return n; -- } -+ n = msnd_fifo_write(&dev.DAPF, page, k); - spin_unlock_irqrestore(&dev.lock, flags); - buf += n; - count -= n; - -+ if (count && n == k) -+ continue; -+ - if (!test_bit(F_WRITING, &dev.flags) && (dev.mode & FMODE_WRITE)) { - dev.last_playbank = -1; - if (pack_DAPF_to_DAPQ(1) > 0) - set_bit(F_WRITING, &dev.flags); - } - -- if (dev.play_ndelay) -+ if (dev.play_ndelay) { -+ free_page((unsigned long)page); - return count == len ? -EAGAIN : len - count; -+ } - - if (count > 0) { - set_bit(F_WRITEBLOCK, &dev.flags); -@@ -973,11 +994,14 @@ - &dev.writeblock, - get_play_delay_jiffies(DAP_BUFF_SIZE)); - clear_bit(F_WRITEBLOCK, &dev.flags); -- if (signal_pending(current)) -+ if (signal_pending(current)) { -+ free_page((unsigned long)page); - return -EINTR; -+ } - } - } - -+ free_page((unsigned long)page); - return len - count; - } - ---- 1.2/sound/oss/msnd.h 2004-07-21 14:52:24 -07:00 -+++ 1.3/sound/oss/msnd.h 2004-07-21 14:52:24 -07:00 -@@ -266,8 +266,8 @@ - void msnd_fifo_free(msnd_fifo *f); - int msnd_fifo_alloc(msnd_fifo *f, size_t n); - void msnd_fifo_make_empty(msnd_fifo *f); --int msnd_fifo_write(msnd_fifo *f, const char *buf, size_t len, int user); --int msnd_fifo_read(msnd_fifo *f, char *buf, size_t len, int user); -+int msnd_fifo_write(msnd_fifo *f, const char *buf, size_t len); -+int msnd_fifo_read(msnd_fifo *f, char *buf, size_t len); - - int msnd_wait_TXDE(multisound_dev_t *dev); - int msnd_wait_HC0(multisound_dev_t *dev); ---- 1.8/sound/oss/msnd.c 2004-07-21 14:52:37 -07:00 -+++ 1.9/sound/oss/msnd.c 2004-07-21 14:52:37 -07:00 -@@ -139,13 +139,10 @@ - f->len = f->tail = f->head = 0; - } - --int msnd_fifo_write(msnd_fifo *f, const char *buf, size_t len, int user) -+int msnd_fifo_write(msnd_fifo *f, const char *buf, size_t len) - { - int count = 0; - -- if (f->len == f->n) -- return 0; -- - while ((count < len) && (f->len != f->n)) { - - int nwritten; -@@ -161,11 +158,7 @@ - nwritten = len - count; - } - -- if (user) { -- if (copy_from_user(f->data + f->tail, buf, nwritten)) -- return -EFAULT; -- } else -- isa_memcpy_fromio(f->data + f->tail, (unsigned long) buf, nwritten); -+ isa_memcpy_fromio(f->data + f->tail, (unsigned long) buf, nwritten); - - count += nwritten; - buf += nwritten; -@@ -177,13 +170,10 @@ - return count; - } - --int msnd_fifo_read(msnd_fifo *f, char *buf, size_t len, int user) -+int msnd_fifo_read(msnd_fifo *f, char *buf, size_t len) - { - int count = 0; - -- if (f->len == 0) -- return f->len; -- - while ((count < len) && (f->len > 0)) { - - int nread; -@@ -199,11 +189,7 @@ - nread = len - count; - } - -- if (user) { -- if (copy_to_user(buf, f->data + f->head, nread)) -- return -EFAULT; -- } else -- isa_memcpy_toio((unsigned long) buf, f->data + f->head, nread); -+ isa_memcpy_toio((unsigned long) buf, f->data + f->head, nread); - - count += nread; - buf += nread; diff --git a/sys-kernel/usermode-sources/files/usermode-sources-2.6.6.FPULockup-53804.patch b/sys-kernel/usermode-sources/files/usermode-sources-2.6.6.FPULockup-53804.patch deleted file mode 100644 index a813f48ec23b..000000000000 --- a/sys-kernel/usermode-sources/files/usermode-sources-2.6.6.FPULockup-53804.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -Nru a/include/asm-i386/i387.h b/include/asm-i386/i387.h ---- a/include/asm-i386/i387.h 2004-05-06 12:26:10 -07:00 -+++ b/include/asm-i386/i387.h 2004-06-12 19:12:23 -07:00 -@@ -51,7 +51,7 @@ - #define __clear_fpu( tsk ) \ - do { \ - if ((tsk)->thread_info->status & TS_USEDFPU) { \ -- asm volatile("fwait"); \ -+ asm volatile("fnclex ; fwait"); \ - (tsk)->thread_info->status &= ~TS_USEDFPU; \ - stts(); \ - } \ -diff -Nru a/include/asm-x86_64/i387.h b/include/asm-x86_64/i387.h ---- a/include/asm-x86_64/i387.h 2004-06-13 20:43:56.742530792 +0100 -+++ a/include/asm-x86_64/i387.h 2004-06-13 20:42:59.200278544 +0100 -@@ -46,7 +46,7 @@ - - #define clear_fpu(tsk) do { \ - if ((tsk)->thread_info->status & TS_USEDFPU) { \ -- asm volatile("fwait"); \ -+ asm volatile("fnclex; fwait"); \ - (tsk)->thread_info->status &= ~TS_USEDFPU; \ - stts(); \ - } \ diff --git a/sys-kernel/usermode-sources/files/usermode-sources-2.6.6.ProcPerms.patch b/sys-kernel/usermode-sources/files/usermode-sources-2.6.6.ProcPerms.patch deleted file mode 100644 index d90b8d1815d4..000000000000 --- a/sys-kernel/usermode-sources/files/usermode-sources-2.6.6.ProcPerms.patch +++ /dev/null @@ -1,49 +0,0 @@ -# This is a BitKeeper generated diff -Nru style patch. -# -# ChangeSet -# 2004/07/02 18:48:26-07:00 chrisw@osdl.org -# [PATCH] check attr updates in /proc -# -# Any proc entry with default proc_file_inode_operations allow unauthorized -# attribute updates. This is very dangerous for proc entries that rely -# solely on file permissions for open/read/write. -# -# Signed-off-by: Chris Wright <chrisw@osdl.org> -# Signed-off-by: Linus Torvalds <torvalds@osdl.org> -# -# fs/proc/generic.c -# 2004/07/02 15:47:55-07:00 chrisw@osdl.org +14 -7 -# check attr updates in /proc -# -diff -Nru a/fs/proc/generic.c b/fs/proc/generic.c ---- a/fs/proc/generic.c 2004-07-08 17:03:20 -07:00 -+++ b/fs/proc/generic.c 2004-07-08 17:03:20 -07:00 -@@ -231,14 +231,21 @@ - static int proc_notify_change(struct dentry *dentry, struct iattr *iattr) - { - struct inode *inode = dentry->d_inode; -- int error = inode_setattr(inode, iattr); -- if (!error) { -- struct proc_dir_entry *de = PDE(inode); -- de->uid = inode->i_uid; -- de->gid = inode->i_gid; -- de->mode = inode->i_mode; -- } -+ struct proc_dir_entry *de = PDE(inode); -+ int error; - -+ error = inode_change_ok(inode, iattr); -+ if (error) -+ goto out; -+ -+ error = inode_setattr(inode, iattr); -+ if (error) -+ goto out; -+ -+ de->uid = inode->i_uid; -+ de->gid = inode->i_gid; -+ de->mode = inode->i_mode; -+out: - return error; - } - diff --git a/sys-kernel/usermode-sources/files/usermode-sources-2.6.CAN-2004-0596.patch b/sys-kernel/usermode-sources/files/usermode-sources-2.6.CAN-2004-0596.patch deleted file mode 100644 index 3e20a2e41372..000000000000 --- a/sys-kernel/usermode-sources/files/usermode-sources-2.6.CAN-2004-0596.patch +++ /dev/null @@ -1,46 +0,0 @@ ---- 1.13/drivers/net/eql.c 2004-07-21 03:13:40 -07:00 -+++ 1.14/drivers/net/eql.c 2004-07-21 03:13:40 -07:00 -@@ -495,6 +495,8 @@ - return -EFAULT; - - slave_dev = dev_get_by_name(sc.slave_name); -+ if (!slave_dev) -+ return -ENODEV; - - ret = -EINVAL; - -@@ -527,11 +529,13 @@ - if (copy_from_user(&sc, scp, sizeof (slave_config_t))) - return -EFAULT; - -- eql = dev->priv; - slave_dev = dev_get_by_name(sc.slave_name); -+ if (!slave_dev) -+ return -ENODEV; - - ret = -EINVAL; - -+ eql = dev->priv; - spin_lock_bh(&eql->queue.lock); - if (eql_is_slave(slave_dev)) { - slave = __eql_find_slave_dev(&eql->queue, slave_dev); ---- 1.14/drivers/net/eql.c 2004-07-21 03:13:33 -07:00 -+++ 1.15/drivers/net/eql.c 2004-07-21 03:13:33 -07:00 -@@ -499,6 +499,8 @@ - return -ENODEV; - - ret = -EINVAL; -+ if (!slave_dev) -+ return ret; - - spin_lock_bh(&eql->queue.lock); - if (eql_is_slave(slave_dev)) { -@@ -534,6 +536,8 @@ - return -ENODEV; - - ret = -EINVAL; -+ if (!slave_dev) -+ return ret; - - eql = dev->priv; - spin_lock_bh(&eql->queue.lock); diff --git a/sys-kernel/usermode-sources/files/usermode-sources-2.6.IPTables-RDoS.patch b/sys-kernel/usermode-sources/files/usermode-sources-2.6.IPTables-RDoS.patch deleted file mode 100644 index 8f89d1605c9a..000000000000 --- a/sys-kernel/usermode-sources/files/usermode-sources-2.6.IPTables-RDoS.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- net/ipv4/netfilter/ip_tables.c.orig 2004-04-04 05:36:47.000000000 +0200 -+++ net/ipv4/netfilter/ip_tables.c 2004-06-24 21:24:26.000000000 +0200 -@@ -1461,7 +1461,7 @@ - int *hotdrop) - { - /* tcp.doff is only 4 bits, ie. max 15 * 4 bytes */ -- char opt[60 - sizeof(struct tcphdr)]; -+ u_int8_t opt[60 - sizeof(struct tcphdr)]; - unsigned int i; - - duprintf("tcp_match: finding option\n"); diff --git a/sys-kernel/usermode-sources/usermode-sources-2.6.6-r6.ebuild b/sys-kernel/usermode-sources/usermode-sources-2.6.8.1-r1.ebuild index 00afbdadf363..4fe404a1db1e 100644 --- a/sys-kernel/usermode-sources/usermode-sources-2.6.6-r6.ebuild +++ b/sys-kernel/usermode-sources/usermode-sources-2.6.8.1-r1.ebuild @@ -1,12 +1,12 @@ # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/usermode-sources/usermode-sources-2.6.6-r6.ebuild,v 1.2 2004/10/20 21:21:48 hansmi Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/usermode-sources/usermode-sources-2.6.8.1-r1.ebuild,v 1.1 2004/10/21 18:15:54 plasmaroo Exp $ K_NOUSENAME="yes" ETYPE="sources" inherit kernel-2 -UML_PATCH="uml-patch-2.6.6-1" +UML_PATCH="uml-patch-2.6.8.1-1" OKV="${PV}" EXTRAVERSION="-${UML_PATCH//-*-/}-${PR}" KV="${OKV}${EXTRAVERSION}" @@ -14,20 +14,12 @@ S="${WORKDIR}/linux-${KV}" IUSE="" UNIPATCH_LIST="${DISTDIR}/${UML_PATCH}.bz2 - ${DISTDIR}/linux-${OKV}-CAN-2004-0415.patch - ${FILESDIR}/${PN}.CAN-2004-0497.patch - ${FILESDIR}/${P}.FPULockup-53804.patch - ${FILESDIR}/${PN}-2.6.IPTables-RDoS.patch - ${FILESDIR}/${P}.ProcPerms.patch - ${FILESDIR}/${P}.CAN-2004-0495-0496.patch - ${FILESDIR}/${PN}-2.6.CAN-2004-0596.patch ${FILESDIR}/${PN}-2.6.cmdlineLeak.patch" DESCRIPTION="Full (vanilla) sources for the User Mode Linux kernel" SRC_URI="mirror://kernel/linux/kernel/v2.6/linux-${PV}.tar.bz2 - mirror://sourceforge/user-mode-linux/${UML_PATCH}.bz2 - http://dev.gentoo.org/~plasmaroo/patches/kernel/misc/security/linux-${OKV}-CAN-2004-0415.patch" + mirror://sourceforge/user-mode-linux/${UML_PATCH}.bz2" HOMEPAGE="http://www.kernel.org/ http://user-mode-linux.sourceforge.net" SLOT="${KV}" -KEYWORDS="~x86 -ppc" +KEYWORDS="~x86" RESTRICT="nomirror" |