Found 4 other functions taking a
ip_hdr
argument:
NAPT for a forwarded packet. It checks weather we need NAPT and modify the packet source address and port if needed.
NAPT for an input packet. It checks weather the destination is on NAPT table and modify the packet destination address and port if needed.
Forwards an IP packet. It finds an appropriate route for the packet, decrements the TTL value of the packet, adjusts the checksum and outputs the packet on the appropriate interface.