Reported by Kamil Dudka <kdudka@redhat.com>.
Idea by Paul Eggert.
* lib/base64.c (base64_encode_fast, base64_encode): Add a no-op
'& 0x3f' to the array index expressions. This convinces Coverity that
there is no out-of-bounds array reference, regardless of the input.
+2019-05-10 Bruno Haible <bruno@clisp.org>
+
+ base64: Avoid false positive warning from Coverity.
+ Reported by Kamil Dudka <kdudka@redhat.com>.
+ Idea by Paul Eggert.
+ * lib/base64.c (base64_encode_fast, base64_encode): Add a no-op
+ '& 0x3f' to the array index expressions. This convinces Coverity that
+ there is no out-of-bounds array reference, regardless of the input.
+
2019-05-09 Bruno Haible <bruno@clisp.org>
gettext: Update to gettext 0.20.
{
while (inlen)
{
- *out++ = b64c[to_uchar (in[0]) >> 2];
+ *out++ = b64c[(to_uchar (in[0]) >> 2) & 0x3f];
*out++ = b64c[((to_uchar (in[0]) << 4) + (to_uchar (in[1]) >> 4)) & 0x3f];
*out++ = b64c[((to_uchar (in[1]) << 2) + (to_uchar (in[2]) >> 6)) & 0x3f];
*out++ = b64c[to_uchar (in[2]) & 0x3f];
while (inlen && outlen)
{
- *out++ = b64c[to_uchar (in[0]) >> 2];
+ *out++ = b64c[(to_uchar (in[0]) >> 2) & 0x3f];
if (!--outlen)
break;
*out++ = b64c[((to_uchar (in[0]) << 4)