summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Yamin <plasmaroo@gentoo.org>2004-01-07 13:55:29 +0000
committerTim Yamin <plasmaroo@gentoo.org>2004-01-07 13:55:29 +0000
commit8745de3970ada373b7f57b4cd693a7e6195bd938 (patch)
treefb1bcfaae0632d5296eddbb97e60b2b34df3ff47 /sys-kernel/xfs-sources
parentmark 2.4.2 x86, cleanup (diff)
downloadhistorical-8745de3970ada373b7f57b4cd693a7e6195bd938.tar.gz
historical-8745de3970ada373b7f57b4cd693a7e6195bd938.tar.bz2
historical-8745de3970ada373b7f57b4cd693a7e6195bd938.zip
Added patches to address the security vulnerabilities in bugs #37292 and #37317.
Diffstat (limited to 'sys-kernel/xfs-sources')
-rw-r--r--sys-kernel/xfs-sources/ChangeLog11
-rw-r--r--sys-kernel/xfs-sources/Manifest38
-rw-r--r--sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.19-r3 (renamed from sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.19-r2)0
-rw-r--r--sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.20-r52
-rw-r--r--sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.22-r1 (renamed from sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.22)0
-rw-r--r--sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.23-r1 (renamed from sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.23)0
-rw-r--r--sys-kernel/xfs-sources/files/xfs-sources-2.4.19.rtc_fix.patch115
-rw-r--r--sys-kernel/xfs-sources/files/xfs-sources-2.4.20.rtc_fix.patch156
-rw-r--r--sys-kernel/xfs-sources/files/xfs-sources-2.4.22.rtc_fix.patch180
-rw-r--r--sys-kernel/xfs-sources/files/xfs-sources.CAN-2003-0985.patch13
-rw-r--r--sys-kernel/xfs-sources/xfs-sources-2.4.19-r3.ebuild (renamed from sys-kernel/xfs-sources/xfs-sources-2.4.19-r2.ebuild)10
-rw-r--r--sys-kernel/xfs-sources/xfs-sources-2.4.20-r5.ebuild75
-rw-r--r--sys-kernel/xfs-sources/xfs-sources-2.4.22-r1.ebuild (renamed from sys-kernel/xfs-sources/xfs-sources-2.4.22.ebuild)11
-rw-r--r--sys-kernel/xfs-sources/xfs-sources-2.4.23-r1.ebuild (renamed from sys-kernel/xfs-sources/xfs-sources-2.4.23.ebuild)12
14 files changed, 593 insertions, 30 deletions
diff --git a/sys-kernel/xfs-sources/ChangeLog b/sys-kernel/xfs-sources/ChangeLog
index bfd5df646f20..4405ed6955fc 100644
--- a/sys-kernel/xfs-sources/ChangeLog
+++ b/sys-kernel/xfs-sources/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for sys-kernel/xfs-sources
# Copyright 1999-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-kernel/xfs-sources/ChangeLog,v 1.36 2004/01/04 01:22:58 scox Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/xfs-sources/ChangeLog,v 1.37 2004/01/07 13:55:10 plasmaroo Exp $
+
+*xfs-sources-2.4.19-r3 (07 Jan 2004)
+
+ 07 Jan 2004; <plasmaroo@gentoo.org> xfs-sources-2.4.19-r2.ebuild,
+ xfs-sources-2.4.19-r3.ebuild, xfs-sources-2.4.20-r5.ebuild,
+ xfs-sources-2.4.22-r1.ebuild, xfs-sources-2.4.22.ebuild,
+ xfs-sources-2.4.23-r1.ebuild, xfs-sources-2.4.23.ebuild:
+ Bumped versions and added patches to address the security
+ vulnerabilities in bugs #37292 and #37317.
*xfs-sources-2.4.23 (04 Jan 2004)
diff --git a/sys-kernel/xfs-sources/Manifest b/sys-kernel/xfs-sources/Manifest
index 71d9fe2660cf..dbe8051ec25b 100644
--- a/sys-kernel/xfs-sources/Manifest
+++ b/sys-kernel/xfs-sources/Manifest
@@ -1,21 +1,27 @@
-MD5 3fbf66f8d3990f80fa05ab84fa60bbf1 xfs-sources-2.4.23.ebuild 1031
-MD5 ccb24e8a4128475f97bf020f5b0a952a xfs-sources-2.4.20-r1.ebuild 2193
-MD5 958d97c7200bd73219e28be8f20c034b xfs-sources-2.4.19-r2.ebuild 2123
-MD5 2540889800dda7b38f0c4f61899a5747 xfs-sources-2.4.20.ebuild 2203
-MD5 7502294f51542ace5d89419433107497 xfs-sources-2.4.20-r3.ebuild 2297
-MD5 c6226add7e0755834b10a3ff5ba540aa xfs-sources-2.4.22.ebuild 2255
-MD5 4980429952168194a39b7656d909137a xfs-sources-2.4.20-r2.ebuild 2202
+MD5 598890fc279acca75c4f0dc9ff1d6193 ChangeLog 9760
MD5 f02e213426423fa9c483eb893ab9e0e0 xfs-sources-2.4.20-r4.ebuild 2322
-MD5 d4a3f10a63233a8506dd18bedb6fe4d4 ChangeLog 9362
MD5 9d0457271fd1f3afdcf4f7ee602d3b34 metadata.xml 414
-MD5 a728d28dca69f5ae16aab56cd2fc6110 files/digest-xfs-sources-2.4.20 139
-MD5 26b986cdd4c24df8ad3d0f0b21e802be files/digest-xfs-sources-2.4.22 139
-MD5 f296f6804e8a1b632ff0939c10c66ea5 files/digest-xfs-sources-2.4.23 141
-MD5 e637c6fa41097ea2c4693d0766f2e1c5 files/do_brk_fix.patch 242
-MD5 3afd3962750ab6706f9a9878a94cfd8d files/xfs-sources-2.4.20-gcc33.patch 10849
+MD5 2540889800dda7b38f0c4f61899a5747 xfs-sources-2.4.20.ebuild 2203
+MD5 d99799a0531b6a4f1d0c2671de2a3bd8 xfs-sources-2.4.20-r5.ebuild 2517
+MD5 6131bc0df38cdb946967ceea9c8ffd0e xfs-sources-2.4.23-r1.ebuild 1257
+MD5 362ccecfa0cb07471317a27e762e7250 xfs-sources-2.4.19-r3.ebuild 2339
+MD5 4980429952168194a39b7656d909137a xfs-sources-2.4.20-r2.ebuild 2202
+MD5 ccb24e8a4128475f97bf020f5b0a952a xfs-sources-2.4.20-r1.ebuild 2193
+MD5 008493721823a784fde0c88593d84bcd xfs-sources-2.4.22-r1.ebuild 2435
+MD5 7502294f51542ace5d89419433107497 xfs-sources-2.4.20-r3.ebuild 2297
MD5 b0c3e68e37892be35fc1c33723bbbdc3 files/xfs-sources-2.4.19.patch 497
-MD5 77f3799264c87379da9f7f2b23f20684 files/digest-xfs-sources-2.4.19-r2 142
-MD5 bb367b087129027dd816740e61f0e675 files/digest-xfs-sources-2.4.20-r1 142
MD5 6c7dc3e61cee85185b45bc82e2982351 files/digest-xfs-sources-2.4.20-r2 142
-MD5 739cbda7c5acadb95758e2f4d8194699 files/digest-xfs-sources-2.4.20-r3 142
+MD5 df40eece807d039cba79f477e80ebda2 files/xfs-sources-2.4.19.rtc_fix.patch 4974
+MD5 f296f6804e8a1b632ff0939c10c66ea5 files/digest-xfs-sources-2.4.23-r1 141
+MD5 bb367b087129027dd816740e61f0e675 files/digest-xfs-sources-2.4.20-r1 142
+MD5 77f3799264c87379da9f7f2b23f20684 files/digest-xfs-sources-2.4.19-r3 142
+MD5 d641cd49ae63ca2989672d2209691bb5 files/xfs-sources.CAN-2003-0985.patch 414
+MD5 a61e57d5483a06f20da339d91f98fbb8 files/xfs-sources-2.4.20.rtc_fix.patch 6769
+MD5 26b986cdd4c24df8ad3d0f0b21e802be files/digest-xfs-sources-2.4.22-r1 139
+MD5 a728d28dca69f5ae16aab56cd2fc6110 files/digest-xfs-sources-2.4.20 139
+MD5 3afd3962750ab6706f9a9878a94cfd8d files/xfs-sources-2.4.20-gcc33.patch 10849
+MD5 e2e2b545b6fcdcecf49e33798efa5b84 files/xfs-sources-2.4.22.rtc_fix.patch 7073
+MD5 739cbda7c5acadb95758e2f4d8194699 files/digest-xfs-sources-2.4.20-r5 142
MD5 739cbda7c5acadb95758e2f4d8194699 files/digest-xfs-sources-2.4.20-r4 142
+MD5 739cbda7c5acadb95758e2f4d8194699 files/digest-xfs-sources-2.4.20-r3 142
+MD5 e637c6fa41097ea2c4693d0766f2e1c5 files/do_brk_fix.patch 242
diff --git a/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.19-r2 b/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.19-r3
index d791ee61576a..d791ee61576a 100644
--- a/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.19-r2
+++ b/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.19-r3
diff --git a/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.20-r5 b/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.20-r5
new file mode 100644
index 000000000000..b2e2064cc396
--- /dev/null
+++ b/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.20-r5
@@ -0,0 +1,2 @@
+MD5 c439d5c93d7fc9a1480a90842465bb97 linux-2.4.20.tar.bz2 27421046
+MD5 56b5aa9df07831f541baaefb927086f9 patches-2.4.20-xfs-r3.tar.bz2 3303544
diff --git a/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.22 b/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.22-r1
index 9394b057e9ea..9394b057e9ea 100644
--- a/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.22
+++ b/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.22-r1
diff --git a/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.23 b/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.23-r1
index e8b0d47bcf65..e8b0d47bcf65 100644
--- a/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.23
+++ b/sys-kernel/xfs-sources/files/digest-xfs-sources-2.4.23-r1
diff --git a/sys-kernel/xfs-sources/files/xfs-sources-2.4.19.rtc_fix.patch b/sys-kernel/xfs-sources/files/xfs-sources-2.4.19.rtc_fix.patch
new file mode 100644
index 000000000000..00937f83623f
--- /dev/null
+++ b/sys-kernel/xfs-sources/files/xfs-sources-2.4.19.rtc_fix.patch
@@ -0,0 +1,115 @@
+diff -ur linux-2.4.20-wolk4.9s/arch/cris/drivers/ds1302.c linux-2.4.20-wolk4.9s.plasmaroo/arch/cris/drivers/ds1302.c
+--- linux-2.4.20-wolk4.9s/arch/cris/drivers/ds1302.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/arch/cris/drivers/ds1302.c 2004-01-05 23:41:44.000000000 +0000
+@@ -315,6 +315,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 -ur linux-2.4.20-wolk4.9s/arch/m68k/bvme6000/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/arch/m68k/bvme6000/rtc.c
+--- linux-2.4.20-wolk4.9s/arch/m68k/bvme6000/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/arch/m68k/bvme6000/rtc.c 2004-01-05 23:43:15.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/arch/m68k/mvme16x/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/arch/m68k/mvme16x/rtc.c
+--- linux-2.4.20-wolk4.9s/arch/m68k/mvme16x/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/arch/m68k/mvme16x/rtc.c 2004-01-05 23:44:02.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/arch/ppc64/kernel/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/arch/ppc64/kernel/rtc.c
+--- linux-2.4.20-wolk4.9s/arch/ppc64/kernel/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/arch/ppc64/kernel/rtc.c 2004-01-05 23:44:34.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/drivers/char/efirtc.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/char/efirtc.c
+--- linux-2.4.20-wolk4.9s/drivers/char/efirtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/char/efirtc.c 2004-01-05 23:47:53.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/drivers/char/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/char/rtc.c
+--- linux-2.4.20-wolk4.9s/drivers/char/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/char/rtc.c 2004-01-05 23:52:43.000000000 +0000
+@@ -370,6 +370,7 @@
+ * tm_min, and tm_sec values are filled in.
+ */
+
++ memset(&wtime, 0, sizeof(struct rtc_time));
+ get_rtc_alm_time(&wtime);
+ break;
+ }
+@@ -417,6 +418,7 @@
+ }
+ case RTC_RD_TIME: /* Read the time/date from RTC */
+ {
++ memset(&wtime, 0, sizeof(struct rtc_time));
+ get_rtc_time(&wtime);
+ break;
+ }
+diff -ur linux-2.4.20-wolk4.9s/drivers/macintosh/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/macintosh/rtc.c
+--- linux-2.4.20-wolk4.9s/drivers/macintosh/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/macintosh/rtc.c 2004-01-05 23:54:15.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/drivers/sbus/char/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/sbus/char/rtc.c
+--- linux-2.4.20-wolk4.9s/drivers/sbus/char/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/sbus/char/rtc.c 2004-01-05 23:54:43.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/drivers/sgi/char/ds1286.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/sgi/char/ds1286.c
+--- linux-2.4.20-wolk4.9s/drivers/sgi/char/ds1286.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/sgi/char/ds1286.c 2004-01-05 23:47:25.000000000 +0000
+@@ -174,6 +174,7 @@
+ * tm_min, and tm_sec values are filled in.
+ */
+
++ memset(&wtime, 0, sizeof(struct rtc_time));
+ ds1286_get_alm_time(&wtime);
+ break;
+ }
+@@ -216,6 +217,7 @@
+ }
+ case RTC_RD_TIME: /* Read the time/date from RTC */
+ {
++ memset(&wtime, 0, sizeof(struct rtc_time));
+ ds1286_get_time(&wtime);
+ break;
+ }
diff --git a/sys-kernel/xfs-sources/files/xfs-sources-2.4.20.rtc_fix.patch b/sys-kernel/xfs-sources/files/xfs-sources-2.4.20.rtc_fix.patch
new file mode 100644
index 000000000000..10e9c228d6d2
--- /dev/null
+++ b/sys-kernel/xfs-sources/files/xfs-sources-2.4.20.rtc_fix.patch
@@ -0,0 +1,156 @@
+diff -ur linux-2.4.20-wolk4.9s/arch/cris/drivers/ds1302.c linux-2.4.20-wolk4.9s.plasmaroo/arch/cris/drivers/ds1302.c
+--- linux-2.4.20-wolk4.9s/arch/cris/drivers/ds1302.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/arch/cris/drivers/ds1302.c 2004-01-05 23:41:44.000000000 +0000
+@@ -315,6 +315,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 -ur linux-2.4.20-wolk4.9s/arch/cris/drivers/pcf8563.c linux-2.4.20-wolk4.9s.plasmaroo/arch/cris/drivers/pcf8563.c
+--- linux-2.4.20-wolk4.9s/arch/cris/drivers/pcf8563.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/arch/cris/drivers/pcf8563.c 2004-01-05 23:42:22.000000000 +0000
+@@ -174,6 +174,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(struct rtc_time))) {
+diff -ur linux-2.4.20-wolk4.9s/arch/m68k/bvme6000/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/arch/m68k/bvme6000/rtc.c
+--- linux-2.4.20-wolk4.9s/arch/m68k/bvme6000/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/arch/m68k/bvme6000/rtc.c 2004-01-05 23:43:15.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/arch/m68k/mvme16x/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/arch/m68k/mvme16x/rtc.c
+--- linux-2.4.20-wolk4.9s/arch/m68k/mvme16x/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/arch/m68k/mvme16x/rtc.c 2004-01-05 23:44:02.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/arch/mips/sgi-ip27/ip27-rtc.c linux-2.4.20-wolk4.9s.plasmaroo/arch/mips/sgi-ip27/ip27-rtc.c
+--- linux-2.4.20-wolk4.9s/arch/mips/sgi-ip27/ip27-rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/arch/mips/sgi-ip27/ip27-rtc.c 2004-01-05 23:48:34.000000000 +0000
+@@ -84,6 +84,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 -ur linux-2.4.20-wolk4.9s/arch/ppc64/kernel/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/arch/ppc64/kernel/rtc.c
+--- linux-2.4.20-wolk4.9s/arch/ppc64/kernel/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/arch/ppc64/kernel/rtc.c 2004-01-05 23:44:34.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/drivers/char/efirtc.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/char/efirtc.c
+--- linux-2.4.20-wolk4.9s/drivers/char/efirtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/char/efirtc.c 2004-01-05 23:47:53.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/drivers/char/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/char/rtc.c
+--- linux-2.4.20-wolk4.9s/drivers/char/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/char/rtc.c 2004-01-05 23:52:43.000000000 +0000
+@@ -370,6 +370,7 @@
+ * tm_min, and tm_sec values are filled in.
+ */
+
++ memset(&wtime, 0, sizeof(struct rtc_time));
+ get_rtc_alm_time(&wtime);
+ break;
+ }
+@@ -417,6 +418,7 @@
+ }
+ case RTC_RD_TIME: /* Read the time/date from RTC */
+ {
++ memset(&wtime, 0, sizeof(struct rtc_time));
+ get_rtc_time(&wtime);
+ break;
+ }
+diff -ur linux-2.4.20-wolk4.9s/drivers/hil/hp_sdc_rtc.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/hil/hp_sdc_rtc.c
+--- linux-2.4.20-wolk4.9s/drivers/hil/hp_sdc_rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/hil/hp_sdc_rtc.c 2004-01-05 23:53:36.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/drivers/macintosh/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/macintosh/rtc.c
+--- linux-2.4.20-wolk4.9s/drivers/macintosh/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/macintosh/rtc.c 2004-01-05 23:54:15.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/drivers/sbus/char/rtc.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/sbus/char/rtc.c
+--- linux-2.4.20-wolk4.9s/drivers/sbus/char/rtc.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/sbus/char/rtc.c 2004-01-05 23:54:43.000000000 +0000
+@@ -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 -ur linux-2.4.20-wolk4.9s/drivers/sgi/char/ds1286.c linux-2.4.20-wolk4.9s.plasmaroo/drivers/sgi/char/ds1286.c
+--- linux-2.4.20-wolk4.9s/drivers/sgi/char/ds1286.c 2004-01-05 23:33:45.000000000 +0000
++++ linux-2.4.20-wolk4.9s.plasmaroo/drivers/sgi/char/ds1286.c 2004-01-05 23:47:25.000000000 +0000
+@@ -174,6 +174,7 @@
+ * tm_min, and tm_sec values are filled in.
+ */
+
++ memset(&wtime, 0, sizeof(struct rtc_time));
+ ds1286_get_alm_time(&wtime);
+ break;
+ }
+@@ -216,6 +217,7 @@
+ }
+ case RTC_RD_TIME: /* Read the time/date from RTC */
+ {
++ memset(&wtime, 0, sizeof(struct rtc_time));
+ ds1286_get_time(&wtime);
+ break;
+ }
diff --git a/sys-kernel/xfs-sources/files/xfs-sources-2.4.22.rtc_fix.patch b/sys-kernel/xfs-sources/files/xfs-sources-2.4.22.rtc_fix.patch
new file mode 100644
index 000000000000..76a663c6e89d
--- /dev/null
+++ b/sys-kernel/xfs-sources/files/xfs-sources-2.4.22.rtc_fix.patch
@@ -0,0 +1,180 @@
+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/xfs-sources/files/xfs-sources.CAN-2003-0985.patch b/sys-kernel/xfs-sources/files/xfs-sources.CAN-2003-0985.patch
new file mode 100644
index 000000000000..bacef69f02f8
--- /dev/null
+++ b/sys-kernel/xfs-sources/files/xfs-sources.CAN-2003-0985.patch
@@ -0,0 +1,13 @@
+--- 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/xfs-sources/xfs-sources-2.4.19-r2.ebuild b/sys-kernel/xfs-sources/xfs-sources-2.4.19-r3.ebuild
index d7232e9a920f..e9931d588400 100644
--- a/sys-kernel/xfs-sources/xfs-sources-2.4.19-r2.ebuild
+++ b/sys-kernel/xfs-sources/xfs-sources-2.4.19-r3.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/xfs-sources/xfs-sources-2.4.19-r2.ebuild,v 1.12 2004/01/04 01:22:58 scox Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/xfs-sources/xfs-sources-2.4.19-r3.ebuild,v 1.1 2004/01/07 13:55:10 plasmaroo Exp $
IUSE="build crypt"
@@ -34,7 +34,7 @@ S=${WORKDIR}/linux-${KV}
DESCRIPTION="Full sources for the XFS Specialized Gentoo Linux kernel"
SRC_URI="mirror://kernel/linux/kernel/v2.4/linux-${OKV}.tar.bz2
- http://gentoo.lostlogicx.com/patches-${KV}.tar.bz2"
+ http://gentoo.lostlogicx.com/patches-${KV/${PR}/r2}.tar.bz2"
KEYWORDS="x86 -ppc -sparc "
SLOT="${KV}"
@@ -53,8 +53,10 @@ src_unpack() {
# http://www.sourceforge.net/projects/acpi
[ `use acpi4linux` ] || rm 70*
- #IMPORTANT! Root Exploit!
cd ${S}
- epatch ${FILESDIR}/do_brk_fix.patch
+ epatch ${FILESDIR}/do_brk_fix.patch || die "Failed to patch do_brk() vulnerability!"
+ epatch ${FILESDIR}/${PN}.CAN-2003-0985.patch || die "Failed to patch mremap() vulnerability!"
+ epatch ${FILESDIR}/${P}.rtc_fix.patch || die "Failed to patch RTC vulnerabilities!"
+
kernel_src_unpack
}
diff --git a/sys-kernel/xfs-sources/xfs-sources-2.4.20-r5.ebuild b/sys-kernel/xfs-sources/xfs-sources-2.4.20-r5.ebuild
new file mode 100644
index 000000000000..dbe14037bc4a
--- /dev/null
+++ b/sys-kernel/xfs-sources/xfs-sources-2.4.20-r5.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2004 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/xfs-sources/xfs-sources-2.4.20-r5.ebuild,v 1.1 2004/01/07 13:55:10 plasmaroo Exp $
+
+IUSE="build crypt"
+
+# OKV=original kernel version, KV=patched kernel version. They can be the same.
+
+# Kernel ebuilds using the kernel.eclass can remove any patch that you
+# do not want to apply by simply setting the KERNEL_EXCLUDE shell
+# variable to the string you want to exclude (for instance
+# KERNEL_EXCLUDE="evms" would not patch any patches whose names match
+# *evms*). Kernels are only tested in the default configuration, but
+# this may be useful if you know that a particular patch is causing a
+# conflict with a patch you personally want to apply, or some other
+# similar situation.
+
+ETYPE="sources"
+
+inherit kernel
+OKV=2.4.20
+EXTRAVERSION=-xfs-r5
+KV=${OKV}${EXTRAVERSION}
+S=${WORKDIR}/linux-${KV}
+
+# Documentation on the patches contained in this kernel will be installed
+# to /usr/share/doc/xfs-sources-${PV}/patches.txt.gz
+
+DESCRIPTION="Full sources for the XFS Specialized Gentoo Linux kernel"
+SRC_URI="mirror://kernel/linux/kernel/v2.4/linux-${OKV}.tar.bz2
+ mirror://gentoo/patches-${KV/${PR}/r3}.tar.bz2"
+KEYWORDS="x86 -ppc -sparc "
+SLOT="${KV}"
+
+src_unpack() {
+ unpack ${A}
+ mv ${WORKDIR}/${KV/${PR}/r3} ${WORKDIR}/${KV}
+ mv linux-${OKV} linux-${KV} || die
+
+ cd ${KV}
+ # Kill patches we aren't suppposed to use, don't worry about
+ # failures, if they aren't there that is a good thing!
+
+ # If the compiler isn't gcc3 drop the gcc3 patches
+ if [[ "${COMPILER}" == "gcc3" ]];then
+ einfo "You are using gcc3, check out the special"
+ einfo "processor types just for you"
+ else
+ einfo "Your compiler is not gcc3, dropping patches..."
+ for file in *gcc3*;do
+ einfo "Dropping ${file}..."
+ rm -f ${file}
+ done
+ fi
+
+ # This is the ratified crypt USE flag, enables IPSEC and patch-int
+ if [ -z "`use crypt`" ]; then
+ einfo "No Cryptographic support, dropping patches..."
+ for file in 8*;do
+ einfo "Dropping ${file}..."
+ rm -f ${file}
+ done
+ else
+ einfo "Cryptographic support enabled..."
+ fi
+
+ kernel_src_unpack
+
+ cd ${S}
+ epatch ${FILESDIR}/xfs-sources-2.4.20-gcc33.patch
+ epatch ${FILESDIR}/do_brk_fix.patch || die "Failed to patch do_brk() vulnerability!"
+ epatch ${FILESDIR}/${PN}.CAN-2003-0985.patch || die "Failed to patch mremap() vulnerability!"
+ epatch ${FILESDIR}/${P}.rtc_fix.patch || die "Failed to patch RTC vulnerabilities!"
+
+}
diff --git a/sys-kernel/xfs-sources/xfs-sources-2.4.22.ebuild b/sys-kernel/xfs-sources/xfs-sources-2.4.22-r1.ebuild
index ee8fce77c2f2..1c6634e307e1 100644
--- a/sys-kernel/xfs-sources/xfs-sources-2.4.22.ebuild
+++ b/sys-kernel/xfs-sources/xfs-sources-2.4.22-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/xfs-sources/xfs-sources-2.4.22.ebuild,v 1.4 2004/01/04 01:22:58 scox Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/xfs-sources/xfs-sources-2.4.22-r1.ebuild,v 1.1 2004/01/07 13:55:10 plasmaroo Exp $
IUSE="build crypt"
@@ -19,7 +19,7 @@ ETYPE="sources"
inherit kernel
OKV=2.4.22
-EXTRAVERSION=-${P/-sources-2.4.22}
+EXTRAVERSION=-${P/-sources-2.4.22}-${PR}
KV=${OKV}${EXTRAVERSION}
S=${WORKDIR}/linux-${KV}
@@ -28,7 +28,7 @@ S=${WORKDIR}/linux-${KV}
DESCRIPTION="Full sources for the XFS Specialized Gentoo Linux kernel"
SRC_URI="mirror://kernel/linux/kernel/v2.4/linux-${OKV}.tar.bz2
- mirror://gentoo/patches-${KV}.tar.bz2"
+ mirror://gentoo/patches-${OKV}-xfs.tar.bz2"
KEYWORDS="~x86 -ppc -sparc "
SLOT="${KV}"
@@ -63,9 +63,10 @@ src_unpack() {
einfo "Cryptographic support enabled..."
fi
- #IMPORTANT! Root Exploit!
cd ${S}
- epatch ${FILESDIR}/do_brk_fix.patch || die "failed to patch for do_brk vuln"
+ epatch ${FILESDIR}/do_brk_fix.patch || die "Failed to patch do_brk() vulnerability!"
+ epatch ${FILESDIR}/${PN}.CAN-2003-0985.patch || die "Failed to patch mremap() vulnerability!"
+ epatch ${FILESDIR}/${P}.rtc_fix.patch || die "Failed to patch RTC vulnerabilities!"
kernel_src_unpack
}
diff --git a/sys-kernel/xfs-sources/xfs-sources-2.4.23.ebuild b/sys-kernel/xfs-sources/xfs-sources-2.4.23-r1.ebuild
index 331fe524e5f7..1070fd3aceba 100644
--- a/sys-kernel/xfs-sources/xfs-sources-2.4.23.ebuild
+++ b/sys-kernel/xfs-sources/xfs-sources-2.4.23-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/xfs-sources/xfs-sources-2.4.23.ebuild,v 1.3 2004/01/04 01:22:58 scox Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/xfs-sources/xfs-sources-2.4.23-r1.ebuild,v 1.3 2004/01/07 13:55:10 plasmaroo Exp $
ETYPE="sources"
inherit kernel
OKV="`echo ${PV}|sed -e 's:^\([0-9]\+\.[0-9]\+\.[0-9]\+\).*:\1:'`"
-EXTRAVERSION="-${PN/-*/}"
+EXTRAVERSION="-${PN/-*/}-${PR}"
KV=${OKV}${EXTRAVERSION}
S=${WORKDIR}/linux-${KV}
@@ -16,23 +16,27 @@ S=${WORKDIR}/linux-${KV}
DESCRIPTION="Full sources for the XFS Specialized Gentoo Linux kernel"
SRC_URI="mirror://kernel/linux/kernel/v2.4/linux-${OKV}.tar.bz2
- http://dev.gentoo.org/~scox/kernels/v2.4/xfs-sources-${PVR}.patch.bz2"
+ http://dev.gentoo.org/~scox/kernels/v2.4/xfs-sources-${PV}.patch.bz2"
KEYWORDS="~x86 -ppc -sparc "
SLOT="${KV}"
src_unpack() {
+
unpack ${A}
mv linux-${OKV} linux-${KV} || die
cd linux-${KV}
- bzcat ${DISTDIR}/xfs-sources-${PVR}.patch.bz2 | patch -p1 \
+ bzcat ${DISTDIR}/xfs-sources-${PV}.patch.bz2 | patch -p1 \
|| die "Failed to patch kernel"
cd ${S}
+ 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!"
make mrproper || die "make mrproper failed"
+ kernel_universal_unpack
}