* src/basenc.c (isbase16): Also return true for lower case.
* tests/basenc/basenc.pl: Add a test case.
Reported by Paul Eggert.
static bool
isbase16 (char ch)
{
- return ('0' <= ch && ch <= '9') || ('A' <= ch && ch <= 'F');
+ return isxdigit (to_uchar (ch));
}
static int
return len * 2;
}
-static const char base16[16] = "0123456789ABCDEF";
static void
base16_encode (char const *restrict in, idx_t inlen,
char *restrict out, idx_t outlen)
{
+ static const char base16[16] = "0123456789ABCDEF";
+
while (inlen--)
{
unsigned char c = *in;
{ERR=>"$prog: invalid input\n"}],
['b16_8', '--base16 -d', {IN=>"AB\nCD"}, {OUT=>"\xAB\xCD"}],
['b16_9', '--base16 -d', {IN=>lc ($base16_out)}, {OUT=>$base16_in}],
+ ['b16_10', '--base16 -d -i', {IN=>lc ($base16_out)}, {OUT=>$base16_in}],