[Toybox] Embedded NUL bytes in grep/sed, or "strings are hard".
    Rob Landley 
    rob at landley.net
       
    Tue Sep 30 07:52:59 PDT 2014
    
    
  
On 09/30/14 09:27, Josiah Worcester wrote:
> On Tue, Sep 30, 2014 at 8:22 AM, Rob Landley <rob at landley.net
> <mailto:rob at landley.net>> wrote:
> 
>     The recent request to make grep work with embedded nul bytes (which
>     impacts
>     the design of sed and probably other stuff) is... tricky. Because line
>     buffering is a nightmare.
> 
>     The problem is that while posix-2008 getline() will read an entire
>     line to the
>     next newline, returning embedded NUL bytes if any, it _won't_ tell
>     you the
>     length of the line it read. It returns a length, but that's the
>     length of the
>     allocated buffer, which is rounded up to who knows what and the
>     extra data
>     not necessarily zeroed.
> 
> 
> Actually it will: though that pointer-to-size_t argument in there is
> just the allocated buffer size, its return value actually is the length
> of the line it read. Sure, the interface is a bit rough, but it's not
> *quite* as insane as you might think. :)
Oh good. I can work with that.
Thanks,
Rob
 1412088779.0
    
    
More information about the Toybox
mailing list