svn commit: r314716 - head/sys/netpfil/ipfw

Cy Schubert Cy.Schubert at komquats.com
Mon Mar 6 00:41:38 UTC 2017


Cy Schubert writes:
> In message <201703052348.v25NmOI1032562 at repo.freebsd.org>, "Andrey V. 
> Elsukov"
> writes:
> > Author: ae
> > Date: Sun Mar  5 23:48:24 2017
> > New Revision: 314716
> > URL: https://svnweb.freebsd.org/changeset/base/314716
> > 
> > Log:
> >   Add IPv6 support to O_IP_DST_LOOKUP opcode.
> >   
> >   o check the size of O_IP_SRC_LOOKUP opcode, it can not exceed the size of
> >     ipfw_insn_u32;
> >   o rename ipfw_lookup_table_extended() function into ipfw_lookup_table() a
> nd
> >     remove old ipfw_lookup_table();
> >   o use args->f_id.flow_id6 that is in host byte order to get DSCP value;
> >   o add SCTP ports support to 'lookup src/dst-port' opcode;
> >   o add IPv6 support to 'lookup src/dst-ip' opcode.
> >   
> >   PR:		217292
> >   Reviewed by:	melifaro
> >   MFC after:	2 weeks
> >   Sponsored by:	Yandex LLC
> >   Differential Revision:	https://reviews.freebsd.org/D9873
> > 
> > Modified:
> >   head/sys/netpfil/ipfw/ip_fw2.c
> >   head/sys/netpfil/ipfw/ip_fw_private.h
> >   head/sys/netpfil/ipfw/ip_fw_sockopt.c
> >   head/sys/netpfil/ipfw/ip_fw_table.c
> 
> I seem to bad luck this week. This broke the build in a couple of places 
> next to each other. Does this look good?
> 
> Index: nat64/nat64stl.c
> ===================================================================
> --- nat64/nat64stl.c	(revision 314717)
> +++ nat64/nat64stl.c	(working copy)
> @@ -184,7 +184,7 @@
>  	 * IPv4 mapped address.
>  	 */
>  	ip6i = mtodo(m, hlen);
> -	if (ipfw_lookup_table_extended(chain, cfg->map64,
> +	if (ipfw_lookup_table(chain, cfg->map64,
>  	    sizeof(struct in6_addr), &ip6i->ip6_dst, &tablearg) == 0) {
>  		m_freem(m);
>  		return (NAT64RETURN);
> @@ -220,10 +220,10 @@
>  	switch (args->f_id.addr_type) {
>  	case 4:
>  		ret = ipfw_lookup_table(chain, cfg->map46,
> -		    htonl(args->f_id.dst_ip), &tablearg);
> +		    sizeof(dst_ip), htonl(args->f_id.dst_ip), &tablearg);

This should probably say sizeof(f_id.dst_ip).

>  		break;
>  	case 6:
> -		ret = ipfw_lookup_table_extended(chain, cfg->map64,
> +		ret = ipfw_lookup_table(chain, cfg->map64,
>  		    sizeof(struct in6_addr), &args->f_id.src_ip6, &tablearg);
>  		break;
>  	default:
> 


-- 
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