1 #ifndef _UAPI_NFNL_ACCT_H_ 2 #define _UAPI_NFNL_ACCT_H_ 3 4 #ifndef NFACCT_NAME_MAX 5 #define NFACCT_NAME_MAX 32 6 #endif 7 8 enum nfnl_acct_msg_types { 9 NFNL_MSG_ACCT_NEW, 10 NFNL_MSG_ACCT_GET, 11 NFNL_MSG_ACCT_GET_CTRZERO, 12 NFNL_MSG_ACCT_DEL, 13 NFNL_MSG_ACCT_OVERQUOTA, 14 NFNL_MSG_ACCT_MAX 15 }; 16 17 enum nfnl_acct_flags { 18 NFACCT_F_QUOTA_PKTS = (1 << 0), 19 NFACCT_F_QUOTA_BYTES = (1 << 1), 20 NFACCT_F_OVERQUOTA = (1 << 2), /* can't be set from userspace */ 21 }; 22 23 enum nfnl_acct_type { 24 NFACCT_UNSPEC, 25 NFACCT_NAME, 26 NFACCT_PKTS, 27 NFACCT_BYTES, 28 NFACCT_USE, 29 NFACCT_FLAGS, 30 NFACCT_QUOTA, 31 NFACCT_FILTER, 32 __NFACCT_MAX 33 }; 34 #define NFACCT_MAX (__NFACCT_MAX - 1) 35 36 enum nfnl_attr_filter_type { 37 NFACCT_FILTER_UNSPEC, 38 NFACCT_FILTER_MASK, 39 NFACCT_FILTER_VALUE, 40 __NFACCT_FILTER_MAX 41 }; 42 #define NFACCT_FILTER_MAX (__NFACCT_FILTER_MAX - 1) 43 44 #endif /* _UAPI_NFNL_ACCT_H_ */ 45