summaryrefslogtreecommitdiffstats
path: root/fs/cifs/cifssmb.c
diff options
context:
space:
mode:
authorJeff Layton <jlayton@redhat.com>2010-04-24 13:57:48 +0200
committerSteve French <sfrench@us.ibm.com>2010-05-06 01:18:27 +0200
commit198b5682781b97251afd9025dbf559a77969abdd (patch)
treebfe381f099e6986a833d93184b62bf9bcedfce69 /fs/cifs/cifssmb.c
parentcifs: eliminate "first_time" parm to CIFS_SessSetup (diff)
downloadlinux-198b5682781b97251afd9025dbf559a77969abdd.tar.xz
linux-198b5682781b97251afd9025dbf559a77969abdd.zip
cifs: break negotiate protocol calls out of cifs_setup_session
So that we can reasonably set up the secType based on both the NegotiateProtocol response and the parsed mount options. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/cifssmb.c')
-rw-r--r--fs/cifs/cifssmb.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c
index 1372253a0606..30742d8eef14 100644
--- a/fs/cifs/cifssmb.c
+++ b/fs/cifs/cifssmb.c
@@ -172,7 +172,8 @@ cifs_reconnect_tcon(struct cifsTconInfo *tcon, int smb_command)
* reconnect the same SMB session
*/
mutex_lock(&ses->session_mutex);
- if (ses->need_reconnect)
+ rc = cifs_negotiate_protocol(0, ses);
+ if (rc == 0 && ses->need_reconnect)
rc = cifs_setup_session(0, ses, nls_codepage);
/* do we need to reconnect tcon? */