]> git.ipfire.org Git - thirdparty/iptables.git/commitdiff
extensions: libebt_ip: Include kernel header
authorPhil Sutter <phil@nwl.cc>
Thu, 6 Oct 2022 13:09:32 +0000 (15:09 +0200)
committerPhil Sutter <phil@nwl.cc>
Tue, 15 Nov 2022 15:58:16 +0000 (16:58 +0100)
Update the local copy of linux/netfilter_bridge/ebt_ip.h and include it
instead of keeping the local copy of struct ebt_ip_info et al.

Signed-off-by: Phil Sutter <phil@nwl.cc>
extensions/libebt_ip.c
include/linux/netfilter_bridge/ebt_ip.h

index 51649ffb3c3057e684c96d60176ebb1c83e1390e..8413a5aa8dd57b173d4f33b03b5e500ed585e4d7 100644 (file)
 #include <netdb.h>
 #include <inttypes.h>
 #include <xtables.h>
+#include <linux/netfilter_bridge/ebt_ip.h>
 
 #include "libxt_icmp.h"
 
-#define EBT_IP_SOURCE 0x01
-#define EBT_IP_DEST 0x02
-#define EBT_IP_TOS 0x04
-#define EBT_IP_PROTO 0x08
-#define EBT_IP_SPORT 0x10
-#define EBT_IP_DPORT 0x20
-#define EBT_IP_ICMP 0x40
-#define EBT_IP_IGMP 0x80
-#define EBT_IP_MASK (EBT_IP_SOURCE | EBT_IP_DEST | EBT_IP_TOS | EBT_IP_PROTO |\
-                    EBT_IP_SPORT | EBT_IP_DPORT | EBT_IP_ICMP | EBT_IP_IGMP)
-
-struct ebt_ip_info {
-       __be32 saddr;
-       __be32 daddr;
-       __be32 smsk;
-       __be32 dmsk;
-       __u8  tos;
-       __u8  protocol;
-       __u8  bitmask;
-       __u8  invflags;
-       union {
-               __u16 sport[2];
-               __u8 icmp_type[2];
-               __u8 igmp_type[2];
-       };
-       union {
-               __u16 dport[2];
-               __u8 icmp_code[2];
-       };
-};
-
 #define IP_SOURCE      '1'
 #define IP_DEST                '2'
 #define IP_EBT_TOS     '3' /* include/bits/in.h seems to already define IP_TOS */
index c4bbc41b0ea47c576d4649262fc337f445fb0601..ae5d4d10841880f302c22ac172419394c71afd85 100644 (file)
 #define EBT_IP_PROTO 0x08
 #define EBT_IP_SPORT 0x10
 #define EBT_IP_DPORT 0x20
+#define EBT_IP_ICMP 0x40
+#define EBT_IP_IGMP 0x80
 #define EBT_IP_MASK (EBT_IP_SOURCE | EBT_IP_DEST | EBT_IP_TOS | EBT_IP_PROTO |\
EBT_IP_SPORT | EBT_IP_DPORT )
                   EBT_IP_SPORT | EBT_IP_DPORT | EBT_IP_ICMP | EBT_IP_IGMP)
 #define EBT_IP_MATCH "ip"
 
 /* the same values are used for the invflags */
@@ -37,8 +39,15 @@ struct ebt_ip_info {
        __u8  protocol;
        __u8  bitmask;
        __u8  invflags;
-       __u16 sport[2];
-       __u16 dport[2];
+       union {
+               __u16 sport[2];
+               __u8 icmp_type[2];
+               __u8 igmp_type[2];
+       };
+       union {
+               __u16 dport[2];
+               __u8 icmp_code[2];
+       };
 };
 
 #endif