svn commit: r322073 - head/sys/contrib/ipfilter/netinet

Cy Schubert Cy.Schubert at komquats.com
Sat Aug 5 00:35:14 UTC 2017


In message <201708050028.v750Sgsj015800 at 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.c	Fri Aug  4 23:34:39 201
> 7	(r322072)
> +++ head/sys/contrib/ipfilter/netinet/ip_nat.c	Sat 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 <Cy.Schubert at cschubert.com>
FreeBSD UNIX:  <cy at FreeBSD.org>   Web:  http://www.FreeBSD.org

	The need of the many outweighs the greed of the few.




More information about the svn-src-head mailing list