H. Peter Anvin wrote: > initramfs buffer format > ----------------------- > > Al Viro, H. Peter Anvin > Last revision: 2002-01-13 > > ** DRAFT ** DRAFT ** DRAFT ** DRAFT ** DRAFT ** DRAFT ** ..... >The full format of the initramfs buffer is defined by the following >grammar, where: > * is used to indicate "0 or more occurrences of" > (|) indicates alternatives > + indicates concatenation > GZIP() indicates the gzip(1) of the operand > ALGN(n) means padding with null bytes to an n-byte boundary > > initramfs := ("\0" | cpio_archive | cpio_gzip_archive)* > > cpio_gzip_archive := GZIP(cpio_archive) > > cpio_archive := cpio_file* + ( | cpio_trailer) > > cpio_file := ALGN(4) + cpio_header + filename + "\0" + ALGN(4) + data > > cpio_trailer := ALGN(4) + cpio_header + "TRAILER!!!\0" + ALGN(4) what's the purpose of the "*" behind cpio_file in the cpio_archive definition? There is already repetition in the initramfs and the "*" behind cpio_archive would e.g. allow a sequence of cpio_trailers without any cpio_file inbetween. --nk -- Key fingerprint = 6C58 F18D 4747 3295 F2DB 15C1 3882 4302 F8B4 C11C