diff options
author | Steve French <sfrench@us.ibm.com> | 2006-09-30 00:13:17 -0400 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2006-09-30 00:13:17 -0400 |
commit | 9ac00b7d96045fa3ce573e0ad5cdc0350ad8e1d2 (patch) | |
tree | 80ee9890d64f6c4b899144df8ee0c6cd9361aafb /fs/cifs/connect.c | |
parent | f46d3e11903e452924ef2996aa9aca2aae4427e2 (diff) |
[CIFS] Do not send newer QFSInfo to legacy servers which can not support it
Fix dialect negotiation to save off when we have negotiated lanman.
This allows us to avoid sending some somewhat newer requests that the server
can not handle and go directly to the older version (infolevel) of the same
call. Make sure we try to negotiate a level which allows us to get the
server OS (which we check so we can detect Win9x vs. other legacy servers
and eventually work around the Win9x DOS time bug (they reverse date/time
fields).
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/connect.c')
-rw-r--r-- | fs/cifs/connect.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index 083b2b2c1571..c96f3edf1b9c 100644 --- a/fs/cifs/connect.c +++ b/fs/cifs/connect.c | |||
@@ -3316,6 +3316,7 @@ int cifs_setup_session(unsigned int xid, struct cifsSesInfo *pSesInfo, | |||
3316 | first_time = 1; | 3316 | first_time = 1; |
3317 | } | 3317 | } |
3318 | if (!rc) { | 3318 | if (!rc) { |
3319 | pSesInfo->flags = 0; | ||
3319 | pSesInfo->capabilities = pSesInfo->server->capabilities; | 3320 | pSesInfo->capabilities = pSesInfo->server->capabilities; |
3320 | if(linuxExtEnabled == 0) | 3321 | if(linuxExtEnabled == 0) |
3321 | pSesInfo->capabilities &= (~CAP_UNIX); | 3322 | pSesInfo->capabilities &= (~CAP_UNIX); |