From 12aa96d5889cd4476ea1dceafb16b0b16c609047 Mon Sep 17 00:00:00 2001 From: Tal Aloni Date: Mon, 13 Mar 2017 21:34:42 +0200 Subject: [PATCH] CreateFile related logging improvements --- SMBLibrary/NTFileStore/Adapter/NTFileSystemAdapter.cs | 5 +++-- SMBLibrary/Server/SMB1/NTCreateHelper.cs | 1 + SMBLibrary/Server/SMB1/OpenAndXHelper.cs | 1 + SMBLibrary/Server/SMB2/CreateHelper.cs | 1 + 4 files changed, 6 insertions(+), 2 deletions(-) diff --git a/SMBLibrary/NTFileStore/Adapter/NTFileSystemAdapter.cs b/SMBLibrary/NTFileStore/Adapter/NTFileSystemAdapter.cs index 909a6d2..77ce58d 100644 --- a/SMBLibrary/NTFileStore/Adapter/NTFileSystemAdapter.cs +++ b/SMBLibrary/NTFileStore/Adapter/NTFileSystemAdapter.cs @@ -258,7 +258,7 @@ namespace SMBLibrary bool disableBuffering = (openOptions & CreateOptions.FILE_NO_INTERMEDIATE_BUFFERING) > 0; bool buffered = (openOptions & CreateOptions.FILE_SEQUENTIAL_ONLY) > 0 && !disableBuffering && !openReparsePoint; FileShare fileShare = NTFileStoreHelper.ToFileShare(shareAccess); - Log(Severity.Information, "OpenFileStream: Opening '{0}', Access={1}, Share={2}, Buffered={3}", path, fileAccess, fileShare, buffered); + string fileShareString = fileShare.ToString().Replace(", ", "|"); try { stream = m_fileSystem.OpenFile(path, FileMode.Open, fileAccess, fileShare); @@ -266,10 +266,11 @@ namespace SMBLibrary catch (Exception ex) { NTStatus status = ToNTStatus(ex); - Log(Severity.Verbose, "OpenFile: Cannot open '{0}'. {1}.", path, status); + Log(Severity.Verbose, "OpenFile: Cannot open '{0}', Access={1}, Share={2}. NTStatus: {3}.", path, fileAccess, fileShareString, status); return status; } + Log(Severity.Information, "OpenFileStream: Opened '{0}', Access={1}, Share={2}, Buffered={3}", path, fileAccess, fileShareString, buffered); if (buffered) { stream = new PrefetchedStream(stream); diff --git a/SMBLibrary/Server/SMB1/NTCreateHelper.cs b/SMBLibrary/Server/SMB1/NTCreateHelper.cs index 89caa60..9855f0f 100644 --- a/SMBLibrary/Server/SMB1/NTCreateHelper.cs +++ b/SMBLibrary/Server/SMB1/NTCreateHelper.cs @@ -42,6 +42,7 @@ namespace SMBLibrary.Server.SMB1 return new ErrorResponse(request.CommandName); } + state.LogToServer(Severity.Verbose, "Create: Opened '{0}{1}'.", share.Name, path); ushort? fileID = session.AddOpenFile(header.TID, path, handle); if (!fileID.HasValue) { diff --git a/SMBLibrary/Server/SMB1/OpenAndXHelper.cs b/SMBLibrary/Server/SMB1/OpenAndXHelper.cs index 2d15d03..9d8a95f 100644 --- a/SMBLibrary/Server/SMB1/OpenAndXHelper.cs +++ b/SMBLibrary/Server/SMB1/OpenAndXHelper.cs @@ -58,6 +58,7 @@ namespace SMBLibrary.Server.SMB1 return new ErrorResponse(request.CommandName); } + state.LogToServer(Severity.Verbose, "OpenAndX: Opened '{0}{1}'.", share.Name, path); ushort? fileID = session.AddOpenFile(header.TID, path, handle); if (!fileID.HasValue) { diff --git a/SMBLibrary/Server/SMB2/CreateHelper.cs b/SMBLibrary/Server/SMB2/CreateHelper.cs index b889c19..a7709fd 100644 --- a/SMBLibrary/Server/SMB2/CreateHelper.cs +++ b/SMBLibrary/Server/SMB2/CreateHelper.cs @@ -42,6 +42,7 @@ namespace SMBLibrary.Server.SMB2 return new ErrorResponse(request.CommandName, createStatus); } + state.LogToServer(Severity.Verbose, "Create: Opened '{0}{1}'.", share.Name, path); FileID? fileID = session.AddOpenFile(request.Header.TreeID, path, handle); if (fileID == null) {