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

Andrey V. Elsukov ae at FreeBSD.org
Thu Apr 14 21:52:32 UTC 2016


Author: ae
Date: Thu Apr 14 21:52:31 2016
New Revision: 298003
URL: https://svnweb.freebsd.org/changeset/base/298003

Log:
  Change the type of 'etlv' field in struct named_object to uint16_t.
  It should match with the type field in struct ipfw_obj_tlv.
  
  Obtained from:	Yandex LLC
  Sponsored by:	Yandex LLC

Modified:
  head/sys/netpfil/ipfw/ip_fw_private.h
  head/sys/netpfil/ipfw/ip_fw_sockopt.c

Modified: head/sys/netpfil/ipfw/ip_fw_private.h
==============================================================================
--- head/sys/netpfil/ipfw/ip_fw_private.h	Thu Apr 14 21:47:58 2016	(r298002)
+++ head/sys/netpfil/ipfw/ip_fw_private.h	Thu Apr 14 21:52:31 2016	(r298003)
@@ -313,9 +313,9 @@ struct named_object {
 	TAILQ_ENTRY(named_object)	nn_next;	/* namehash */
 	TAILQ_ENTRY(named_object)	nv_next;	/* valuehash */
 	char			*name;	/* object name */
-	uint8_t			subtype;	/* object subtype within class */
-	uint8_t			etlv;	/* Export TLV id */
-	uint16_t		spare[2];
+	uint16_t		etlv;	/* Export TLV id */
+	uint8_t			subtype;/* object subtype within class */
+	uint8_t			spare[3];
 	uint16_t		kidx;	/* object kernel index */
 	uint32_t		set;	/* set object belongs to */
 	uint32_t		refcnt;	/* number of references */

Modified: head/sys/netpfil/ipfw/ip_fw_sockopt.c
==============================================================================
--- head/sys/netpfil/ipfw/ip_fw_sockopt.c	Thu Apr 14 21:47:58 2016	(r298002)
+++ head/sys/netpfil/ipfw/ip_fw_sockopt.c	Thu Apr 14 21:52:31 2016	(r298003)
@@ -4063,7 +4063,8 @@ ipfw_objhash_lookup_name_type(struct nam
 	hash = ni->hash_f(ni, name, set) % ni->nn_size;
 
 	TAILQ_FOREACH(no, &ni->names[hash], nn_next) {
-		if (ni->cmp_f(no, name, set) == 0 && no->etlv == type)
+		if (ni->cmp_f(no, name, set) == 0 &&
+		    no->etlv == (uint16_t)type)
 			return (no);
 	}
 


More information about the svn-src-head mailing list