From 18979ae15fd57b8729177c8831bb6c40f9d652bd Mon Sep 17 00:00:00 2001 From: Tal Aloni Date: Sun, 26 Feb 2017 21:33:49 +0200 Subject: [PATCH] IOCtlHelper: Pass FSCTL_VALIDATE_NEGOTIATE_INFO / FSCTL_QUERY_NETWORK_INTERFACE_INFO to the INTFileStore layer, set response FileId --- SMBLibrary/Server/SMB2/IOCtlHelper.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/SMBLibrary/Server/SMB2/IOCtlHelper.cs b/SMBLibrary/Server/SMB2/IOCtlHelper.cs index 5dc735d..99148be 100644 --- a/SMBLibrary/Server/SMB2/IOCtlHelper.cs +++ b/SMBLibrary/Server/SMB2/IOCtlHelper.cs @@ -28,9 +28,12 @@ namespace SMBLibrary.Server.SMB2 object handle; if (openFile == null) { - if (request.CtlCode == (uint)IoControlCode.FSCTL_PIPE_WAIT) + if (request.CtlCode == (uint)IoControlCode.FSCTL_PIPE_WAIT || + request.CtlCode == (uint)IoControlCode.FSCTL_VALIDATE_NEGOTIATE_INFO || + request.CtlCode == (uint)IoControlCode.FSCTL_QUERY_NETWORK_INTERFACE_INFO) { - // [MS-SMB2] 3.2.4.20.9 - FSCTL_PIPE_WAIT request has FileId set to 0xFFFFFFFFFFFFFFFF + // [MS-SMB2] 3.3.5.1.5 - FSCTL_PIPE_WAIT / FSCTL_QUERY_NETWORK_INTERFACE_INFO / + // FSCTL_VALIDATE_NEGOTIATE_INFO requests have FileId set to 0xFFFFFFFFFFFFFFFF. handle = null; } else @@ -53,6 +56,7 @@ namespace SMBLibrary.Server.SMB2 IOCtlResponse response = new IOCtlResponse(); response.CtlCode = request.CtlCode; + response.FileId = request.FileId; response.Output = output; return response; }