private static void DataArrival(Object sender, RawSocket.PacketArrivedEventArgs e) { if (e.Protocol.ToUpper() == "TCP") { Console.WriteLine(e.OriginationAddress + " - " + e.OriginationPort + " - " + e.DestinationAddress + " - " + e.DestinationPort + " - " + e.Protocol + " - " + e.PacketLength + " - " + e.HeaderLength + " - " + e.IPVersion); } }
static void CSCallbackFun(IntPtr data) { PacketData p = (PacketData)Marshal.PtrToStructure(data, typeof(PacketData)); RawSocket.PacketArrivedEventArgs args = new RawSocket.PacketArrivedEventArgs(); args.MessageLength = (uint)p.length; args.Protocol = p.protocal; args.OriginationPort = p.s_port.ToString(); args.DestinationPort = p.d_port.ToString(); args.OriginationAddress = p.s_addr; args.DestinationAddress = p.d_addr; args.IPVersion = "IPv4"; DataArrival(null, args); }