Re: [PATCH v2 1/2] ksmbd: casefold utf-8 share names and fix ascii lowercase conversion

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2022-09-12 6:55 GMT+09:00, Atte Heikkilä <atteh.mailbox@xxxxxxxxx>:
> strtolower() corrupts all UTF-8 share names that have a byte in the C0
> (À ISO8859-1) to DE (Þ ISO8859-1) range, since the non-ASCII part of
> ISO8859-1 is incompatible with UTF-8. Prevent this by checking that a
> byte is in the ASCII range with isascii(), before the conversion to
> lowercase with tolower(). Properly handle case-insensitivity of UTF-8
> share names by casefolding them, but fallback to ASCII lowercase
> conversion on failure or if CONFIG_UNICODE is not set. Refactor to move
> the share name casefolding immediately after the share name extraction.
> Also, make the associated constness corrections.
>
> Signed-off-by: Atte Heikkilä <atteh.mailbox@xxxxxxxxx>
> ---
>  v2:
>    - added missing kfree() to -E2BIG error path of casefold_sharename()
Acked-by: Namjae Jeon <linkinjeon@xxxxxxxxxx>

Thanks!




[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux