Commit f9a897a7 authored by Brickner_cp's avatar Brickner_cp

VLanTaggedFrame

parent 6cec2f16
...@@ -87,6 +87,7 @@ ...@@ -87,6 +87,7 @@
<Compile Include="WiresharkDatagramComparerSimple.cs" /> <Compile Include="WiresharkDatagramComparerSimple.cs" />
<Compile Include="WiresharkDatagramComparerTcp.cs" /> <Compile Include="WiresharkDatagramComparerTcp.cs" />
<Compile Include="WiresharkDatagramComparerUdp.cs" /> <Compile Include="WiresharkDatagramComparerUdp.cs" />
<Compile Include="WiresharkDatagramComparerVLanTaggedFrame.cs" />
<Compile Include="WiresharkStringExtensions.cs" /> <Compile Include="WiresharkStringExtensions.cs" />
<Compile Include="XElementExtensions.cs" /> <Compile Include="XElementExtensions.cs" />
<Compile Include="PacketDumpFileTests.cs" /> <Compile Include="PacketDumpFileTests.cs" />
......
...@@ -46,6 +46,9 @@ namespace PcapDotNet.Core.Test ...@@ -46,6 +46,9 @@ namespace PcapDotNet.Core.Test
case "eth": case "eth":
return new WiresharkDatagramComparerEthernet(); return new WiresharkDatagramComparerEthernet();
case "vlan":
return new WiresharkDatagramComparerVLanTaggedFrame();
case "arp": case "arp":
return new WiresharkDatagramComparerArp(); return new WiresharkDatagramComparerArp();
......
using System;
using System.Xml.Linq;
using PcapDotNet.Packets;
using PcapDotNet.Packets.VLanTaggedFrame;
namespace PcapDotNet.Core.Test
{
internal class WiresharkDatagramComparerVLanTaggedFrame : WiresharkDatagramComparerSimple
{
protected override string PropertyName
{
get { return "VLanTaggedFrame"; }
}
protected override bool CompareField(XElement field, Datagram datagram)
{
VLanTaggedFrameDatagram vLanTaggedFrameDatagram = (VLanTaggedFrameDatagram)datagram;
switch (field.Name())
{
case "vlan.priority":
field.AssertShowDecimal((byte)vLanTaggedFrameDatagram.PriorityCodePoint);
break;
case "vlan.cfi":
field.AssertShowDecimal(vLanTaggedFrameDatagram.CanonicalFormatIndicator);
break;
case "vlan.id":
field.AssertShowDecimal(vLanTaggedFrameDatagram.VLanIdentifier);
break;
case "vlan.etype":
field.AssertShowHex((ushort)vLanTaggedFrameDatagram.EtherType);
break;
default:
throw new InvalidOperationException("Invalid VLanTaggedFrame field " + field.Name());
}
field.AssertNoFields();
return true;
}
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment