From: Pali Rohár <[email protected]>
Sent: Sunday, August 23, 2020 12:55 PM
>
> On Friday 21 August 2020 16:25:03 Konstantin Komarov wrote:
> > + case Opt_nls:
> > + match_strlcpy(nls_name, &args[0], sizeof(nls_name));
> > + break;
> > +
> > + /* unknown option */
> > + default:
> > + if (!silent)
> > + ntfs_error(
> > + sb,
> > + "Unrecognized mount option \"%s\" or
> > missing value",
> > + p);
> > + //return -EINVAL;
> > + }
> > + }
> > +
> > +out:
> > + if (nls_name[0]) {
> > + sbi->nls = load_nls(nls_name);
> > + if (!sbi->nls) {
> > + /* critical ?*/
> > + ntfs_error(sb, "failed to load \"%s\"\n", nls_name);
> > + //return -EINVAL;
>
> Well, I think it is a fatal error if user supplied NLS encoding cannot
> be loaded. If user via mount parameter specify that wants encoding XYZ
> and kernel loads different (e.g. default one) then userspace would be
> confused as it would expect encoding XYZ.
>
Agreed. Will be fixed in V3.
> > + }
> > + }
> > +
> > + if (!sbi->nls) {
> > + sbi->nls = load_nls_default();
> > + if (!sbi->nls) {
> > + /* critical */
> > + ntfs_error(sb, "failed to load default nls");
> > + return -EINVAL;
> > + }
> > + }
> > +
> > + return 0;
> > +}