Found 3 other functions taking a
ip_reassdata
argument:
Dequeues a datagram from the datagram queue. Doesn't deallocate the pbufs.
Free a datagram (struct ip_reassdata) and all its pbufs. Updates the total count of enqueued pbufs (ip_reass_pbufcount), SNMP counters and sends an ICMP time exceeded packet.
Chain a new pbuf into the pbuf list that composes the datagram. The pbuf list will grow over time as new pbufs are rx. Also checks that the datagram passes basic continuity checks (if the last fragment was received at least once).