svn commit: r323199 - stable/11/sys/contrib/ipfilter/netinet

Cy Schubert cy at FreeBSD.org
Wed Sep 6 01:38:03 UTC 2017


Author: cy
Date: Wed Sep  6 01:38:01 2017
New Revision: 323199
URL: https://svnweb.freebsd.org/changeset/base/323199

Log:
  MFC r322073:
  
  Fix matchcing of NATed ICMP queries (resolving NATed MTU discovery).

Modified:
  stable/11/sys/contrib/ipfilter/netinet/ip_nat.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/contrib/ipfilter/netinet/ip_nat.c
==============================================================================
--- stable/11/sys/contrib/ipfilter/netinet/ip_nat.c	Tue Sep  5 22:08:43 2017	(r323198)
+++ stable/11/sys/contrib/ipfilter/netinet/ip_nat.c	Wed Sep  6 01:38:01 2017	(r323199)
@@ -4100,13 +4100,8 @@ ipf_nat_inlookup(fin, flags, p, src, mapdst)
 		dport = htons(fin->fin_data[1]);
 		break;
 	case IPPROTO_ICMP :
-		if (flags & IPN_ICMPERR) {
-			sport = fin->fin_data[1];
-			dport = 0;
-		} else {
-			dport = fin->fin_data[1];
-			sport = 0;
-		}
+		sport = 0;
+		dport = fin->fin_data[1];
 		break;
 	default :
 		sport = 0;
@@ -4426,8 +4421,6 @@ ipf_nat_outlookup(fin, flags, p, src, dst)
 
 	ifp = fin->fin_ifp;
 	sflags = flags & IPN_TCPUDPICMP;
-	sport = 0;
-	dport = 0;
 
 	switch (p)
 	{
@@ -4437,12 +4430,12 @@ ipf_nat_outlookup(fin, flags, p, src, dst)
 		dport = htons(fin->fin_data[1]);
 		break;
 	case IPPROTO_ICMP :
-		if (flags & IPN_ICMPERR)
-			sport = fin->fin_data[1];
-		else
-			dport = fin->fin_data[1];
+		sport = 0;
+		dport = fin->fin_data[1];
 		break;
 	default :
+		sport = 0;
+		dport = 0;
 		break;
 	}
 


More information about the svn-src-all mailing list