svn commit: r351479 - in stable: 11/sys/contrib/ipfilter/netinet 12/sys/contrib/ipfilter/netinet

Cy Schubert cy at FreeBSD.org
Sun Aug 25 13:36:21 UTC 2019


Author: cy
Date: Sun Aug 25 13:36:20 2019
New Revision: 351479
URL: https://svnweb.freebsd.org/changeset/base/351479

Log:
  MFC r350881:
  
  Calculate the number interface array elements using the new FR_NUM macro
  instead of the hard-coded value of 4. This is a precursor to increasing
  the number of interfaces speficied in "on {interface, ..., interface}".
  Note that though this feature is coded in ipf_y.y, it is partially
  supported in the ipfilter kld, meaning it does not work yet (and is yet
  to be documented in ipf.5 too).

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

Changes in other areas also in this revision:
Modified:
  stable/12/sys/contrib/ipfilter/netinet/fil.c
  stable/12/sys/contrib/ipfilter/netinet/ip_state.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/sys/contrib/ipfilter/netinet/fil.c
==============================================================================
--- stable/11/sys/contrib/ipfilter/netinet/fil.c	Sun Aug 25 13:26:06 2019	(r351478)
+++ stable/11/sys/contrib/ipfilter/netinet/fil.c	Sun Aug 25 13:36:20 2019	(r351479)
@@ -4023,7 +4023,7 @@ ipf_synclist(softc, fr, ifp)
 		/*
 		 * Lookup all the interface names that are part of the rule.
 		 */
-		for (i = 0; i < 4; i++) {
+		for (i = 0; i < FR_NUM(fr->fr_ifas); i++) {
 			if ((ifp != NULL) && (fr->fr_ifas[i] != ifp))
 				continue;
 			if (fr->fr_ifnames[i] == -1)

Modified: stable/11/sys/contrib/ipfilter/netinet/ip_state.c
==============================================================================
--- stable/11/sys/contrib/ipfilter/netinet/ip_state.c	Sun Aug 25 13:26:06 2019	(r351478)
+++ stable/11/sys/contrib/ipfilter/netinet/ip_state.c	Sun Aug 25 13:36:20 2019	(r351479)
@@ -975,7 +975,7 @@ ipf_state_putent(softc, softs, data)
 		/*
 		 * Look up all the interface names in the rule.
 		 */
-		for (i = 0; i < 4; i++) {
+		for (i = 0; i < FR_NUM(fr->fr_ifnames); i++) {
 			if (fr->fr_ifnames[i] == -1) {
 				fr->fr_ifas[i] = NULL;
 				continue;
@@ -985,7 +985,7 @@ ipf_state_putent(softc, softs, data)
 							fr->fr_family);
 		}
 
-		for (i = 0; i < 4; i++) {
+		for (i = 0; i < FR_NUM(isn->is_ifname); i++) {
 			name = isn->is_ifname[i];
 			isn->is_ifp[i] = ipf_resolvenic(softc, name,
 							isn->is_v);
@@ -1076,7 +1076,7 @@ ipf_state_insert(softc, is, rev)
 	/*
 	 * Look up all the interface names in the state entry.
 	 */
-	for (i = 0; i < 4; i++) {
+	for (i = 0; i < FR_NUM(is->is_ifp); i++) {
 		if (is->is_ifp[i] != NULL)
 			continue;
 		is->is_ifp[i] = ipf_resolvenic(softc, is->is_ifname[i],
@@ -3574,7 +3574,7 @@ ipf_state_sync(softc, ifp)
 		/*
 		 * Look up all the interface names in the state entry.
 		 */
-		for (i = 0; i < 4; i++) {
+		for (i = 0; i < FR_NUM(is->is_ifp); i++) {
 			if (ifp == NULL || ifp == is->is_ifp[i])
 				is->is_ifp[i] = ipf_resolvenic(softc,
 							      is->is_ifname[i],


More information about the svn-src-all mailing list