SharpCifs.Netbios.Name.ReadWireFormat C# (CSharp) Method

ReadWireFormat() private method

private ReadWireFormat ( byte src, int srcIndex ) : int
src byte
srcIndex int
return int
		internal virtual int ReadWireFormat(byte[] src, int srcIndex)
		{
			byte[] tmp = new byte[ScopeOffset];
			int length = 15;
			for (int i = 0; i < 15; i++)
			{
				tmp[i] = unchecked((byte)(((src[srcIndex + (2 * i + 1)] & unchecked(0xFF))
					 - unchecked(0x41)) << 4));
				tmp[i] |= unchecked((byte)(((src[srcIndex + (2 * i + 2)] & unchecked(0xFF)
					) - unchecked(0x41)) & unchecked(0x0F)));
				if (tmp[i] != unchecked((byte)' '))
				{
					length = i + 1;
				}
			}
			try
			{
				name = Runtime.GetStringForBytes(tmp, 0, length, OemEncoding
					);
			}
			catch (UnsupportedEncodingException)
			{
			}
			HexCode = ((src[srcIndex + TypeOffset] & unchecked(0xFF)) - unchecked(0x41)) << 4;
			HexCode |= ((src[srcIndex + TypeOffset + 1] & unchecked(0xFF)) - unchecked(
				0x41)) & unchecked(0x0F);
			return ScopeOffset + ReadScopeWireFormat(src, srcIndex + ScopeOffset);
		}

Usage Example

Example #1
0
        internal virtual int ReadResourceRecordWireFormat(byte[] src, int srcIndex)
        {
            int start = srcIndex;
            int end;

            if ((src[srcIndex] & unchecked (0xC0)) == unchecked (0xC0))
            {
                RecordName = QuestionName;
                // label string pointer to questionName
                srcIndex += 2;
            }
            else
            {
                srcIndex += RecordName.ReadWireFormat(src, srcIndex);
            }
            RecordType  = ReadInt2(src, srcIndex);
            srcIndex   += 2;
            RecordClass = ReadInt2(src, srcIndex);
            srcIndex   += 2;
            Ttl         = ReadInt4(src, srcIndex);
            srcIndex   += 4;
            RDataLength = ReadInt2(src, srcIndex);
            srcIndex   += 2;
            AddrEntry   = new NbtAddress[RDataLength / 6];
            end         = srcIndex + RDataLength;
            for (AddrIndex = 0; srcIndex < end; AddrIndex++)
            {
                srcIndex += ReadRDataWireFormat(src, srcIndex);
            }
            return(srcIndex - start);
        }
All Usage Examples Of SharpCifs.Netbios.Name::ReadWireFormat