aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/IO/SharpCifs/Smb/Trans2FindFirst2Response.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Emby.Server.Implementations/IO/SharpCifs/Smb/Trans2FindFirst2Response.cs')
-rw-r--r--Emby.Server.Implementations/IO/SharpCifs/Smb/Trans2FindFirst2Response.cs262
1 files changed, 0 insertions, 262 deletions
diff --git a/Emby.Server.Implementations/IO/SharpCifs/Smb/Trans2FindFirst2Response.cs b/Emby.Server.Implementations/IO/SharpCifs/Smb/Trans2FindFirst2Response.cs
deleted file mode 100644
index 71f780ff3..000000000
--- a/Emby.Server.Implementations/IO/SharpCifs/Smb/Trans2FindFirst2Response.cs
+++ /dev/null
@@ -1,262 +0,0 @@
-// This code is derived from jcifs smb client library <jcifs at samba dot org>
-// Ported by J. Arturo <webmaster at komodosoft dot net>
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-using SharpCifs.Util.Sharpen;
-
-namespace SharpCifs.Smb
-{
- internal class Trans2FindFirst2Response : SmbComTransactionResponse
- {
- internal const int SmbInfoStandard = 1;
-
- internal const int SmbInfoQueryEaSize = 2;
-
- internal const int SmbInfoQueryEasFromList = 3;
-
- internal const int SmbFindFileDirectoryInfo = unchecked(0x101);
-
- internal const int SmbFindFileFullDirectoryInfo = unchecked(0x102);
-
- internal const int SmbFileNamesInfo = unchecked(0x103);
-
- internal const int SmbFileBothDirectoryInfo = unchecked(0x104);
-
- internal class SmbFindFileBothDirectoryInfo : IFileEntry
- {
- internal int NextEntryOffset;
-
- internal int FileIndex;
-
- internal long CreationTime;
-
- internal long LastAccessTime;
-
- internal long LastWriteTime;
-
- internal long ChangeTime;
-
- internal long EndOfFile;
-
- internal long AllocationSize;
-
- internal int ExtFileAttributes;
-
- internal int FileNameLength;
-
- internal int EaSize;
-
- internal int ShortNameLength;
-
- internal string ShortName;
-
- internal string Filename;
-
- // information levels
- public virtual string GetName()
- {
- return Filename;
- }
-
- public virtual int GetType()
- {
- return SmbFile.TypeFilesystem;
- }
-
- public virtual int GetAttributes()
- {
- return ExtFileAttributes;
- }
-
- public virtual long CreateTime()
- {
- return CreationTime;
- }
-
- public virtual long LastModified()
- {
- return LastWriteTime;
- }
-
- public virtual long Length()
- {
- return EndOfFile;
- }
-
- public override string ToString()
- {
- return "SmbFindFileBothDirectoryInfo[" + "nextEntryOffset=" + NextEntryOffset
- + ",fileIndex=" + FileIndex + ",creationTime=" + Extensions.CreateDate
- (CreationTime) + ",lastAccessTime=" + Extensions.CreateDate(LastAccessTime
- ) + ",lastWriteTime=" + Extensions.CreateDate(LastWriteTime) + ",changeTime="
- + Extensions.CreateDate(ChangeTime) + ",endOfFile=" + EndOfFile
- + ",allocationSize=" + AllocationSize + ",extFileAttributes=" + ExtFileAttributes
- + ",fileNameLength=" + FileNameLength + ",eaSize=" + EaSize + ",shortNameLength="
- + ShortNameLength + ",shortName=" + ShortName + ",filename=" + Filename
- + "]";
- }
-
- internal SmbFindFileBothDirectoryInfo(Trans2FindFirst2Response enclosing)
- {
- this._enclosing = enclosing;
- }
-
- private readonly Trans2FindFirst2Response _enclosing;
- }
-
- internal int Sid;
-
- internal bool IsEndOfSearch;
-
- internal int EaErrorOffset;
-
- internal int LastNameOffset;
-
- internal int LastNameBufferIndex;
-
- internal string LastName;
-
- internal int ResumeKey;
-
- public Trans2FindFirst2Response()
- {
- Command = SmbComTransaction2;
- SubCommand = Smb.SmbComTransaction.Trans2FindFirst2;
- }
-
- internal virtual string ReadString(byte[] src, int srcIndex, int len)
- {
- string str = null;
- try
- {
- if (UseUnicode)
- {
- // should Unicode alignment be corrected for here?
- str = Runtime.GetStringForBytes(src, srcIndex, len, SmbConstants.UniEncoding);
- }
- else
- {
- if (len > 0 && src[srcIndex + len - 1] == '\0')
- {
- len--;
- }
- str = Runtime.GetStringForBytes(src, srcIndex, len, SmbConstants.OemEncoding
- );
- }
- }
- catch (UnsupportedEncodingException uee)
- {
- if (Log.Level > 1)
- {
- Runtime.PrintStackTrace(uee, Log);
- }
- }
- return str;
- }
-
- internal override int WriteSetupWireFormat(byte[] dst, int dstIndex)
- {
- return 0;
- }
-
- internal override int WriteParametersWireFormat(byte[] dst, int dstIndex)
- {
- return 0;
- }
-
- internal override int WriteDataWireFormat(byte[] dst, int dstIndex)
- {
- return 0;
- }
-
- internal override int ReadSetupWireFormat(byte[] buffer, int bufferIndex, int len
- )
- {
- return 0;
- }
-
- internal override int ReadParametersWireFormat(byte[] buffer, int bufferIndex, int
- len)
- {
- int start = bufferIndex;
- if (SubCommand == Smb.SmbComTransaction.Trans2FindFirst2)
- {
- Sid = ReadInt2(buffer, bufferIndex);
- bufferIndex += 2;
- }
- NumEntries = ReadInt2(buffer, bufferIndex);
- bufferIndex += 2;
- IsEndOfSearch = (buffer[bufferIndex] & unchecked(0x01)) == unchecked(0x01) ? true : false;
- bufferIndex += 2;
- EaErrorOffset = ReadInt2(buffer, bufferIndex);
- bufferIndex += 2;
- LastNameOffset = ReadInt2(buffer, bufferIndex);
- bufferIndex += 2;
- return bufferIndex - start;
- }
-
- internal override int ReadDataWireFormat(byte[] buffer, int bufferIndex, int len)
- {
- int start = bufferIndex;
- SmbFindFileBothDirectoryInfo e;
- LastNameBufferIndex = bufferIndex + LastNameOffset;
- Results = new SmbFindFileBothDirectoryInfo[NumEntries];
- for (int i = 0; i < NumEntries; i++)
- {
- Results[i] = e = new SmbFindFileBothDirectoryInfo(this);
- e.NextEntryOffset = ReadInt4(buffer, bufferIndex);
- e.FileIndex = ReadInt4(buffer, bufferIndex + 4);
- e.CreationTime = ReadTime(buffer, bufferIndex + 8);
- // e.lastAccessTime = readTime( buffer, bufferIndex + 16 );
- e.LastWriteTime = ReadTime(buffer, bufferIndex + 24);
- // e.changeTime = readTime( buffer, bufferIndex + 32 );
- e.EndOfFile = ReadInt8(buffer, bufferIndex + 40);
- // e.allocationSize = readInt8( buffer, bufferIndex + 48 );
- e.ExtFileAttributes = ReadInt4(buffer, bufferIndex + 56);
- e.FileNameLength = ReadInt4(buffer, bufferIndex + 60);
- // e.eaSize = readInt4( buffer, bufferIndex + 64 );
- // e.shortNameLength = buffer[bufferIndex + 68] & 0xFF;
- // e.shortName = readString( buffer, bufferIndex + 70, e.shortNameLength );
- e.Filename = ReadString(buffer, bufferIndex + 94, e.FileNameLength);
- if (LastNameBufferIndex >= bufferIndex && (e.NextEntryOffset == 0 || LastNameBufferIndex
- < (bufferIndex + e.NextEntryOffset)))
- {
- LastName = e.Filename;
- ResumeKey = e.FileIndex;
- }
- bufferIndex += e.NextEntryOffset;
- }
- //return bufferIndex - start;
- return DataCount;
- }
-
- public override string ToString()
- {
- string c;
- if (SubCommand == Smb.SmbComTransaction.Trans2FindFirst2)
- {
- c = "Trans2FindFirst2Response[";
- }
- else
- {
- c = "Trans2FindNext2Response[";
- }
- return c + base.ToString() + ",sid=" + Sid + ",searchCount=" + NumEntries
- + ",isEndOfSearch=" + IsEndOfSearch + ",eaErrorOffset=" + EaErrorOffset + ",lastNameOffset="
- + LastNameOffset + ",lastName=" + LastName + "]";
- }
- }
-}