root/include/uapi/linux/netfilter/nfnetlink.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
   2 #ifndef _UAPI_NFNETLINK_H
   3 #define _UAPI_NFNETLINK_H
   4 #include <linux/types.h>
   5 #include <linux/netfilter/nfnetlink_compat.h>
   6 
   7 enum nfnetlink_groups {
   8         NFNLGRP_NONE,
   9 #define NFNLGRP_NONE                    NFNLGRP_NONE
  10         NFNLGRP_CONNTRACK_NEW,
  11 #define NFNLGRP_CONNTRACK_NEW           NFNLGRP_CONNTRACK_NEW
  12         NFNLGRP_CONNTRACK_UPDATE,
  13 #define NFNLGRP_CONNTRACK_UPDATE        NFNLGRP_CONNTRACK_UPDATE
  14         NFNLGRP_CONNTRACK_DESTROY,
  15 #define NFNLGRP_CONNTRACK_DESTROY       NFNLGRP_CONNTRACK_DESTROY
  16         NFNLGRP_CONNTRACK_EXP_NEW,
  17 #define NFNLGRP_CONNTRACK_EXP_NEW       NFNLGRP_CONNTRACK_EXP_NEW
  18         NFNLGRP_CONNTRACK_EXP_UPDATE,
  19 #define NFNLGRP_CONNTRACK_EXP_UPDATE    NFNLGRP_CONNTRACK_EXP_UPDATE
  20         NFNLGRP_CONNTRACK_EXP_DESTROY,
  21 #define NFNLGRP_CONNTRACK_EXP_DESTROY   NFNLGRP_CONNTRACK_EXP_DESTROY
  22         NFNLGRP_NFTABLES,
  23 #define NFNLGRP_NFTABLES                NFNLGRP_NFTABLES
  24         NFNLGRP_ACCT_QUOTA,
  25 #define NFNLGRP_ACCT_QUOTA              NFNLGRP_ACCT_QUOTA
  26         NFNLGRP_NFTRACE,
  27 #define NFNLGRP_NFTRACE                 NFNLGRP_NFTRACE
  28         __NFNLGRP_MAX,
  29 };
  30 #define NFNLGRP_MAX     (__NFNLGRP_MAX - 1)
  31 
  32 /* General form of address family dependent message.
  33  */
  34 struct nfgenmsg {
  35         __u8  nfgen_family;             /* AF_xxx */
  36         __u8  version;          /* nfnetlink version */
  37         __be16    res_id;               /* resource id */
  38 };
  39 
  40 #define NFNETLINK_V0    0
  41 
  42 /* netfilter netlink message types are split in two pieces:
  43  * 8 bit subsystem, 8bit operation.
  44  */
  45 
  46 #define NFNL_SUBSYS_ID(x)       ((x & 0xff00) >> 8)
  47 #define NFNL_MSG_TYPE(x)        (x & 0x00ff)
  48 
  49 /* No enum here, otherwise __stringify() trick of MODULE_ALIAS_NFNL_SUBSYS()
  50  * won't work anymore */
  51 #define NFNL_SUBSYS_NONE                0
  52 #define NFNL_SUBSYS_CTNETLINK           1
  53 #define NFNL_SUBSYS_CTNETLINK_EXP       2
  54 #define NFNL_SUBSYS_QUEUE               3
  55 #define NFNL_SUBSYS_ULOG                4
  56 #define NFNL_SUBSYS_OSF                 5
  57 #define NFNL_SUBSYS_IPSET               6
  58 #define NFNL_SUBSYS_ACCT                7
  59 #define NFNL_SUBSYS_CTNETLINK_TIMEOUT   8
  60 #define NFNL_SUBSYS_CTHELPER            9
  61 #define NFNL_SUBSYS_NFTABLES            10
  62 #define NFNL_SUBSYS_NFT_COMPAT          11
  63 #define NFNL_SUBSYS_COUNT               12
  64 
  65 /* Reserved control nfnetlink messages */
  66 #define NFNL_MSG_BATCH_BEGIN            NLMSG_MIN_TYPE
  67 #define NFNL_MSG_BATCH_END              NLMSG_MIN_TYPE+1
  68 
  69 /**
  70  * enum nfnl_batch_attributes - nfnetlink batch netlink attributes
  71  *
  72  * @NFNL_BATCH_GENID: generation ID for this changeset (NLA_U32)
  73  */
  74 enum nfnl_batch_attributes {
  75         NFNL_BATCH_UNSPEC,
  76         NFNL_BATCH_GENID,
  77         __NFNL_BATCH_MAX
  78 };
  79 #define NFNL_BATCH_MAX                  (__NFNL_BATCH_MAX - 1)
  80 
  81 #endif /* _UAPI_NFNETLINK_H */

/* [<][>][^][v][top][bottom][index][help] */