diff options
author | Tim Yamin <plasmaroo@gentoo.org> | 2004-04-15 07:30:13 +0000 |
---|---|---|
committer | Tim Yamin <plasmaroo@gentoo.org> | 2004-04-15 07:30:13 +0000 |
commit | a5d33f931b5523936ffaa7b11913230467353f2f (patch) | |
tree | 792a66a4c367246dced9bf0057c64e3e30a387a7 /sys-kernel | |
parent | Version bump, cleanup (diff) | |
download | historical-a5d33f931b5523936ffaa7b11913230467353f2f.tar.gz historical-a5d33f931b5523936ffaa7b11913230467353f2f.tar.bz2 historical-a5d33f931b5523936ffaa7b11913230467353f2f.zip |
Version bump for the CAN-2004-0109 issue; bug #47881. Old versions removed.
Diffstat (limited to 'sys-kernel')
17 files changed, 198 insertions, 368 deletions
diff --git a/sys-kernel/win4lin-sources/ChangeLog b/sys-kernel/win4lin-sources/ChangeLog index 71df9adb2433..05813f34faa7 100644 --- a/sys-kernel/win4lin-sources/ChangeLog +++ b/sys-kernel/win4lin-sources/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for sys-kernel/win4lin-sources # Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/win4lin-sources/ChangeLog,v 1.16 2004/04/12 16:36:23 aliz Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/win4lin-sources/ChangeLog,v 1.17 2004/04/15 07:30:13 plasmaroo Exp $ + +*win4lin-sources-2.6.5-r1 (15 Apr 2004) + + 15 Apr 2004; <plasmaroo@gentoo.org> win4lin-sources-2.4.25-r1.ebuild, + win4lin-sources-2.6.5-r1.ebuild: + Version bump for the CAN-2004-0109 issue; bug #47881. Old versions + removed. 12 Apr 2004; Daniel Ahlberg <aliz@gentoo.org> win4lin-sources-2.4.23-r2.ebuild, win4lin-sources-2.6.2-r1.ebuild: diff --git a/sys-kernel/win4lin-sources/Manifest b/sys-kernel/win4lin-sources/Manifest index 7994cd8bd835..c89d3c6c9834 100644 --- a/sys-kernel/win4lin-sources/Manifest +++ b/sys-kernel/win4lin-sources/Manifest @@ -1,14 +1,8 @@ -MD5 cbfaf86beadf8fddb8c208635658d26c win4lin-sources-2.4.25.ebuild 1147 -MD5 c1cc594a060728ee9fc43d9fb65e4608 win4lin-sources-2.4.23-r2.ebuild 1365 -MD5 4e1a8c85867d25e930e59476cb5556b2 ChangeLog 3141 +MD5 adf733f252817afa6b35344888cf41e2 ChangeLog 3375 +MD5 0ed52638f96270d5929fbea9220a52c3 win4lin-sources-2.6.5-r1.ebuild 2972 +MD5 880be9c61eef8529937e2b5a2c6a032a win4lin-sources-2.4.25-r1.ebuild 1150 MD5 608fe99985244b0445f76cee44c9ae14 metadata.xml 290 -MD5 139cc1bbb7cbf6be11911729ec81c389 win4lin-sources-2.6.2-r1.ebuild 3048 -MD5 127fe46a668983c028f6b4a2f30174bc files/win4lin-sources-2.6.munmap.patch 1557 -MD5 1ff3aaf61d7c60ec6399f308db069f28 files/digest-win4lin-sources-2.6.2-r1 207 -MD5 e2e2b545b6fcdcecf49e33798efa5b84 files/win4lin-sources-2.4.rtc_fix.patch 7073 -MD5 e637c6fa41097ea2c4693d0766f2e1c5 files/do_brk_fix.patch 242 -MD5 177ad02eb33303dd8f726a13d92c8057 files/digest-win4lin-sources-2.4.25 201 -MD5 5e4b24d4c540af721c5bc7e3ad77f40b files/win4lin-sources-2.6.CAN-2003-0985.patch 414 -MD5 e77a93fdf26f06cf3ea5080b27211725 files/win4lin-sources-2.4.CAN-2003-0985.patch 414 -MD5 174438d215b70cad5ffb00ca8123c062 files/win4lin-sources-2.4.munmap.patch 837 -MD5 6a326a3a66a6d310eaaf77ff2868eeae files/digest-win4lin-sources-2.4.23-r2 201 +MD5 177ad02eb33303dd8f726a13d92c8057 files/digest-win4lin-sources-2.4.25-r1 201 +MD5 31ec7b4310dd7be3e34aab0204f9b1e8 files/win4lin-sources-2.6.5.CAN-2004-0109.patch 2072 +MD5 8c49da507801f5f67a2e08ee17ddedf6 files/digest-win4lin-sources-2.6.5-r1 207 +MD5 21f3a4f186017d925067335e24db36a1 files/win4lin-sources-2.4.25.CAN-2004-0109.patch 1877 diff --git a/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.4.23-r2 b/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.4.23-r2 deleted file mode 100644 index c0bee3c77be1..000000000000 --- a/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.4.23-r2 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 642af5ab5e1fc63685fde85e9ae601e4 linux-2.4.23.tar.bz2 29832609 -MD5 32e4cda45fa0f090dffa157bc4504a4e mki-adapter.patch 181483 -MD5 cc54742477d90496435613318c8ef83b Kernel-Win4Lin3-2.4.23.patch 23448 diff --git a/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.4.25 b/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.4.25-r1 index 3df65a061aca..3df65a061aca 100644 --- a/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.4.25 +++ b/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.4.25-r1 diff --git a/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.6.2-r1 b/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.6.2-r1 deleted file mode 100644 index 62d70d246ade..000000000000 --- a/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.6.2-r1 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 2a745088acba366f22f8bd3e284a84d4 linux-2.6.2.tar.bz2 33899733 -MD5 5ad006f074e11ed9c650d3b99b166830 mki-adapter26_1_3_3.patch 126268 -MD5 f36c55447a01d38fa56a8236b0321b52 Kernel-Win4Lin3-2.6.2.patch 26601 diff --git a/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.6.5-r1 b/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.6.5-r1 new file mode 100644 index 000000000000..97653e192582 --- /dev/null +++ b/sys-kernel/win4lin-sources/files/digest-win4lin-sources-2.6.5-r1 @@ -0,0 +1,3 @@ +MD5 9a76bf64c1151369b250f967d83077aa linux-2.6.5.tar.bz2 34684611 +MD5 aa98c4f41bcce5be5ab3763f6534288b mki-adapter26_1_3_4.patch 126302 +MD5 32578c28c4bb1b8c76ff84c3e474d52e Kernel-Win4Lin3-2.6.5.patch 26576 diff --git a/sys-kernel/win4lin-sources/files/do_brk_fix.patch b/sys-kernel/win4lin-sources/files/do_brk_fix.patch deleted file mode 100644 index fef1f1e981e2..000000000000 --- a/sys-kernel/win4lin-sources/files/do_brk_fix.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/mm/mmap.c Fri Sep 12 06:44:06 2003 -+++ b/mm/mmap.c Thu Oct 2 01:18:19 2003 -@@ -1041,6 +1041,9 @@ - if (!len) - return addr; - -+ if ((addr + len) > TASK_SIZE || (addr + len) < addr) -+ return -EINVAL; -+ - /* - * mlock MCL_FUTURE? - */ diff --git a/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.25.CAN-2004-0109.patch b/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.25.CAN-2004-0109.patch new file mode 100644 index 000000000000..d02b51c57fc6 --- /dev/null +++ b/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.25.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/win4lin-sources/files/win4lin-sources-2.4.CAN-2003-0985.patch b/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.CAN-2003-0985.patch deleted file mode 100644 index dacf6ed810f9..000000000000 --- a/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.CAN-2003-0985.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- linux/mm/mremap.c.orig 2004-01-05 17:01:21.382104120 +0000 -+++ linux/mm/mremap.c 2004-01-05 17:15:25.689749848 +0000 -@@ -315,6 +315,10 @@ - old_len = PAGE_ALIGN(old_len); - new_len = PAGE_ALIGN(new_len); - -+ /* Don't allow the degenerate cases */ -+ if (!old_len || !new_len) -+ goto out; -+ - /* new_addr is only valid if MREMAP_FIXED is specified */ - if (flags & MREMAP_FIXED) { - if (new_addr & ~PAGE_MASK) diff --git a/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.munmap.patch b/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.munmap.patch deleted file mode 100644 index e120b35b7adb..000000000000 --- a/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.munmap.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -ur linux-2.4.25-rc3/mm/mremap.c linux-2.4.25-rc4/mm/mremap.c ---- linux-2.4.25-rc3/mm/mremap.c 2004-02-18 13:56:01.000000000 +0000 -+++ linux-2.4.25-rc4/mm/mremap.c 2004-02-18 13:49:08.000000000 +0000 -@@ -258,16 +258,20 @@ - if ((addr <= new_addr) && (addr+old_len) > new_addr) - goto out; - -- do_munmap(current->mm, new_addr, new_len); -+ ret = do_munmap(current->mm, new_addr, new_len); -+ if (ret && new_len) -+ goto out; - } - - /* - * Always allow a shrinking remap: that just unmaps - * the unnecessary pages.. - */ -- ret = addr; - if (old_len >= new_len) { -- do_munmap(current->mm, addr+new_len, old_len - new_len); -+ ret = do_munmap(current->mm, addr+new_len, old_len - new_len); -+ if (ret && old_len != new_len) -+ goto out; -+ ret = addr; - if (!(flags & MREMAP_FIXED) || (new_addr == addr)) - goto out; - } diff --git a/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.rtc_fix.patch b/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.rtc_fix.patch deleted file mode 100644 index 76a663c6e89d..000000000000 --- a/sys-kernel/win4lin-sources/files/win4lin-sources-2.4.rtc_fix.patch +++ /dev/null @@ -1,180 +0,0 @@ -diff -urN linux-2.4.23/arch/cris/drivers/ds1302.c linux-2.4.24/arch/cris/drivers/ds1302.c ---- linux-2.4.23/arch/cris/drivers/ds1302.c 2003-08-25 04:44:39.000000000 -0700 -+++ linux-2.4.24/arch/cris/drivers/ds1302.c 2004-01-05 05:53:56.000000000 -0800 -@@ -346,6 +346,7 @@ - { - struct rtc_time rtc_tm; - -+ memset(&rtc_tm, 0, sizeof (struct rtc_time)); - get_rtc_time(&rtc_tm); - if (copy_to_user((struct rtc_time*)arg, &rtc_tm, sizeof(struct rtc_time))) - return -EFAULT; -diff -urN linux-2.4.23/arch/cris/drivers/pcf8563.c linux-2.4.24/arch/cris/drivers/pcf8563.c ---- linux-2.4.23/arch/cris/drivers/pcf8563.c 2003-08-25 04:44:39.000000000 -0700 -+++ linux-2.4.24/arch/cris/drivers/pcf8563.c 2004-01-05 05:53:56.000000000 -0800 -@@ -220,6 +220,7 @@ - { - struct rtc_time tm; - -+ memset(&tm, 0, sizeof (struct rtc_time)); - get_rtc_time(&tm); - - if (copy_to_user((struct rtc_time *) arg, &tm, sizeof tm)) { -diff -urN linux-2.4.23/arch/m68k/bvme6000/rtc.c linux-2.4.24/arch/m68k/bvme6000/rtc.c ---- linux-2.4.23/arch/m68k/bvme6000/rtc.c 2003-06-13 07:51:31.000000000 -0700 -+++ linux-2.4.24/arch/m68k/bvme6000/rtc.c 2004-01-05 05:53:56.000000000 -0800 -@@ -54,6 +54,7 @@ - /* Ensure clock and real-time-mode-register are accessible */ - msr = rtc->msr & 0xc0; - rtc->msr = 0x40; -+ memset(&wtime, 0, sizeof(struct rtc_time)); - do { - wtime.tm_sec = BCD2BIN(rtc->bcd_sec); - wtime.tm_min = BCD2BIN(rtc->bcd_min); -diff -urN linux-2.4.23/arch/m68k/mvme16x/rtc.c linux-2.4.24/arch/m68k/mvme16x/rtc.c ---- linux-2.4.23/arch/m68k/mvme16x/rtc.c 2003-06-13 07:51:31.000000000 -0700 -+++ linux-2.4.24/arch/m68k/mvme16x/rtc.c 2004-01-05 05:53:56.000000000 -0800 -@@ -52,6 +52,7 @@ - cli(); - /* Ensure clock and real-time-mode-register are accessible */ - rtc->ctrl = RTC_READ; -+ memset(&wtime, 0, sizeof(struct rtc_time)); - wtime.tm_sec = BCD2BIN(rtc->bcd_sec); - wtime.tm_min = BCD2BIN(rtc->bcd_min); - wtime.tm_hour = BCD2BIN(rtc->bcd_hr); -diff -urN linux-2.4.23/arch/ppc64/kernel/rtc.c linux-2.4.24/arch/ppc64/kernel/rtc.c ---- linux-2.4.23/arch/ppc64/kernel/rtc.c 2003-06-13 07:51:32.000000000 -0700 -+++ linux-2.4.24/arch/ppc64/kernel/rtc.c 2004-01-05 05:53:56.000000000 -0800 -@@ -96,6 +96,7 @@ - switch (cmd) { - case RTC_RD_TIME: /* Read the time/date from RTC */ - { -+ memset(&wtime, 0, sizeof(struct rtc_time)); - ppc_md.get_rtc_time(&wtime); - break; - } -diff -urN linux-2.4.23/drivers/acorn/char/i2c.c linux-2.4.24/drivers/acorn/char/i2c.c ---- linux-2.4.23/drivers/acorn/char/i2c.c 2003-08-25 04:44:40.000000000 -0700 -+++ linux-2.4.24/drivers/acorn/char/i2c.c 2004-01-05 05:53:56.000000000 -0800 -@@ -166,6 +166,7 @@ - break; - - case RTC_RD_TIME: -+ memset(&rtctm, 0, sizeof(struct rtc_time)); - get_rtc_time(&rtc_raw, &year); - rtctm.tm_sec = rtc_raw.secs; - rtctm.tm_min = rtc_raw.mins; -diff -urN linux-2.4.23/drivers/char/ds1286.c linux-2.4.24/drivers/char/ds1286.c ---- linux-2.4.23/drivers/char/ds1286.c 2003-08-25 04:44:41.000000000 -0700 -+++ linux-2.4.24/drivers/char/ds1286.c 2004-01-05 05:53:56.000000000 -0800 -@@ -173,7 +173,7 @@ - * means "don't care" or "match all". Only the tm_hour, - * tm_min, and tm_sec values are filled in. - */ -- -+ memset(&wtime, 0, sizeof(struct rtc_time)); - ds1286_get_alm_time(&wtime); - break; - } -@@ -216,6 +216,7 @@ - } - case RTC_RD_TIME: /* Read the time/date from RTC */ - { -+ memset(&wtime, 0, sizeof(struct rtc_time)); - ds1286_get_time(&wtime); - break; - } -diff -urN linux-2.4.23/drivers/char/efirtc.c linux-2.4.24/drivers/char/efirtc.c ---- linux-2.4.23/drivers/char/efirtc.c 2003-06-13 07:51:32.000000000 -0700 -+++ linux-2.4.24/drivers/char/efirtc.c 2004-01-05 05:53:56.000000000 -0800 -@@ -118,6 +118,7 @@ - static void - convert_from_efi_time(efi_time_t *eft, struct rtc_time *wtime) - { -+ memset(wtime, 0, sizeof(struct rtc_time)); - wtime->tm_sec = eft->second; - wtime->tm_min = eft->minute; - wtime->tm_hour = eft->hour; -diff -urN linux-2.4.23/drivers/char/ip27-rtc.c linux-2.4.24/drivers/char/ip27-rtc.c ---- linux-2.4.23/drivers/char/ip27-rtc.c 2003-08-25 04:44:41.000000000 -0700 -+++ linux-2.4.24/drivers/char/ip27-rtc.c 2004-01-05 05:53:56.000000000 -0800 -@@ -83,6 +83,7 @@ - switch (cmd) { - case RTC_RD_TIME: /* Read the time/date from RTC */ - { -+ memset(&wtime, 0, sizeof(struct rtc_time)); - get_rtc_time(&wtime); - break; - } -diff -urN linux-2.4.23/drivers/char/mips_rtc.c linux-2.4.24/drivers/char/mips_rtc.c ---- linux-2.4.23/drivers/char/mips_rtc.c 2003-08-25 04:44:41.000000000 -0700 -+++ linux-2.4.24/drivers/char/mips_rtc.c 2004-01-05 05:53:56.000000000 -0800 -@@ -82,6 +82,7 @@ - - switch (cmd) { - case RTC_RD_TIME: /* Read the time/date from RTC */ -+ memset(&rtc_tm, 0, sizeof(struct rtc_time)); - curr_time = rtc_get_time(); - to_tm(curr_time, &rtc_tm); - rtc_tm.tm_year -= 1900; -diff -urN linux-2.4.23/drivers/char/rtc.c linux-2.4.24/drivers/char/rtc.c ---- linux-2.4.23/drivers/char/rtc.c 2003-11-28 10:26:20.000000000 -0800 -+++ linux-2.4.24/drivers/char/rtc.c 2004-01-05 05:53:56.000000000 -0800 -@@ -362,7 +362,7 @@ - * means "don't care" or "match all". Only the tm_hour, - * tm_min, and tm_sec values are filled in. - */ -- -+ memset(&wtime, 0, sizeof(struct rtc_time)); - get_rtc_alm_time(&wtime); - break; - } -@@ -406,6 +406,7 @@ - } - case RTC_RD_TIME: /* Read the time/date from RTC */ - { -+ memset(&wtime, 0, sizeof(struct rtc_time)); - get_rtc_time(&wtime); - break; - } -diff -urN linux-2.4.23/drivers/hil/hp_sdc_rtc.c linux-2.4.24/drivers/hil/hp_sdc_rtc.c ---- linux-2.4.23/drivers/hil/hp_sdc_rtc.c 2003-06-13 07:51:33.000000000 -0700 -+++ linux-2.4.24/drivers/hil/hp_sdc_rtc.c 2004-01-05 05:53:56.000000000 -0800 -@@ -561,6 +561,7 @@ - } - case RTC_ALM_READ: /* Read the present alarm time */ - { -+ memset(&ttime, 0, sizeof(struct timeval)); - if (hp_sdc_rtc_read_mt(&ttime)) return -EFAULT; - break; - } -@@ -609,6 +610,7 @@ - } - case RTC_RD_TIME: /* Read the time/date from RTC */ - { -+ memset(&wtime, 0, sizeof(struct rtc_time)); - if (hp_sdc_rtc_read_bbrtc(&wtime)) return -EFAULT; - break; - } -diff -urN linux-2.4.23/drivers/macintosh/rtc.c linux-2.4.24/drivers/macintosh/rtc.c ---- linux-2.4.23/drivers/macintosh/rtc.c 2002-02-25 11:37:58.000000000 -0800 -+++ linux-2.4.24/drivers/macintosh/rtc.c 2004-01-05 05:53:56.000000000 -0800 -@@ -64,6 +64,7 @@ - case RTC_RD_TIME: - if (ppc_md.get_rtc_time) - { -+ memset(&rtc_tm, 0, sizeof(struct rtc_time)); - get_rtc_time(&rtc_tm); - - if (copy_to_user((struct rtc_time*)arg, &rtc_tm, sizeof(struct rtc_time))) -diff -urN linux-2.4.23/drivers/sbus/char/rtc.c linux-2.4.24/drivers/sbus/char/rtc.c ---- linux-2.4.23/drivers/sbus/char/rtc.c 2001-10-10 23:42:47.000000000 -0700 -+++ linux-2.4.24/drivers/sbus/char/rtc.c 2004-01-05 05:53:56.000000000 -0800 -@@ -89,6 +89,7 @@ - switch (cmd) - { - case RTCGET: -+ memset(&rtc_tm, 0, sizeof(struct rtc_time)); - get_rtc_time(&rtc_tm); - - if (copy_to_user((struct rtc_time*)arg, &rtc_tm, sizeof(struct rtc_time))) diff --git a/sys-kernel/win4lin-sources/files/win4lin-sources-2.6.5.CAN-2004-0109.patch b/sys-kernel/win4lin-sources/files/win4lin-sources-2.6.5.CAN-2004-0109.patch new file mode 100644 index 000000000000..d7726c2e5aaf --- /dev/null +++ b/sys-kernel/win4lin-sources/files/win4lin-sources-2.6.5.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/win4lin-sources/files/win4lin-sources-2.6.CAN-2003-0985.patch b/sys-kernel/win4lin-sources/files/win4lin-sources-2.6.CAN-2003-0985.patch deleted file mode 100644 index 03f49e4f6d7d..000000000000 --- a/sys-kernel/win4lin-sources/files/win4lin-sources-2.6.CAN-2003-0985.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- linux/mm/mremap.c.orig 2004-01-05 17:01:21.382104120 +0000 -+++ linux/mm/mremap.c 2004-01-05 17:15:25.689749848 +0000 -@@ -270,6 +270,10 @@ - old_len = PAGE_ALIGN(old_len); - new_len = PAGE_ALIGN(new_len); - -+ /* Don't allow the degenerate cases */ -+ if (!old_len || !new_len) -+ goto out; -+ - /* new_addr is only valid if MREMAP_FIXED is specified */ - if (flags & MREMAP_FIXED) { - if (new_addr & ~PAGE_MASK) diff --git a/sys-kernel/win4lin-sources/files/win4lin-sources-2.6.munmap.patch b/sys-kernel/win4lin-sources/files/win4lin-sources-2.6.munmap.patch deleted file mode 100644 index 47a199c870db..000000000000 --- a/sys-kernel/win4lin-sources/files/win4lin-sources-2.6.munmap.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -Naur 2.6.2/mm/mremap.c 2.6.3/mm/mremap.c ---- 2.6.2/mm/mremap.c 2004-02-18 03:29:48.000000000 +0100 -+++ 2.6.3/mm/mremap.c 2004-02-18 10:21:20.000000000 +0100 -@@ -135,15 +135,17 @@ - dst = alloc_one_pte_map(mm, new_addr); - if (src == NULL) - src = get_one_pte_map_nested(mm, old_addr); -- error = copy_one_pte(vma, old_addr, src, dst, &pte_chain); -- pte_unmap_nested(src); -- pte_unmap(dst); -- } else - /* -- * Why do we need this flush ? If there is no pte for -- * old_addr, then there must not be a pte for it as well. -+ * Since alloc_one_pte_map can drop and re-acquire -+ * page_table_lock, we should re-check the src entry... - */ -- flush_tlb_page(vma, old_addr); -+ if (src) { -+ error = copy_one_pte(vma, old_addr, src, -+ dst, &pte_chain); -+ pte_unmap_nested(src); -+ } -+ pte_unmap(dst); -+ } - spin_unlock(&mm->page_table_lock); - pte_chain_free(pte_chain); - out: -@@ -346,7 +348,9 @@ - if ((addr <= new_addr) && (addr+old_len) > new_addr) - goto out; - -- do_munmap(current->mm, new_addr, new_len); -+ ret = do_munmap(current->mm, new_addr, new_len); -+ if (ret) -+ goto out; - } - - /* -@@ -354,9 +358,11 @@ - * the unnecessary pages.. - * do_munmap does all the needed commit accounting - */ -- ret = addr; - if (old_len >= new_len) { -- do_munmap(current->mm, addr+new_len, old_len - new_len); -+ ret = do_munmap(current->mm, addr+new_len, old_len - new_len); -+ if (ret && old_len != new_len) -+ goto out; -+ ret = addr; - if (!(flags & MREMAP_FIXED) || (new_addr == addr)) - goto out; - old_len = new_len; diff --git a/sys-kernel/win4lin-sources/win4lin-sources-2.4.23-r2.ebuild b/sys-kernel/win4lin-sources/win4lin-sources-2.4.23-r2.ebuild deleted file mode 100644 index 9cb1892d6b52..000000000000 --- a/sys-kernel/win4lin-sources/win4lin-sources-2.4.23-r2.ebuild +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 1999-2004 Gentoo Technologies, Inc. -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/win4lin-sources/win4lin-sources-2.4.23-r2.ebuild,v 1.2 2004/04/12 16:36:23 aliz Exp $ - -# OKV=original kernel version, KV=patched kernel version. They can be the same. - -IUSE="" -ETYPE="sources" - -inherit kernel eutils - -OKV="2.4.23" -KV="2.4.23-win4lin" -EXTRAVERSION="-win4lin" - -S=${WORKDIR}/linux-${KV} - -DESCRIPTION="Full sources for the linux kernel with win4lin support" -SRC_URI="mirror://kernel/linux/kernel/v2.4/linux-${OKV}.tar.bz2 - http://www.netraverse.com/member/downloads/files/mki-adapter.patch - http://www.netraverse.com/member/downloads/files/Kernel-Win4Lin3-${OKV}.patch" - -KEYWORDS="x86" -SLOT="${KV}" - -src_unpack() { - - unpack linux-${OKV}.tar.bz2 - mv linux-${OKV} linux-${KV} || die - - epatch ${DISTDIR}/Kernel-Win4Lin3-${OKV}.patch || die "Error: Win4Lin3 patch failed!" - - cd linux-${KV} - patch -Np1 -i ${DISTDIR}/mki-adapter.patch >/dev/null 2>&1 || die "Error: mki-adapter patch failed!" - - epatch ${FILESDIR}/${PN}-2.4.CAN-2003-0985.patch || die "Failed to patch mremap() vulnerability!" - epatch ${FILESDIR}/${PN}-2.4.rtc_fix.patch || die "Failed to patch RTC vulnerabilities!" - epatch ${FILESDIR}/${PN}-2.4.munmap.patch || die "Failed to apply munmap patch!" - - kernel_universal_unpack - -} diff --git a/sys-kernel/win4lin-sources/win4lin-sources-2.4.25.ebuild b/sys-kernel/win4lin-sources/win4lin-sources-2.4.25-r1.ebuild index d24cb12cd1b5..9e1bbc4cbc77 100644 --- a/sys-kernel/win4lin-sources/win4lin-sources-2.4.25.ebuild +++ b/sys-kernel/win4lin-sources/win4lin-sources-2.4.25-r1.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/win4lin-sources/win4lin-sources-2.4.25.ebuild,v 1.1 2004/03/24 23:52:02 plasmaroo Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/win4lin-sources/win4lin-sources-2.4.25-r1.ebuild,v 1.1 2004/04/15 07:30:13 plasmaroo Exp $ # OKV=original kernel version, KV=patched kernel version. They can be the same. diff --git a/sys-kernel/win4lin-sources/win4lin-sources-2.6.2-r1.ebuild b/sys-kernel/win4lin-sources/win4lin-sources-2.6.5-r1.ebuild index b6e5cead0cb3..f03029bb21d9 100644 --- a/sys-kernel/win4lin-sources/win4lin-sources-2.6.2-r1.ebuild +++ b/sys-kernel/win4lin-sources/win4lin-sources-2.6.5-r1.ebuild @@ -1,12 +1,12 @@ # Copyright 1999-2004 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/win4lin-sources/win4lin-sources-2.6.2-r1.ebuild,v 1.2 2004/04/12 16:36:23 aliz Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/win4lin-sources/win4lin-sources-2.6.5-r1.ebuild,v 1.1 2004/04/15 07:30:13 plasmaroo Exp $ # OKV=original kernel version, KV=patched kernel version. They can be the same. inherit eutils OKV=${PV} -KV=${PV}-win4lin +KV=${PV}-win4lin-r1 S=${WORKDIR}/linux-${OKV} ETYPE="sources" @@ -14,7 +14,7 @@ DESCRIPTION="Full sources for the Development Branch of the Linux kernel" IUSE="" SRC_URI="mirror://kernel/linux/kernel/v2.6/linux-${OKV}.tar.bz2 - http://www.netraverse.com/member/downloads/files/mki-adapter26_1_3_3.patch + http://www.netraverse.com/member/downloads/files/mki-adapter26_1_3_4.patch http://www.netraverse.com/member/downloads/files/Kernel-Win4Lin3-${OKV}.patch" HOMEPAGE="http://www.kernel.org/ http://www.netraverse.com/" @@ -36,16 +36,13 @@ fi src_unpack() { cd ${WORKDIR} unpack linux-${OKV}.tar.bz2 - cd ${S} epatch ${DISTDIR}/Kernel-Win4Lin3-${OKV}.patch || die "Error: Failed to appky Win4Lin3 patch!" ebegin "Applying mki-adapter26_1_3_3.patch" patch -Np1 -i ${DISTDIR}/mki-adapter26_1_3_3.patch > /dev/null 2>&1 || die "Error: Failed to apply mki-adapter patch!" eend $? - - epatch ${FILESDIR}/${PN}-2.6.CAN-2003-0985.patch || die "Failed to patch mremap() vulnerability!" - epatch ${FILESDIR}/${PN}-2.6.munmap.patch || die "Failed to apply munmap patch!" + epatch ${FILESDIR}/${P}.CAN-2004-0109.patch || die "Failed to patch CAN-2004-0109 vulnerability!" unset ARCH # Sometimes we have icky kernel symbols; this seems to get rid of them |