Re: Creating Compressed Loop FS from stdin

From: Maxim Sobolev (sobomax_at_portaone.com)
Date: 12/30/04

  • Next message: Maxim Sobolev: "Re: Creating Compressed Loop FS from stdin"
    Date: Thu, 30 Dec 2004 16:20:16 +0200
    To: Peter Pentchev <roam@ringlet.net>
    
    

    You don't check return code of the second lseek - I bet it fails. This
    probably leads to creation of seemingly valid loop fs (i.e. with valid
    header), but filled with zeroes or some random junk.

    -Maxim

    Peter Pentchev wrote:
    > On Thu, Dec 30, 2004 at 03:32:27PM +0200, Maxim Sobolev wrote:
    >
    >>Peter Pentchev wrote:
    >>
    >>>On Thu, Dec 30, 2004 at 01:28:28PM +0100, Matteo Riondato wrote:
    >>>
    >>>
    >>>>Il giorno Gio, 30-12-2004 alle 12:34 +0200, Peter Pentchev ha scritto:
    >>>>
    >>>>
    >>>>>This could be fixed by the following patch. I'm CC'ing Maxim Sobolev,
    >>>>>the author of mkuzip(8); Maxim, do you have any objections to this patch?
    >>>>
    >>>>Thank you for the answer and fo the patch! I hope Maxim will commit it
    >>>>soon.
    >>>
    >>>
    >>>Actually, if Maxim has no objections, I could commit it myself.
    >>>However, it would be totally understandable if he doesn't answer in
    >>>the next day or three, what with the calendar moving ahead and all :)
    >>
    >>It will not help, since AFAIK you can't seek stdin anyway, or even if I
    >>am wrong and you can seek it to the end you will be unable to seek it
    >>backward.
    >
    >
    > I tested the patch before posting it, fully expecting to find that stdin
    > really cannot be seeked (sought? :), and surprisingly it worked, at least
    > on RELENG_5 as of today!
    >
    >
    >>I've already replied to this message, but Matteo has some very strange
    >>settings of his smtp relay so that neither my original message nor my
    >>follow-up in which I had forwarded mail delivery error message got through.
    >>
    >>-Maxim
    >>
    >>-------- Original Message --------
    >>Subject: Re: Creating Compressed Loop FS from stdin
    >>Date: Fri, 17 Dec 2004 17:14:48 +0200
    >>From: Maxim Sobolev <sobomax@portaone.com>
    >>Organization: Porta Software Ltd
    >>To: Matteo Riondato <rionda@freesbie.org>
    >>References: <1103290915.8516.9.camel@kaiser.sig11.org>
    >>
    >>This is not going to work by design unfortunately. cloop format has
    >>serious design flaw: it contains variable-lengh header at the beginning
    >>of the compressed image, so that before doing compression mkuzip(1) uses
    >>stat(2) call at the original file to get its size and reserve necessary
    >>space, which doesn't work with /dev/stdin as you may guess. Original GNU
    >>utility either keeps the whole compressed image in memory or uses some
    >>form of temporary storage (I don't quite remember) to work around this
    >>problem.
    >
    >
    > Well, another solution would be to make mkuzip use a temporary file
    > (obviously, keeping the whole thing in memory would be a bad idea for
    > big ISO filesystems ;). However, as I noted above, my lseek patch
    > works at least for RELENG_5. Can somebody test it on -CURRENT?
    >
    > G'luck,
    > Peter
    >

    _______________________________________________
    freebsd-hackers@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
    To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"


  • Next message: Maxim Sobolev: "Re: Creating Compressed Loop FS from stdin"