Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Jan 2014 23:11:26 +0000 (UTC)
From:      "Alexander V. Chernikov" <melifaro@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r260247 - head/sys/netpfil/ipfw
Message-ID:  <201401032311.s03NBQNI095057@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: melifaro
Date: Fri Jan  3 23:11:26 2014
New Revision: 260247
URL: http://svnweb.freebsd.org/changeset/base/260247

Log:
  Use rnh_matchaddr instead of rnh_lookup for longest-prefix match.
  rnh_lookup is effectively the same as rnh_matchaddr if called with
  empy network mask.
  
  MFC after:	2 weeks

Modified:
  head/sys/netpfil/ipfw/ip_fw_table.c

Modified: head/sys/netpfil/ipfw/ip_fw_table.c
==============================================================================
--- head/sys/netpfil/ipfw/ip_fw_table.c	Fri Jan  3 22:56:23 2014	(r260246)
+++ head/sys/netpfil/ipfw/ip_fw_table.c	Fri Jan  3 23:11:26 2014	(r260247)
@@ -542,7 +542,7 @@ ipfw_lookup_table(struct ip_fw_chain *ch
 		return (0);
 	KEY_LEN(sa) = KEY_LEN_INET;
 	sa.sin_addr.s_addr = addr;
-	ent = (struct table_entry *)(rnh->rnh_lookup(&sa, NULL, rnh));
+	ent = (struct table_entry *)(rnh->rnh_matchaddr(&sa, rnh));
 	if (ent != NULL) {
 		*val = ent->value;
 		return (1);
@@ -568,7 +568,7 @@ ipfw_lookup_table_extended(struct ip_fw_
 	case IPFW_TABLE_CIDR:
 		KEY_LEN(sa6) = KEY_LEN_INET6;
 		memcpy(&sa6.sin6_addr, paddr, sizeof(struct in6_addr));
-		xent = (struct table_xentry *)(rnh->rnh_lookup(&sa6, NULL, rnh));
+		xent = (struct table_xentry *)(rnh->rnh_matchaddr(&sa6, rnh));
 		break;
 
 	case IPFW_TABLE_INTERFACE:
@@ -576,7 +576,7 @@ ipfw_lookup_table_extended(struct ip_fw_
 		    strlcpy(iface.ifname, (char *)paddr, IF_NAMESIZE) + 1;
 		/* Assume direct match */
 		/* FIXME: Add interface pattern matching */
-		xent = (struct table_xentry *)(rnh->rnh_lookup(&iface, NULL, rnh));
+		xent = (struct table_xentry *)(rnh->rnh_matchaddr(&iface, rnh));
 		break;
 
 	default:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201401032311.s03NBQNI095057>