Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 14 Apr 2016 21:52:31 +0000 (UTC)
From:      "Andrey V. Elsukov" <ae@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r298003 - head/sys/netpfil/ipfw
Message-ID:  <201604142152.u3ELqVqH054821@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
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);
 	}
 



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