Let l64a() properly null terminate its result.
authored <ed@FreeBSD.org>
Thu, 26 May 2016 20:55:15 +0000 (20:55 +0000)
committered <ed@FreeBSD.org>
Thu, 26 May 2016 20:55:15 +0000 (20:55 +0000)
commit284a864941420a45c138e68a75dd73ba8c3ebd34
treed93259dc0ebd71c657b1fca11ec7b3a258f1ac84
parente5ef05be3737033c0da5ab5f00022773c4274dcb
Let l64a() properly null terminate its result.

Though the buffer used by l64a() is initialized with null bytes,
repetetive calls may end up having trailing garbage of previous
invocations because we don't end up terminating the string.

Instead of importing NetBSD's fix, use this opportunity to simplify this
function dramatically, for example by just storing the Base64 character
set in a string. There is also no need to do the bitmasking, as we can
just use the proper integer type from <stdint.h>.

MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D6511
lib/libc/stdlib/l64a.c