]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
CIFS: Reconnect expired SMB sessions
authorPavel Shilovsky <pshilov@microsoft.com>
Sat, 8 Jul 2017 21:32:00 +0000 (14:32 -0700)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Mon, 30 Oct 2017 13:47:56 +0000 (14:47 +0100)
commit8fe4d69354d20f562d87c7e07a1bf2087b811808
tree04be25fc80d9a3edec7b6ef1d589fc734301fbd1
parentdd0c7b357bba0f49fa1b96f86c6e5c2024491693
CIFS: Reconnect expired SMB sessions

BugLink: http://bugs.launchpad.net/bugs/1724836
commit 511c54a2f69195b28afb9dd119f03787b1625bb4 upstream.

According to the MS-SMB2 spec (3.2.5.1.6) once the client receives
STATUS_NETWORK_SESSION_EXPIRED error code from a server it should
reconnect the current SMB session. Currently the client doesn't do
that. This can result in subsequent client requests failing by
the server. The patch adds an additional logic to the demultiplex
thread to identify expired sessions and reconnect them.

Signed-off-by: Pavel Shilovsky <pshilov@microsoft.com>
Signed-off-by: Steve French <smfrench@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
fs/cifs/cifsglob.h
fs/cifs/cifssmb.c
fs/cifs/connect.c
fs/cifs/smb2ops.c