hoch:/usr/src# mkdir patches hoch:/usr/src# cd patches ########################################################## ## Visit http://www.openwall.com/linux/ for more info: ## ########################################################## hoch:/usr/src/patches# wget http://www.openwall.com/linux/linux-2.4.21-ow1.tar.gz --23:43:45-- http://www.openwall.com/linux/linux-2.4.21-ow1.tar.gz => `linux-2.4.21-ow1.tar.gz' Resolving www.openwall.com... done. Connecting to www.openwall.com[195.42.162.180]:80... connected. HTTP request sent, awaiting response... 200 OK Length: 28,605 [application/x-tar] 100%[====================================>] 28,605 43.92K/s ETA 00:00 23:43:47 (43.92 KB/s) - `linux-2.4.21-ow1.tar.gz' saved [28605/28605] ########################################################## ## Now unpack this sample kernel patch ## ########################################################## hoch:/usr/src/patches# tar zxvf linux-2.4.21-ow1.tar.gz linux-2.4.21-ow1/ linux-2.4.21-ow1/FAQ linux-2.4.21-ow1/README linux-2.4.21-ow1/LICENSE linux-2.4.21-ow1/optional/ linux-2.4.21-ow1/optional/chstk.c linux-2.4.21-ow1/optional/stacktest.c linux-2.4.21-ow1/optional/glibc-2.1.3-cvs-20000504-dl-open.diff linux-2.4.21-ow1/optional/psmisc-19-owl-by-user.diff linux-2.4.21-ow1/optional/procps-2.0.6-owl-stale.diff linux-2.4.21-ow1/linux-2.4.21-ow1.diff hoch:/usr/src/patches# cd .. ########################################################## ## Now actually "patch" the kernel. ## ## see man pages for patch and how it can used unified ## ## diff files to patch multiple files. ## ########################################################## hoch:/usr/src/# patch -p0 < patches/linux-2.4.21-ow1/linux-2.4.21-ow1.diff patching file linux/Documentation/Configure.help patching file linux/arch/alpha/config.in patching file linux/arch/alpha/defconfig patching file linux/arch/arm/config.in patching file linux/arch/arm/defconfig patching file linux/arch/cris/config.in patching file linux/arch/cris/defconfig patching file linux/arch/i386/config.in patching file linux/arch/i386/defconfig patching file linux/arch/i386/kernel/head.S patching file linux/arch/i386/kernel/signal.c patching file linux/arch/i386/kernel/traps.c patching file linux/arch/ia64/config.in patching file linux/arch/ia64/defconfig patching file linux/arch/ia64/ia32/sys_ia32.c patching file linux/arch/m68k/config.in patching file linux/arch/m68k/defconfig patching file linux/arch/mips/config-shared.in patching file linux/arch/mips/defconfig patching file linux/arch/mips/kernel/irixelf.c patching file linux/arch/mips64/defconfig patching file linux/arch/mips64/kernel/linux32.c patching file linux/arch/parisc/config.in patching file linux/arch/parisc/defconfig patching file linux/arch/parisc/kernel/sys_parisc32.c patching file linux/arch/ppc/config.in patching file linux/arch/ppc/defconfig patching file linux/arch/ppc64/config.in patching file linux/arch/ppc64/defconfig patching file linux/arch/ppc64/kernel/sys_ppc32.c patching file linux/arch/s390/config.in patching file linux/arch/s390/defconfig patching file linux/arch/s390x/config.in patching file linux/arch/s390x/defconfig patching file linux/arch/s390x/kernel/linux32.c patching file linux/arch/sh/config.in patching file linux/arch/sh/defconfig patching file linux/arch/sparc/config.in patching file linux/arch/sparc/defconfig patching file linux/arch/sparc64/config.in patching file linux/arch/sparc64/defconfig patching file linux/arch/sparc64/kernel/sys_sparc32.c patching file linux/arch/x86_64/config.in patching file linux/arch/x86_64/defconfig patching file linux/arch/x86_64/ia32/sys_ia32.c patching file linux/drivers/char/agp/agpgart_be.c patching file linux/drivers/scsi/st.c patching file linux/fs/binfmt_aout.c patching file linux/fs/binfmt_elf.c patching file linux/fs/exec.c patching file linux/fs/namei.c patching file linux/fs/proc/base.c patching file linux/fs/proc/generic.c patching file linux/fs/proc/inode.c patching file linux/fs/proc/proc_tty.c patching file linux/fs/proc/root.c patching file linux/include/asm-i386/a.out.h patching file linux/include/asm-i386/processor.h patching file linux/include/linux/a.out.h patching file linux/include/linux/binfmts.h patching file linux/include/linux/elf.h patching file linux/include/linux/kernel.h patching file linux/include/linux/proc_fs.h patching file linux/include/linux/sched.h patching file linux/ipc/shm.c patching file linux/ipc/util.c patching file linux/kernel/exit.c patching file linux/kernel/printk.c patching file linux/kernel/sysctl.c patching file linux/mm/mmap.c patching file linux/mm/swapfile.c patching file linux/net/socket.c patching file linux/security/Common.in patching file linux/security/Config.in ########################################################## ## Now, if we just patched a kernel we previously ## ## configured and know works, we can use: ## ## # make oldconfig ## ## And it will only stop where there are different ## ## options. ## ##########################################################