Browse Source

fix iconv buffer overflow converting to legacy JIS-based encodings

maintainer's notes:

commit a223dbd27a added the reverse
conversions to JIS-based encodings, but omitted the check for remining
buffer space in the case where the next character to be written was
single-byte, allowing conversion to continue past the end of the
destination buffer.
master
Will Dietz 8 years ago
committed by Rich Felker
parent
commit
55a661ff5e
  1. 1
      src/locale/iconv.c

1
src/locale/iconv.c

@ -539,6 +539,7 @@ size_t iconv(iconv_t cd, char **restrict in, size_t *restrict inb, char **restri
if (*outb < 1) goto toobig;
if (c<256 && c==legacy_map(tomap, c)) {
revout:
if (*outb < 1) goto toobig;
*(*out)++ = c;
*outb -= 1;
break;

Loading…
Cancel
Save