Page MenuHomeFreeBSD

ipfw: fix checksum after NAT
ClosedPublic

Authored by timo.voelker_fh-muenster.de on Tue, May 19, 12:55 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Jun 9, 5:02 AM
Unknown Object (File)
Sun, Jun 7, 11:00 AM
Unknown Object (File)
Sun, Jun 7, 11:00 AM
Unknown Object (File)
Sat, Jun 6, 2:12 AM
Unknown Object (File)
Sat, Jun 6, 12:06 AM
Unknown Object (File)
Sat, Jun 6, 12:02 AM
Unknown Object (File)
Thu, Jun 4, 9:17 PM
Unknown Object (File)
Thu, Jun 4, 3:39 AM

Details

Summary

When checksum offloading is used, IPFW needs to fix the checksum after libalias has done NAT. The ipfw_nat() function does so, but only for mbufs without a receiving interface. However, if, for example, the packet was sent inside a jail that used checksum offloading over an epair, ipfw still needs to fix the checksum even though the mbuf has set a receiving interface (epair).

This patch just removes the check whether a receiving interface is set.

It fixes a bug reported here: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295057

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable