diff options
author | Jeremy Allison <jra@samba.org> | 2019-07-17 10:42:21 -0700 |
---|---|---|
committer | Ralph Boehme <slow@samba.org> | 2019-08-06 14:23:33 +0000 |
commit | 61c239fcec1589d078678e729a19920adfe198f6 (patch) | |
tree | 76d8ad234139f65cd367524c793b2a3908e44268 /source3/smbd/trans2.c | |
parent | b055f1ac7b69ede807eead360b7ffb9c65dea53c (diff) | |
download | samba-61c239fcec1589d078678e729a19920adfe198f6.tar.gz |
s3: smbd: Prepare for SMB1 directory handle opens in reply_findclose()
Call close_file() on any SMB1 directory handle once the dptr is closed.
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
Diffstat (limited to 'source3/smbd/trans2.c')
-rw-r--r-- | source3/smbd/trans2.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index c75f8e277d5..2f3ebb944c4 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -9634,6 +9634,7 @@ void reply_findclose(struct smb_request *req) { int dptr_num; struct smbd_server_connection *sconn = req->sconn; + files_struct *fsp = NULL; START_PROFILE(SMBfindclose); @@ -9654,7 +9655,12 @@ void reply_findclose(struct smb_request *req) if (dptr_num == -1) { dptr_closecnum(req->conn); } else { + fsp = dptr_fsp(sconn, dptr_num); dptr_close(sconn, &dptr_num); + if (fsp != NULL) { + close_file(NULL, fsp, NORMAL_CLOSE); + fsp = NULL; + } } reply_outbuf(req, 0, 0); |