public IcmpPacket(MemBlock Packet) { if(Packet.Length < 4) { throw new Exception("Icmp: Not long enough!"); } _icpacket = Packet; _packet = Packet; Type = (Types) Packet[0]; Code = Packet[1]; if(Packet.Length >= 8) { Identifier = NumberSerializer.ReadShort(Packet, 4); SequenceNumber = NumberSerializer.ReadShort(Packet, 6); } else { Identifier = 0; SequenceNumber = 0; } } }