On Mon, Nov 26, 2018 at 05:19:41PM -0500, Gabriel Krisman Bertazi wrote: > +static int ascii_casefold(const struct nls_table *table, > + const unsigned char *str, size_t len, > + unsigned char *dest, size_t dlen) > +{ > + unsigned i; > + > + for (i = 0; i < len; i++) > + dest[i] = charset_toupper(table, str[i]); > + > + return len; > +} > + > +static int ascii_normalize(const struct nls_table *table, > + const unsigned char *str, size_t len, > + unsigned char *dest, size_t dlen) > +{ > + memcpy(dest, str, len); > + return len; > +} Shouldn't these two functions at least check to make sure dlen >= len and return an error if not? It's not paranoia when there are people out there actually trying to get you. :-) - Ted