1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
#include "pcaprecord.ih"
void PcapRecord::remove(PcapPacket const &packet)
{
size_t idx = 0;
for (auto &element: d_connections)
{
if (
element != 0
&&
element->source.port == packet.sourcePort()
&&
memcmp(&element->source.addr, &packet.sourceAddr(),
sizeof(struct in_addr)) == 0
)
{
imsg << "Rem #" << idx << endl;
log(element, packet.seconds(), packet.microSeconds());
delete element;
element = 0;
return;
}
++idx;
}
// cout << "FIN/ACK: no record for " <<
// packet.sourceIP().dottedDecimalAddress() <<
// " (" << packet.sourcePort() << ") to " <<
// packet.destIP().dottedDecimalAddress() <<
// " (" << packet.destPort() << ')' << endl;
}
|