From 7f0e17e9030ad734977f66c2cc27faec501154a2 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Fri, 19 May 2006 15:10:39 +0000 Subject: r15718: - split the SMBflush with the 0xFFFF wildcard fnum into a different level metze (This used to be commit 95bf41b4d4ec96349802955e364fe44ef85f9077) --- source4/smb_server/smb/reply.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'source4/smb_server/smb/reply.c') diff --git a/source4/smb_server/smb/reply.c b/source4/smb_server/smb/reply.c index cfd004304a..768fba1319 100644 --- a/source4/smb_server/smb/reply.c +++ b/source4/smb_server/smb/reply.c @@ -1069,13 +1069,21 @@ void smbsrv_reply_lseek(struct smbsrv_request *req) void smbsrv_reply_flush(struct smbsrv_request *req) { union smb_flush *io; + uint16_t fnum; /* parse request */ SMBSRV_CHECK_WCT(req, 1); SMBSRV_TALLOC_IO_PTR(io, union smb_flush); SMBSRV_SETUP_NTVFS_REQUEST(reply_simple_send, NTVFS_ASYNC_STATE_MAY_ASYNC); - io->flush.in.file.fnum = req_fnum(req, req->in.vwv, VWV(0)); + fnum = req_fnum(req, req->in.vwv, VWV(0)); + + if (fnum == 0xFFFF) { + io->flush_all.level = RAW_FLUSH_ALL; + } else { + io->flush.level = RAW_FLUSH_FLUSH; + io->flush.in.file.fnum = fnum; + } SMBSRV_CALL_NTVFS_BACKEND(ntvfs_flush(req->ntvfs, io)); } -- cgit