network - Fix bug in redispatch after PF translation
authorMatthew Dillon <dillon@apollo.backplane.com>
Thu, 23 Sep 2010 17:11:23 +0000 (10:11 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Thu, 23 Sep 2010 17:11:23 +0000 (10:11 -0700)
commit76c4458a81ce92e4b25da4c5faba0e0a8f511906
tree7517025ccc40c541ca6f82f09e4e765e87b14ced
parentfd792fddbf3e218415e4b27ac6985c326a48a5f4
network - Fix bug in redispatch after PF translation

* ip_input() checks M_HASH after PF/firewall processing and recalculates
  the protocol port if necessary.

  ip_input() was improperly restoring ip_len when doing the re-check,
  causing TCP packets destined for the local host to be dropped.  This
  caused NAT translations with local terminations to fail.
sys/netinet/ip_input.c