Patch ntfsplus kernel module to support nowindows_names
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
diff --git a/fs/ntfs/super.c b/fs/ntfs/super.c
|
||||
--- a/fs/ntfs/super.c
|
||||
+++ b/fs/ntfs/super.c
|
||||
@@ -91,7 +91,7 @@ static const struct fs_parameter_spec ntfs_parameters[] = {
|
||||
fsparam_flag("sys_immutable", Opt_sys_immutable),
|
||||
fsparam_flag("nohidden", Opt_nohidden),
|
||||
fsparam_flag("hide_dot_files", Opt_hide_dot_files),
|
||||
- fsparam_flag("windows_names", Opt_check_windows_names),
|
||||
+ fsparam_bool("windows_names", Opt_check_windows_names),
|
||||
fsparam_flag("acl", Opt_acl),
|
||||
fsparam_flag("discard", Opt_discard),
|
||||
fsparam_flag("sparse", Opt_sparse),
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
diff --git a/fs/ntfs/namei.c b/fs/ntfs/namei.c
|
||||
--- a/fs/ntfs/namei.c
|
||||
+++ b/fs/ntfs/namei.c
|
||||
@@ -61,12 +61,12 @@ static int ntfs_check_bad_windows_name(struct ntfs_volume *vol,
|
||||
const __le16 *wc,
|
||||
unsigned int wc_len)
|
||||
{
|
||||
- if (ntfs_check_bad_char(wc, wc_len))
|
||||
- return -EINVAL;
|
||||
-
|
||||
if (!NVolCheckWindowsNames(vol))
|
||||
return 0;
|
||||
|
||||
+ if (ntfs_check_bad_char(wc, wc_len))
|
||||
+ return -EINVAL;
|
||||
+
|
||||
/* Check for trailing space or dot. */
|
||||
if (wc_len > 0 &&
|
||||
(wc[wc_len - 1] == cpu_to_le16(' ') ||
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
|
||||
{
|
||||
boot.extraModulePackages = [
|
||||
((pkgs.callPackage ../../pkgs/ntfs/package.nix { kernel = config.boot.kernelPackages.kernel; }).overrideAttrs {
|
||||
patches = [
|
||||
./ntfsplus-patches/0001-fix-windows_names-option.patch
|
||||
./ntfsplus-patches/0002-gate-bad-character-check-by-windows_names.patch
|
||||
];
|
||||
})
|
||||
];
|
||||
}
|
||||
Reference in New Issue
Block a user