//public int ExtractData(NetworkTcpSession tcpSession, NetworkHost sourceHost, NetworkHost destinationHost, IEnumerable<PacketParser.Packets.AbstractPacket> packetList) { public int ExtractData(NetworkTcpSession tcpSession, bool transferIsClientToServer, IEnumerable <PacketParser.Packets.AbstractPacket> packetList) { /* * NetworkHost sourceHost, destinationHost; * if (transferIsClientToServer) { * sourceHost = tcpSession.Flow.FiveTuple.ClientHost; * destinationHost = tcpSession.Flow.FiveTuple.ServerHost; * } * else { * sourceHost = tcpSession.Flow.FiveTuple.ServerHost; * destinationHost = tcpSession.Flow.FiveTuple.ClientHost; * }*/ foreach (Packets.AbstractPacket p in packetList) { if (p.GetType() == typeof(Packets.SshPacket)) { Packets.SshPacket sshPacket = (Packets.SshPacket)p; tcpSession.Flow.FiveTuple.ClientHost.AddNumberedExtraDetail("SSH Version", sshPacket.SshVersion); tcpSession.Flow.FiveTuple.ClientHost.AddNumberedExtraDetail("SSH Application", sshPacket.SshApplication); return(p.PacketLength); } } return(0); }
public int ExtractData(NetworkTcpSession tcpSession, NetworkHost sourceHost, NetworkHost destinationHost, IEnumerable <PacketParser.Packets.AbstractPacket> packetList) { foreach (Packets.AbstractPacket p in packetList) { if (p.GetType() == typeof(Packets.SshPacket)) { Packets.SshPacket sshPacket = (Packets.SshPacket)p; if (!sourceHost.ExtraDetailsList.ContainsKey("SSH Version")) { sourceHost.ExtraDetailsList.Add("SSH Version", sshPacket.SshVersion); } if (!sourceHost.ExtraDetailsList.ContainsKey("SSH Application")) { sourceHost.ExtraDetailsList.Add("SSH Application", sshPacket.SshApplication); } return(p.PacketLength); } } return(0); }