public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] missing padding in cpio_mkfile in usr/gen_init_cpio.c
@ 2003-11-16 15:08 Olaf Hering
  0 siblings, 0 replies; only message in thread
From: Olaf Hering @ 2003-11-16 15:08 UTC (permalink / raw)
  To: linux-kernel


Add this line to main() and booting will fail with panic:

        cpio_mkfile("t", "/sbin/init", 0700, 0, 0);


olaf@nectarine:~/kernel/pineapple/linuxppc-2.5> echo > t
olaf@nectarine:~/kernel/pineapple/linuxppc-2.5> gcc -o foo usr/gen_init_cpio.c.kaputt.c && ./foo | tee bar | cpio -vt
drwxr-xr-x   2 root     root            0 Nov 16 16:06 /dev
crw-------   1 root     root       5,   1 Nov 16 16:06 /dev/console
drwx------   2 root     root            0 Nov 16 16:06 /root
-rwx------   1 root     root            1 Nov 16 16:05 /sbin/init
cpio: premature end of file
olaf@nectarine:~/kernel/pineapple/linuxppc-2.5> gcc -o foo usr/gen_init_cpio.c && ./foo | tee bar | cpio -vt
drwxr-xr-x   2 root     root            0 Nov 16 16:06 /dev
crw-------   1 root     root       5,   1 Nov 16 16:06 /dev/console
drwx------   2 root     root            0 Nov 16 16:06 /root
-rwx------   1 root     root            1 Nov 16 16:05 /sbin/init
2 blocks
olaf@nectarine:~/kernel/pineapple/linuxppc-2.5> diff -pu usr/gen_init_cpio.c.kaputt.c usr/gen_init_cpio.c
--- usr/gen_init_cpio.c.kaputt.c        2003-11-16 16:03:27.000000000 +0100
+++ usr/gen_init_cpio.c 2003-11-16 16:02:12.000000000 +0100
@@ -197,6 +197,7 @@ void cpio_mkfile(const char *filename, c
 
        for (i = 0; i < buf.st_size; ++i)
                fputc(filebuf[i], stdout);
+       offset += buf.st_size;
        close(file);
        free(filebuf);
        push_pad();

-- 
USB is for mice, FireWire is for men!

sUse lINUX ag, nÜRNBERG

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2003-11-16 15:08 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-11-16 15:08 [PATCH] missing padding in cpio_mkfile in usr/gen_init_cpio.c Olaf Hering

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox