コード例 #1
0
ファイル: IPv6PacketTest.cs プロジェクト: haufes/packetnet
        public void IPv6PacketTestParsing(String pcapPath, LinkLayers linkLayer)
        {
            var        dev = new CaptureFileReaderDevice(pcapPath);
            PcapPacket p;

            using (FileStream fsin = File.Open(pcapPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
            {
                PcapStream ps = new PcapStream();
                ps.Initialize(fsin);
                p = ps.GetPacket();


                Int32 packetIndex = 0;
                while (p != null)
                {
                    switch (packetIndex)
                    {
                    case 0:
                        VerifyPacket0(p.Packet, linkLayer);
                        break;

                    default:
                        Assert.Fail("didn't expect to get to packetIndex " + packetIndex);
                        break;
                    }

                    packetIndex++;
                    p = ps.GetPacket();
                }
            }
        }
コード例 #2
0
        public void ICMPv4Parsing(String pcapPath, LinkLayers linkLayer)
        {
            Packet p;

            using (FileStream fsin = File.Open(pcapPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
            {
                PcapStream ps = new PcapStream();
                ps.Initialize(fsin);
                p = ps.GetPacket().Packet;
            }

            Assert.IsNotNull(p);

            var icmp = (ICMPv4Packet)p.Extract(typeof(ICMPv4Packet));

            Console.WriteLine(icmp.GetType());

            Assert.AreEqual(ICMPv4TypeCodes.EchoRequest, icmp.TypeCode);
            Assert.AreEqual(0xe05b, icmp.Checksum);
            Assert.AreEqual(0x0200, icmp.ID);
            Assert.AreEqual(0x6b00, icmp.Sequence);

            // check that the message matches
            String expectedString = "abcdefghijklmnopqrstuvwabcdefghi";

            Byte[] expectedData = System.Text.ASCIIEncoding.ASCII.GetBytes(expectedString);
            Assert.AreEqual(expectedData, icmp.Data);
        }