Jim Meyering <[EMAIL PROTECTED]> wrote: > For your reviewing fun, I've included both the gnulib parts > and the coreutils parts: > > [gnulib] > 2007-01-03 Jim Meyering <[EMAIL PROTECTED]> > > When decoding, always allow newlines in input, with almost no > performance impact. > * lib/base64.c: Include <string.h>. > (base64_decode_ctx_init, get_4, decode_4): New functions. > (base64_decode): Efficiently handle interspersed newlines. > (base64_decode_alloc): Update signature. > * lib/base64.h (struct base64_decode_context): Define. > (base64_decode_ctx_init): Add prototype. > (base64_decode, base64_decode_alloc): Update prototypes. > > [coreutils] > 2007-01-03 Jim Meyering <[EMAIL PROTECTED]> > > When decoding, always allow newlines in input, with almost no > performance impact. > * src/base64.c (do_decode): Initialize decode context. > Call base64_decode one more time, after all input is processed. > * tests/misc/base64: Add a bunch of tests, for the above.
In the mean time -- sometimes it's easier to review things when they're checked in... I've committed all of the above (along with doc changes) to coreutils, putting gnulib-bits in coreutils/gl/lib/base64.[ch]. http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=summary Jim