diff options
Diffstat (limited to 'fs/cifs/connect.c')
-rw-r--r-- | fs/cifs/connect.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index 0cc3b81c2e84..47d8ff623683 100644 --- a/fs/cifs/connect.c +++ b/fs/cifs/connect.c | |||
@@ -55,9 +55,6 @@ | |||
55 | /* SMB echo "timeout" -- FIXME: tunable? */ | 55 | /* SMB echo "timeout" -- FIXME: tunable? */ |
56 | #define SMB_ECHO_INTERVAL (60 * HZ) | 56 | #define SMB_ECHO_INTERVAL (60 * HZ) |
57 | 57 | ||
58 | extern void SMBNTencrypt(unsigned char *passwd, unsigned char *c8, | ||
59 | unsigned char *p24); | ||
60 | |||
61 | extern mempool_t *cifs_req_poolp; | 58 | extern mempool_t *cifs_req_poolp; |
62 | 59 | ||
63 | struct smb_vol { | 60 | struct smb_vol { |
@@ -87,6 +84,7 @@ struct smb_vol { | |||
87 | bool no_xattr:1; /* set if xattr (EA) support should be disabled*/ | 84 | bool no_xattr:1; /* set if xattr (EA) support should be disabled*/ |
88 | bool server_ino:1; /* use inode numbers from server ie UniqueId */ | 85 | bool server_ino:1; /* use inode numbers from server ie UniqueId */ |
89 | bool direct_io:1; | 86 | bool direct_io:1; |
87 | bool strict_io:1; /* strict cache behavior */ | ||
90 | bool remap:1; /* set to remap seven reserved chars in filenames */ | 88 | bool remap:1; /* set to remap seven reserved chars in filenames */ |
91 | bool posix_paths:1; /* unset to not ask for posix pathnames. */ | 89 | bool posix_paths:1; /* unset to not ask for posix pathnames. */ |
92 | bool no_linux_ext:1; | 90 | bool no_linux_ext:1; |
@@ -1344,6 +1342,8 @@ cifs_parse_mount_options(char *options, const char *devname, | |||
1344 | vol->direct_io = 1; | 1342 | vol->direct_io = 1; |
1345 | } else if (strnicmp(data, "forcedirectio", 13) == 0) { | 1343 | } else if (strnicmp(data, "forcedirectio", 13) == 0) { |
1346 | vol->direct_io = 1; | 1344 | vol->direct_io = 1; |
1345 | } else if (strnicmp(data, "strictcache", 11) == 0) { | ||
1346 | vol->strict_io = 1; | ||
1347 | } else if (strnicmp(data, "noac", 4) == 0) { | 1347 | } else if (strnicmp(data, "noac", 4) == 0) { |
1348 | printk(KERN_WARNING "CIFS: Mount option noac not " | 1348 | printk(KERN_WARNING "CIFS: Mount option noac not " |
1349 | "supported. Instead set " | 1349 | "supported. Instead set " |
@@ -2584,6 +2584,8 @@ static void setup_cifs_sb(struct smb_vol *pvolume_info, | |||
2584 | if (pvolume_info->multiuser) | 2584 | if (pvolume_info->multiuser) |
2585 | cifs_sb->mnt_cifs_flags |= (CIFS_MOUNT_MULTIUSER | | 2585 | cifs_sb->mnt_cifs_flags |= (CIFS_MOUNT_MULTIUSER | |
2586 | CIFS_MOUNT_NO_PERM); | 2586 | CIFS_MOUNT_NO_PERM); |
2587 | if (pvolume_info->strict_io) | ||
2588 | cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_STRICT_IO; | ||
2587 | if (pvolume_info->direct_io) { | 2589 | if (pvolume_info->direct_io) { |
2588 | cFYI(1, "mounting share using direct i/o"); | 2590 | cFYI(1, "mounting share using direct i/o"); |
2589 | cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_DIRECT_IO; | 2591 | cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_DIRECT_IO; |
@@ -2985,7 +2987,8 @@ CIFSTCon(unsigned int xid, struct cifsSesInfo *ses, | |||
2985 | bcc_ptr); | 2987 | bcc_ptr); |
2986 | else | 2988 | else |
2987 | #endif /* CIFS_WEAK_PW_HASH */ | 2989 | #endif /* CIFS_WEAK_PW_HASH */ |
2988 | SMBNTencrypt(tcon->password, ses->server->cryptkey, bcc_ptr); | 2990 | rc = SMBNTencrypt(tcon->password, ses->server->cryptkey, |
2991 | bcc_ptr); | ||
2989 | 2992 | ||
2990 | bcc_ptr += CIFS_AUTH_RESP_SIZE; | 2993 | bcc_ptr += CIFS_AUTH_RESP_SIZE; |
2991 | if (ses->capabilities & CAP_UNICODE) { | 2994 | if (ses->capabilities & CAP_UNICODE) { |