mirror of
https://github.com/zeek/zeek.git
synced 2025-10-16 05:28:20 +00:00
GH-1186: Remove Packet::hdr_size and uses of it.
This change also removes Packet::IP(), since Packet now contains an ip_hdr member that points at the IP header if it exists.
This commit is contained in:
parent
8337b4cf2d
commit
b3eb63c48a
10 changed files with 36 additions and 69 deletions
|
@ -81,11 +81,10 @@ void NetSessions::NextPacket(double t, Packet* pkt)
|
|||
packet_mgr->ProcessPacket(pkt);
|
||||
}
|
||||
|
||||
void NetSessions::DoNextPacket(double t, const Packet* pkt)
|
||||
void NetSessions::ProcessTransportLayer(double t, const Packet* pkt, size_t remaining)
|
||||
{
|
||||
const std::unique_ptr<IP_Hdr>& ip_hdr = pkt->ip_hdr;
|
||||
|
||||
uint32_t caplen = pkt->cap_len - pkt->hdr_size;
|
||||
uint32_t len = ip_hdr->TotalLen();
|
||||
uint16_t ip_hdr_len = ip_hdr->HdrLen();
|
||||
|
||||
|
@ -95,18 +94,11 @@ void NetSessions::DoNextPacket(double t, const Packet* pkt)
|
|||
return;
|
||||
}
|
||||
|
||||
if ( caplen < ip_hdr_len )
|
||||
{
|
||||
sessions->Weird("truncated_IP", pkt);
|
||||
return;
|
||||
}
|
||||
|
||||
len -= ip_hdr_len; // remove IP header
|
||||
caplen -= ip_hdr_len; // remove IP header
|
||||
|
||||
int proto = ip_hdr->NextProto();
|
||||
|
||||
if ( CheckHeaderTrunc(proto, len, caplen, pkt) )
|
||||
if ( CheckHeaderTrunc(proto, len, remaining, pkt) )
|
||||
return;
|
||||
|
||||
const u_char* data = ip_hdr->Payload();
|
||||
|
@ -232,7 +224,7 @@ void NetSessions::DoNextPacket(double t, const Packet* pkt)
|
|||
conn->EnqueueEvent(new_packet, nullptr, conn->ConnVal(), pkt_hdr_val ?
|
||||
std::move(pkt_hdr_val) : ip_hdr->ToPktHdrVal());
|
||||
|
||||
conn->NextPacket(t, is_orig, ip_hdr.get(), len, caplen, data,
|
||||
conn->NextPacket(t, is_orig, ip_hdr.get(), len, remaining, data,
|
||||
record_packet, record_content, pkt);
|
||||
|
||||
// We skip this block for reassembled packets because the pointer
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue