All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Howells <dhowells@redhat.com>
To: linux-api@vger.kernel.org, linux-kbuild@vger.kernel.org
Cc: netfilter-devel@vger.kernel.org, coreteam@netfilter.org,
	linux-kernel@vger.kernel.org, dhowells@redhat.com
Subject: [PATCH 07/11] UAPI: netfilter: Fix symbol collision issues [ver #2]
Date: Thu, 06 Sep 2018 10:19:11 +0100	[thread overview]
Message-ID: <153622555128.14298.11612304975343930534.stgit@warthog.procyon.org.uk> (raw)
In-Reply-To: <153622549721.14298.8116794954073122489.stgit@warthog.procyon.org.uk>

The netfilter UAPI headers have some symbol collision issues:

 (1) "enum nfnl_acct_msg_types" is defined twice, and each definition is
     completely different.

     Fix this by renaming the one in nfnetlink_cthelper.h to be "enum
     nfnl_cthelper_types" to be consistent with the other things in that
     file.

 (2) There's a disagreement between ipt_ECN.h and ipt_ecn.h over the
     definition of various IPT_ECN_* constants, leading to an error over
     IPT_ECN_IP_MASK being substituted when being defined as an enum value
     in ipt_ecn.h if ipt_ECN.h is #included first.

     Fix this by removing the conflicting constants from ipt_ECN.h and
     including ipt_ecn.h instead.

Signed-off-by: David Howells <dhowells@redhat.com>
cc: netfilter-devel@vger.kernel.org
cc: coreteam@netfilter.org
---

 include/uapi/linux/netfilter/nfnetlink_cthelper.h |    2 +-
 include/uapi/linux/netfilter_ipv4/ipt_ECN.h       |    9 +--------
 2 files changed, 2 insertions(+), 9 deletions(-)

diff --git a/include/uapi/linux/netfilter/nfnetlink_cthelper.h b/include/uapi/linux/netfilter/nfnetlink_cthelper.h
index a13137afc429..b9313ed0c313 100644
--- a/include/uapi/linux/netfilter/nfnetlink_cthelper.h
+++ b/include/uapi/linux/netfilter/nfnetlink_cthelper.h
@@ -5,7 +5,7 @@
 #define NFCT_HELPER_STATUS_DISABLED	0
 #define NFCT_HELPER_STATUS_ENABLED	1
 
-enum nfnl_acct_msg_types {
+enum nfnl_cthelper_types {
 	NFNL_MSG_CTHELPER_NEW,
 	NFNL_MSG_CTHELPER_GET,
 	NFNL_MSG_CTHELPER_DEL,
diff --git a/include/uapi/linux/netfilter_ipv4/ipt_ECN.h b/include/uapi/linux/netfilter_ipv4/ipt_ECN.h
index e3630fd045b8..d582119ad62a 100644
--- a/include/uapi/linux/netfilter_ipv4/ipt_ECN.h
+++ b/include/uapi/linux/netfilter_ipv4/ipt_ECN.h
@@ -12,14 +12,7 @@
 
 #include <linux/types.h>
 #include <linux/netfilter/xt_DSCP.h>
-
-#define IPT_ECN_IP_MASK	(~XT_DSCP_MASK)
-
-#define IPT_ECN_OP_SET_IP	0x01	/* set ECN bits of IPv4 header */
-#define IPT_ECN_OP_SET_ECE	0x10	/* set ECE bit of TCP header */
-#define IPT_ECN_OP_SET_CWR	0x20	/* set CWR bit of TCP header */
-
-#define IPT_ECN_OP_MASK		0xce
+#include <linux/netfilter_ipv4/ipt_ecn.h>
 
 struct ipt_ECN_info {
 	__u8 operation;	/* bitset of operations */


  parent reply	other threads:[~2018-09-06  9:19 UTC|newest]

Thread overview: 127+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-06  9:18 [RFC] UAPI: Check headers by compiling all together as C++ David Howells
2018-09-06  9:18 ` David Howells
2018-09-06  9:18 ` David Howells
2018-09-06  9:18 ` David Howells
2018-09-06  9:18 ` David Howells
     [not found] ` <153622549721.14298.8116794954073122489.stgit-S6HVgzuS8uM4Awkfq6JHfwNdhmdF6hFW@public.gmane.org>
2018-09-06  9:18   ` [PATCH 01/11] UAPI: drm: Fix use of C++ keywords as structural members [ver #2] David Howells
2018-09-06  9:18     ` David Howells
2018-09-06  9:18 ` [PATCH 02/11] UAPI: keys: " David Howells
2018-09-06  9:18   ` David Howells
2018-09-06  9:18 ` [PATCH 03/11] UAPI: virtio_net: " David Howells
2018-09-06 15:02   ` Michael S. Tsirkin
2018-09-06 15:02   ` Michael S. Tsirkin
2018-09-06  9:18 ` David Howells
2018-09-06  9:18 ` [PATCH 04/11] UAPI: bcache: Fix use of embedded flexible array " David Howells
2018-09-06  9:18 ` [PATCH 05/11] UAPI: coda: Move kernel internals out of public view " David Howells
2018-09-06  9:18   ` David Howells
2018-09-06  9:19 ` [PATCH 06/11] coda: Move internal defs out of include/linux/ " David Howells
2018-09-06  9:19 ` David Howells [this message]
2018-09-10 17:32   ` [PATCH 07/11] UAPI: netfilter: Fix symbol collision issues " kbuild test robot
2018-09-10 17:32     ` kbuild test robot
2018-09-10 17:32     ` kbuild test robot
2018-09-28 13:07   ` [netfilter-core] " Pablo Neira Ayuso
2018-10-09 15:35   ` David Howells
2018-09-06  9:19 ` [PATCH 08/11] UAPI: nilfs2: Fix use of undefined byteswapping functions " David Howells
2018-09-06  9:19 ` [PATCH 09/11] UAPI: ndctl: Fix g++-unsupported initialisation in headers " David Howells
2018-09-06  9:19   ` David Howells
2018-09-06  9:19   ` David Howells
2018-09-25 20:22   ` Dan Williams
2018-09-25 20:22     ` Dan Williams
2018-09-25 20:22     ` Dan Williams
2018-09-06  9:19 ` [PATCH 10/11] UAPI: ndctl: Remove use of PAGE_SIZE " David Howells
2018-09-06  9:19   ` David Howells
2018-09-06  9:19   ` David Howells
2018-09-25 20:17   ` Dan Williams
2018-09-25 20:17     ` Dan Williams
2018-09-25 20:17     ` Dan Williams
2018-10-09 15:36   ` David Howells
2018-10-09 15:36     ` David Howells
2018-09-06  9:19 ` [PATCH 11/11] UAPI: Check headers build for C++ " David Howells
2018-09-10 16:26   ` kbuild test robot
2018-09-10 16:26     ` kbuild test robot
2018-09-10 16:26     ` kbuild test robot
2018-09-10 17:02   ` kbuild test robot
2018-09-10 17:02     ` kbuild test robot
2018-09-10 17:02     ` kbuild test robot
2018-09-14  9:10   ` Arnd Bergmann
  -- strict thread matches above, loose matches on Subject: below --
2018-09-05 15:54 [RFC] UAPI: Check headers by compiling all together as C++ David Howells
2018-09-05 15:54 ` David Howells
2018-09-05 15:54 ` David Howells
2018-09-05 15:54 ` David Howells
2018-09-05 15:54 ` David Howells
2018-09-05 15:54 ` [PATCH 01/11] UAPI: drm: Fix use of C++ keywords as structural members David Howells
2018-09-05 15:54   ` David Howells
2018-09-05 15:54 ` [PATCH 02/11] UAPI: keys: " David Howells
2018-09-05 15:54   ` David Howells
2018-09-05 15:54 ` [PATCH 03/11] UAPI: virtio_net: " David Howells
2018-09-05 16:54   ` Greg KH
2018-09-05 16:54   ` Greg KH
2018-09-05 17:15   ` David Howells
2018-09-05 17:15   ` David Howells
2018-09-05 17:35   ` Michael S. Tsirkin
2018-09-05 17:35   ` Michael S. Tsirkin
2018-09-06  7:09   ` David Howells
2018-09-06  7:09   ` David Howells
2018-09-06 14:36     ` Michael S. Tsirkin
2018-09-06 14:36     ` Michael S. Tsirkin
2018-09-05 15:54 ` David Howells
2018-09-05 15:55 ` [PATCH 04/11] UAPI: bcache: Fix use of embedded flexible array David Howells
2018-10-02 14:52   ` Jan Engelhardt
2018-10-09 15:41   ` David Howells
2018-10-09 16:54     ` Jan Engelhardt
2018-09-05 15:55 ` [PATCH 05/11] UAPI: coda: Don't use internal kernel structs in UAPI David Howells
2018-09-05 16:54   ` Jan Harkes
2018-09-05 17:12   ` Yann Droneaud
2018-09-05 17:28     ` Jan Harkes
2018-09-05 17:28       ` Jan Harkes
2018-09-05 17:24   ` David Howells
2018-09-06  7:13   ` David Howells
2018-09-06 11:52     ` Yann Droneaud
2018-09-06 12:16       ` Jan Harkes
2018-09-06 12:16         ` Jan Harkes
2018-09-06 14:53     ` David Howells
2018-09-05 15:55 ` [PATCH 06/11] UAPI: netfilter: Fix symbol collision issues David Howells
2018-09-05 15:55 ` [PATCH 07/11] UAPI: nilfs2: Fix use of undefined byteswapping functions David Howells
2018-09-05 22:20   ` Al Viro
2018-09-05 15:55 ` [PATCH 08/11] UAPI: sound: Fix use of u32 and co. in UAPI headers David Howells
2018-09-05 15:55   ` David Howells
2018-09-06  5:59   ` Takashi Sakamoto
2018-09-06  5:59     ` Takashi Sakamoto
2018-09-06  8:17   ` David Howells
2018-09-05 15:55 ` [PATCH 09/11] UAPI: ndctl: Fix g++-unsupported initialisation in headers David Howells
2018-09-05 15:55   ` David Howells
2018-09-05 15:55   ` David Howells
2018-09-05 15:55 ` [PATCH 10/11] UAPI: ndctl: Remove use of PAGE_SIZE David Howells
2018-09-05 15:55   ` David Howells
2018-09-05 15:55 ` [PATCH 11/11] UAPI: Check headers build for C++ David Howells
2018-09-05 16:55 ` [RFC] UAPI: Check headers by compiling all together as C++ Greg KH
2018-09-05 16:55 ` Greg KH
2018-09-05 16:55   ` Greg KH
2018-09-05 16:55   ` Greg KH
2018-09-05 16:55   ` Greg KH
2018-09-05 16:55   ` Greg KH
2018-09-05 17:33   ` Yann Droneaud
2018-09-05 17:33     ` Yann Droneaud
2018-09-05 17:33     ` Yann Droneaud
2018-09-05 17:33     ` Yann Droneaud
2018-09-05 17:33     ` Yann Droneaud
2018-09-05 17:42     ` Michael S. Tsirkin
2018-09-05 17:42     ` Michael S. Tsirkin
2018-09-05 17:42       ` Michael S. Tsirkin
2018-09-05 17:42       ` Michael S. Tsirkin
2018-09-05 17:42       ` Michael S. Tsirkin
2018-09-05 17:42       ` Michael S. Tsirkin
2018-09-05 17:42       ` Michael S. Tsirkin
2018-09-06  7:12     ` Yann Droneaud
2018-09-06  7:12       ` Yann Droneaud
2018-09-06  7:12       ` Yann Droneaud
2018-09-06  7:12       ` Yann Droneaud
2018-09-06  7:12       ` Yann Droneaud
2018-09-05 19:22   ` Jan Engelhardt
2018-09-05 19:22   ` Jan Engelhardt
2018-09-05 19:22     ` Jan Engelhardt
2018-09-05 19:22     ` Jan Engelhardt
2018-09-05 19:22     ` Jan Engelhardt
2018-09-05 17:50 ` David Howells
2018-09-05 17:50 ` David Howells
2018-09-05 17:50   ` David Howells

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=153622555128.14298.11612304975343930534.stgit@warthog.procyon.org.uk \
    --to=dhowells@redhat.com \
    --cc=coreteam@netfilter.org \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netfilter-devel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.