本文整理汇总了C#中Microsoft.Protocols.TestTools.StackSdk.FileAccessService.Cifs.CifsServerPerConnection.GenerateUID方法的典型用法代码示例。如果您正苦于以下问题:C# CifsServerPerConnection.GenerateUID方法的具体用法?C# CifsServerPerConnection.GenerateUID怎么用?C# CifsServerPerConnection.GenerateUID使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Protocols.TestTools.StackSdk.FileAccessService.Cifs.CifsServerPerConnection
的用法示例。
在下文中一共展示了CifsServerPerConnection.GenerateUID方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateSessionSetupAndxResponse
public SmbSessionSetupAndxResponsePacket CreateSessionSetupAndxResponse(
CifsServerPerConnection connection,
SmbSessionSetupAndxRequestPacket request,
ActionValues action,
SmbPacket andxPacket)
{
SmbSessionSetupAndxResponsePacket response = new SmbSessionSetupAndxResponsePacket();
SmbHeader smbHeader = CifsMessageUtils.CreateSmbHeader(connection, request);
smbHeader.Uid = connection.GenerateUID();
response.SmbHeader = smbHeader;
bool isUnicode = (response.SmbHeader.Flags2 & SmbFlags2.SMB_FLAGS2_UNICODE)
== SmbFlags2.SMB_FLAGS2_UNICODE;
byte[] oS = CifsMessageUtils.ToSmbStringBytes(CifsMessageUtils.NATIVE_OS, isUnicode);
byte[] lanMan = CifsMessageUtils.ToSmbStringBytes(CifsMessageUtils.NATIVE_LANMAN, isUnicode);
byte[] domain = CifsMessageUtils.ToSmbStringBytes(this.context.DomainName, isUnicode);
int padOffset = Marshal.SizeOf(response.SmbParameters) + sizeof(ushort);
SMB_COM_SESSION_SETUP_ANDX_Response_SMB_Data smbData = response.SmbData;
smbData.Pad = new byte[(padOffset + 3) & ~3];
smbData.NativeOS = oS;
smbData.NativeLanMan = lanMan;
smbData.PrimaryDomain = domain;
smbData.ByteCount = (ushort)(((padOffset + 3) & ~3) + oS.Length + lanMan.Length + domain.Length);
response.SmbData = smbData;
SMB_COM_SESSION_SETUP_ANDX_Response_SMB_Parameters smbParameters = response.SmbParameters;
smbParameters.AndXCommand =
andxPacket != null ? andxPacket.SmbHeader.Command : SmbCommand.SMB_COM_NO_ANDX_COMMAND;
smbParameters.AndXReserved = 0x00;
smbParameters.AndXOffset = (ushort)(response.HeaderSize + Marshal.SizeOf(response.SmbParameters)
+ Marshal.SizeOf(response.SmbData));
smbParameters.Action = action;
smbParameters.WordCount = (byte)(TypeMarshal.GetBlockMemorySize(smbParameters) / 2);
response.SmbParameters = smbParameters;
response.AndxPacket = andxPacket;
response.UpdateHeader();
return response;
}