linux/fs/cifs
Steve French 2e4378ee60 Fix reconnect to not defer smb3 session reconnect long after socket reconnect
commit 4fcd1813e6 upstream.

Azure server blocks clients that open a socket and don't do anything on it.
In our reconnect scenarios, we can reconnect the tcp session and
detect the socket is available but we defer the negprot and SMB3 session
setup and tree connect reconnection until the next i/o is requested, but
this looks suspicous to some servers who expect SMB3 negprog and session
setup soon after a socket is created.

In the echo thread, reconnect SMB3 sessions and tree connections
that are disconnected.  A later patch will replay persistent (and
resilient) handle opens.

Signed-off-by: Steve French <steve.french@primarydata.com>
Acked-by: Pavel Shilovsky <pshilovsky@samba.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
History 2016-08-22 22:38:20 +01:00
..
asn1.c [CIFS] cifs: Rename cERROR and cFYI to cifs_dbg 2013-05-04 22:17:23 -05:00
cache.c [CIFS] cifs: Rename cERROR and cFYI to cifs_dbg 2013-05-04 22:17:23 -05:00
cifs_debug.c cifs: Ratelimit kernel log messages 2016-02-03 10:25:06 +00:00
cifs_debug.h cifs: Ratelimit kernel log messages 2016-02-03 10:25:06 +00:00
cifs_dfs_ref.c cifs: fix composing of mount options for DFS referrals 2013-05-24 13:08:31 -05:00
cifs_fs_sb.h cifs: rcu-delay unload_nls() and freeing sbi 2013-10-24 23:43:27 -04:00
cifs_spnego.c cifs: Create dedicated keyring for spnego operations 2016-08-22 22:38:03 +01:00
cifs_spnego.h [CIFS] Rename three structures to avoid camel case 2011-05-27 04:34:02 +00:00
cifs_unicode.c [CIFS] fix mount failure with broken pathnames when smb3 mount with mapchars option 2014-06-24 08:10:24 -05:00
cifs_unicode.h cifs: add new case-insensitive conversion routines that are based on wchar_t's 2013-09-08 14:38:05 -05:00
cifs_uniupr.h cifs: correction of unicode header files 2010-08-20 00:46:42 +00:00
cifsacl.c [CIFS] Fix cifsacl mounts over smb2 to not call cifs 2014-02-10 14:08:16 -06:00
cifsacl.h cifs: fix SID binary to string conversion 2012-12-11 11:48:49 -06:00
cifsencrypt.c cifs: fix erroneous return value 2016-03-04 10:26:38 +00:00
cifsfs.c cifs: Create dedicated keyring for spnego operations 2016-08-22 22:38:03 +01:00
cifsfs.h Fix cifs_uniqueid_to_ino_t() function for s390x 2016-03-24 10:00:57 +00:00
cifsglob.h CIFS: Fix SMB2 readdir error handling 2014-09-17 09:22:22 -07:00
cifspdu.h cifs: Use data structures to compute NTLMv2 response offsets 2013-11-11 16:58:11 -06:00
cifsproto.h cifs: Create dedicated keyring for spnego operations 2016-08-22 22:38:03 +01:00
cifssmb.c CIFS: Fix SMB2+ interim response processing for read requests 2016-03-24 10:00:57 +00:00
connect.c Fix reconnect to not defer smb3 session reconnect long after socket reconnect 2016-08-22 22:38:20 +01:00
dir.c [CIFS] Fix cifsacl mounts over smb2 to not call cifs 2014-02-10 14:08:16 -06:00
dns_resolve.c cifs: fix composing of mount options for DFS referrals 2013-05-24 13:08:31 -05:00
dns_resolve.h DNS: Separate out CIFS DNS Resolver code 2010-08-05 17:17:51 +00:00
export.c [CIFS] cifs: Rename cERROR and cFYI to cifs_dbg 2013-05-04 22:17:23 -05:00
file.c cifs: fix use-after-free bug in find_writable_file 2015-04-13 16:48:56 +01:00
fscache.c NFS client updates for Linux 3.13 2013-11-08 05:57:46 +09:00
fscache.h CIFS: FS-Cache: Uncache unread pages in cifs_readpages() before freeing them 2013-09-18 10:17:03 -05:00
inode.c [SMB3] Do not fall back to SMBWriteX in set_file_size error cases 2015-10-30 13:59:27 +00:00
ioctl.c CIFS: fix type confusion in copy offload ioctl 2015-10-06 11:52:27 +01:00
Kconfig [CIFS] SMB3 Signing enablement 2013-06-26 23:45:05 -05:00
link.c SMB3: Fix oops when creating symlinks on smb3 2014-10-05 13:41:04 -07:00
Makefile cifs: add new case-insensitive conversion routines that are based on wchar_t's 2013-09-08 14:38:05 -05:00
misc.c cifs: Wait for writebacks to complete before attempting write. 2014-04-16 13:51:46 -05:00
netmisc.c fs/cifs/netmisc.c: convert printk to pr_foo() 2014-05-21 10:18:05 -07:00
nterr.c CIFS: Rename 7 error codes to NT_ style 2012-07-24 10:25:10 -05:00
nterr.h CIFS: Rename 7 error codes to NT_ style 2012-07-24 10:25:10 -05:00
ntlmssp.h cifs: dynamic allocation of ntlmssp blob 2016-08-22 22:38:20 +01:00
readdir.c cifs_dbg() outputs an uninitialized buffer in cifs_readdir() 2016-02-02 19:09:42 +00:00
rfc1002pdu.h [CIFS] whitespace cleanup 2007-06-05 18:30:44 +00:00
sess.c cifs: dynamic allocation of ntlmssp blob 2016-08-22 22:38:20 +01:00
smb1ops.c Fix problem recognizing symlinks 2014-10-09 12:23:48 -07:00
smb2file.c CIFS: Fix wrong filename length for SMB2 2014-09-17 09:22:20 -07:00
smb2glob.h remove directory incorrectly tries to set delete on close on non-empty directories 2016-08-22 22:38:01 +01:00
smb2inode.c remove directory incorrectly tries to set delete on close on non-empty directories 2016-08-22 22:38:01 +01:00
smb2maperror.c Fix problem recognizing symlinks 2014-10-09 12:23:48 -07:00
smb2misc.c cifs: Wait for writebacks to complete before attempting write. 2014-04-16 13:51:46 -05:00
smb2ops.c disabling oplocks/leases via module parm enable_oplocks broken for SMB3 2015-10-19 10:54:30 +01:00
smb2pdu.c Fix reconnect to not defer smb3 session reconnect long after socket reconnect 2016-08-22 22:38:20 +01:00
smb2pdu.h Clarify SMB2/SMB3 create context and add missing ones 2014-05-21 10:18:06 -07:00
smb2proto.h remove directory incorrectly tries to set delete on close on non-empty directories 2016-08-22 22:38:01 +01:00
smb2status.h CIFS: Add SMB2 status codes 2012-07-24 10:25:13 -05:00
smb2transport.c cifs: Send a logoff request before removing a smb session 2013-11-02 12:52:35 -05:00
smbencrypt.c [CIFS] cifs: Rename cERROR and cFYI to cifs_dbg 2013-05-04 22:17:23 -05:00
smberr.h cifs: map NT_STATUS_ERROR_WRITE_PROTECTED to -EROFS 2010-08-02 12:40:40 +00:00
smbfsctl.h Check SMB3 dialects against downgrade attacks 2013-11-19 23:52:54 -06:00
transport.c cifs: fix race between call_async() and reconnect() 2016-02-02 19:09:41 +00:00
winucase.c [CIFS] quiet sparse compile warning 2013-09-08 14:54:24 -05:00
xattr.c retrieving CIFS ACLs when mounted with SMB2 fails dropping session 2014-02-07 11:08:17 -06:00