aboutsummaryrefslogtreecommitdiffstats
path: root/fs/cifs/connect.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/cifs/connect.c')
-rw-r--r--fs/cifs/connect.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c
index ef0432c44482..6b21f6aa9f60 100644
--- a/fs/cifs/connect.c
+++ b/fs/cifs/connect.c
@@ -79,6 +79,8 @@ struct smb_vol {
79 unsigned remap:1; /* set to remap seven reserved chars in filenames */ 79 unsigned remap:1; /* set to remap seven reserved chars in filenames */
80 unsigned posix_paths:1; /* unset to not ask for posix pathnames. */ 80 unsigned posix_paths:1; /* unset to not ask for posix pathnames. */
81 unsigned sfu_emul:1; 81 unsigned sfu_emul:1;
82 unsigned nocase; /* request case insensitive filenames */
83 unsigned nobrl; /* disable sending byte range locks to srv */
82 unsigned int rsize; 84 unsigned int rsize;
83 unsigned int wsize; 85 unsigned int wsize;
84 unsigned int sockopt; 86 unsigned int sockopt;
@@ -1040,6 +1042,12 @@ cifs_parse_mount_options(char *options, const char *devname,struct smb_vol *vol)
1040 vol->posix_paths = 1; 1042 vol->posix_paths = 1;
1041 } else if (strnicmp(data, "noposixpaths", 12) == 0) { 1043 } else if (strnicmp(data, "noposixpaths", 12) == 0) {
1042 vol->posix_paths = 0; 1044 vol->posix_paths = 0;
1045 } else if (strnicmp(data, "nocase", 6) == 0) {
1046 vol->nocase = 1;
1047 } else if (strnicmp(data, "brl", 3) == 0) {
1048 vol->nobrl = 0;
1049 } else if (strnicmp(data, "nobrl", 5) == 0) {
1050 vol->nobrl = 1;
1043 } else if (strnicmp(data, "setuids", 7) == 0) { 1051 } else if (strnicmp(data, "setuids", 7) == 0) {
1044 vol->setuids = 1; 1052 vol->setuids = 1;
1045 } else if (strnicmp(data, "nosetuids", 9) == 0) { 1053 } else if (strnicmp(data, "nosetuids", 9) == 0) {
@@ -1699,9 +1707,13 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
1699 cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_NO_XATTR; 1707 cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_NO_XATTR;
1700 if(volume_info.sfu_emul) 1708 if(volume_info.sfu_emul)
1701 cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_UNX_EMUL; 1709 cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_UNX_EMUL;
1710 if(volume_info.nocase)
1711 cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_CASE_INSENS;
1712 if(volume_info.nobrl)
1713 cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_NO_BRL;
1702 1714
1703 if(volume_info.direct_io) { 1715 if(volume_info.direct_io) {
1704 cERROR(1,("mounting share using direct i/o")); 1716 cFYI(1,("mounting share using direct i/o"));
1705 cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_DIRECT_IO; 1717 cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_DIRECT_IO;
1706 } 1718 }
1707 1719