Пример #1
0
        public void AddPacket(EQApplicationPacket Packet)
        {
            #pragma warning disable 0162

            if (DUMPPACKETS)
            {
                Debug("[OPCode: 0x" + Packet.OpCode.ToString("x") + "] [Size: " + Packet.Buffer.Length + "]");
                Debug(Utils.HexDump(Packet.Buffer));
            }

            #pragma warning restore 0162

            Packet.Locked = PermaLocked;

            PacketList.Add(Packet);
        }
Пример #2
0
        public void ProcessAppPacket(System.Net.IPAddress srcIp, System.Net.IPAddress dstIp, ushort srcPort, ushort dstPort, int InOpCode, int BufferSize, byte[] Source, int Offset, PacketDirection Direction, DateTime PacketTime)
        {
            EQApplicationPacket app = new EQApplicationPacket(srcIp, dstIp, srcPort, dstPort, InOpCode, BufferSize, Source, Offset, Direction, PacketTime);

            if (!Identified)
            {
                IdentificationStatus TempStatus = Identifier(InOpCode, BufferSize, Direction);

                if (!PermaLocked && (TempStatus > IdentificationStatus.No))
                {
                    Log("-- Permalocking to this stream.");
                    PermaLocked = true;
                }
                Identified = (TempStatus == IdentificationStatus.Yes);
            }
            AddPacket(app);
        }