In message <201708050028.v750sgsj015...@repo.freebsd.org>, Cy Schubert
writes:
> Author: cy
> Date: Sat Aug 5 00:28:42 2017
> New Revision: 322073
> URL: https://svnweb.freebsd.org/changeset/base/322073
>
> Log:
> Fix matchcing of NATed ICMP queries (resolving NATed MTU discovery).
>
> MFC after: 1 month
Obtained from: NetBSD r1.16
>
> Modified:
> head/sys/contrib/ipfilter/netinet/ip_nat.c
>
> Modified: head/sys/contrib/ipfilter/netinet/ip_nat.c
> =
> =
> --- head/sys/contrib/ipfilter/netinet/ip_nat.cFri Aug 4 23:34:39 201
> 7 (r322072)
> +++ head/sys/contrib/ipfilter/netinet/ip_nat.cSat Aug 5 00:28:42 201
> 7 (r322073)
> @@ -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;
> }
>
--
Cheers,
Cy Schubert
FreeBSD UNIX: Web: http://www.FreeBSD.org
The need of the many outweighs the greed of the few.
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"