Beispiel #1
0
        public bool HasMicField()
        {
            if (!AuthenticationMessageUtils.IsNTLMv2NTResponse(NtChallengeResponse))
            {
                return(false);
            }

            NTLMv2ClientChallenge challenge;

            try
            {
                challenge = new NTLMv2ClientChallenge(NtChallengeResponse, 16);
            }
            catch
            {
                return(false);
            }

            int index = challenge.AVPairs.IndexOfKey(AVPairKey.Flags);

            if (index >= 0)
            {
                byte[] value = challenge.AVPairs[index].Value;
                if (value.Length == 4)
                {
                    int flags = LittleEndianConverter.ToInt32(value, 0);
                    return((flags & 0x02) > 0);
                }
            }

            return(false);
        }
 public TransactionEntry(byte[] buffer, int offset)
 {
     AllocatedOrNextFree = LittleEndianConverter.ToUInt32(buffer, offset + 0x00);
     TransactionState    = (TransactionState)ByteReader.ReadByte(buffer, offset + 0x04);
     FirstLsn            = LittleEndianConverter.ToUInt64(buffer, offset + 0x08);
     PreviousLsn         = LittleEndianConverter.ToUInt64(buffer, offset + 0x10);
     UndoNextLsn         = LittleEndianConverter.ToUInt64(buffer, offset + 0x18);
     UndoRecords         = LittleEndianConverter.ToUInt32(buffer, offset + 0x20);
     UndoBytes           = LittleEndianConverter.ToInt32(buffer, offset + 0x24);
 }
 public Nullable <int> GetInt32Property(int rowIndex, int columnIndex)
 {
     byte[] cellValue = GetPropertyValue(rowIndex, columnIndex);
     if (cellValue == null)
     {
         return(null);
     }
     else
     {
         return(LittleEndianConverter.ToInt32(cellValue, 0));
     }
 }
 public TimeZoneRuleStructure(byte[] buffer, int offset)
 {
     MajorVersion = ByteReader.ReadByte(buffer, offset + 0);
     MinorVersion = ByteReader.ReadByte(buffer, offset + 1);
     Reserved     = LittleEndianConverter.ToUInt16(buffer, offset + 2);
     TZRuleFlags  = (TimeZoneRuleFlags)LittleEndianConverter.ToUInt16(buffer, offset + 4);
     wYear        = LittleEndianConverter.ToUInt16(buffer, offset + 6);
     // 14 unused bytes
     lBias          = LittleEndianConverter.ToInt32(buffer, offset + 22);
     lStandardBias  = LittleEndianConverter.ToInt32(buffer, offset + 26);
     lDaylightBias  = LittleEndianConverter.ToInt32(buffer, offset + 30);
     stStandardDate = new SystemTime(buffer, offset + 34);
     stDaylightDate = new SystemTime(buffer, offset + 50);
 }
        public TimeZoneStructure(byte[] buffer)
        {
            lBias         = LittleEndianConverter.ToInt32(buffer, 0);
            lStandardBias = LittleEndianConverter.ToInt32(buffer, 4);
            lDaylightBias = LittleEndianConverter.ToInt32(buffer, 8);
            ushort wStandardYear = LittleEndianConverter.ToUInt16(buffer, 12);

            stStandardDate = new SystemTime(buffer, 14);
            ushort wDaylightYear = LittleEndianConverter.ToUInt16(buffer, 30);

            stDaylightDate = new SystemTime(buffer, 32);

            if (stStandardDate.wYear != wStandardYear)
            {
                throw new InvalidPropertyException("Invalid TimeZoneStructure");
            }

            if (stDaylightDate.wYear != wDaylightYear)
            {
                throw new InvalidPropertyException("Invalid TimeZoneStructure");
            }
        }
Beispiel #6
0
 protected override int ConvertGroupToValue()
 => LittleEndianConverter.ToInt32(ToBytes());