mirror of
git://git.code.sf.net/p/xtables-addons/xtables-addons
synced 2025-09-06 04:35:12 +02:00
64 lines
1.7 KiB
C
64 lines
1.7 KiB
C
#ifndef _XTABLES_COMPAT_H
|
|
#define _XTABLES_COMPAT_H 1
|
|
|
|
#include <linux/kernel.h>
|
|
#include <linux/version.h>
|
|
#include "compat_skbuff.h"
|
|
#include "compat_xtnu.h"
|
|
|
|
#define DEBUGP Use__pr_debug__instead
|
|
|
|
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 15, 0)
|
|
# warning Kernels below 4.15 not supported.
|
|
#endif
|
|
|
|
#if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE)
|
|
# if !defined(CONFIG_NF_CONNTRACK_MARK)
|
|
# warning You have CONFIG_NF_CONNTRACK enabled, but CONFIG_NF_CONNTRACK_MARK is not (please enable).
|
|
# endif
|
|
# include <net/netfilter/nf_conntrack.h>
|
|
#else
|
|
# warning You need CONFIG_NF_CONNTRACK.
|
|
#endif
|
|
|
|
#if !defined(NIP6) && !defined(NIP6_FMT)
|
|
# define NIP6(addr) \
|
|
ntohs((addr).s6_addr16[0]), \
|
|
ntohs((addr).s6_addr16[1]), \
|
|
ntohs((addr).s6_addr16[2]), \
|
|
ntohs((addr).s6_addr16[3]), \
|
|
ntohs((addr).s6_addr16[4]), \
|
|
ntohs((addr).s6_addr16[5]), \
|
|
ntohs((addr).s6_addr16[6]), \
|
|
ntohs((addr).s6_addr16[7])
|
|
# define NIP6_FMT "%04hx:%04hx:%04hx:%04hx:%04hx:%04hx:%04hx:%04hx"
|
|
#endif
|
|
#if !defined(NIPQUAD) && !defined(NIPQUAD_FMT)
|
|
# define NIPQUAD(addr) \
|
|
((const unsigned char *)&addr)[0], \
|
|
((const unsigned char *)&addr)[1], \
|
|
((const unsigned char *)&addr)[2], \
|
|
((const unsigned char *)&addr)[3]
|
|
# define NIPQUAD_FMT "%hhu.%hhu.%hhu.%hhu"
|
|
#endif
|
|
|
|
static inline struct net *par_net(const struct xt_action_param *par)
|
|
{
|
|
return par->state->net;
|
|
}
|
|
|
|
#ifndef NF_CT_ASSERT
|
|
# define NF_CT_ASSERT(x) WARN_ON(!(x))
|
|
#endif
|
|
|
|
#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 6, 0)
|
|
# define proc_ops file_operations
|
|
# define proc_open open
|
|
# define proc_read read
|
|
# define proc_write write
|
|
# define proc_lseek llseek
|
|
# define proc_release release
|
|
#endif
|
|
|
|
#endif /* _XTABLES_COMPAT_H */
|