]> git.baikalelectronics.ru Git - kernel.git/commit
Handle mismatched open calls
authorSachin Prabhu <sprabhu@redhat.com>
Fri, 3 Mar 2017 23:41:38 +0000 (15:41 -0800)
committerSteve French <smfrench@gmail.com>
Fri, 7 Apr 2017 13:04:40 +0000 (08:04 -0500)
commit4e1041086a6ca298408602c2d1dab54578db605c
treedd922c0d30ddffd7e0bda9e53ddca5165c1afb84
parent63597378a292d242673b0368eed2914cbc6598e7
Handle mismatched open calls

A signal can interrupt a SendReceive call which result in incoming
responses to the call being ignored. This is a problem for calls such as
open which results in the successful response being ignored. This
results in an open file resource on the server.

The patch looks into responses which were cancelled after being sent and
in case of successful open closes the open fids.

For this patch, the check is only done in SendReceive2()

RH-bz: 1403319

Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
Cc: Stable <stable@vger.kernel.org>
fs/cifs/cifsglob.h
fs/cifs/cifsproto.h
fs/cifs/cifssmb.c
fs/cifs/connect.c
fs/cifs/smb2misc.c
fs/cifs/smb2ops.c
fs/cifs/smb2proto.h
fs/cifs/smb2transport.c
fs/cifs/transport.c