netfilter: nf_tables: add NFT_LOGLEVEL_* enumeration and use it

This is internal, not exposed through uapi, and although it maps with
userspace LOG_*, with the introduction of LOGLEVEL_AUDIT we are
incurring in namespace pollution.

This patch adds the NFT_LOGLEVEL_ enumeration and use it from nft_log.

Fixes: 1a893b44de ("netfilter: nf_tables: Add audit support to log statement")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Acked-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Pablo Neira Ayuso
2018-06-03 12:06:57 +02:00
committed by David S. Miller
parent 3036bc4536
commit 7eced5ab5a
2 changed files with 29 additions and 7 deletions

View File

@@ -1099,9 +1099,31 @@ enum nft_log_attributes {
#define NFTA_LOG_MAX (__NFTA_LOG_MAX - 1)
/**
* LOGLEVEL_AUDIT - a pseudo log level enabling audit logging
* enum nft_log_level - nf_tables log levels
*
* @NFT_LOGLEVEL_EMERG: system is unusable
* @NFT_LOGLEVEL_ALERT: action must be taken immediately
* @NFT_LOGLEVEL_CRIT: critical conditions
* @NFT_LOGLEVEL_ERR: error conditions
* @NFT_LOGLEVEL_WARNING: warning conditions
* @NFT_LOGLEVEL_NOTICE: normal but significant condition
* @NFT_LOGLEVEL_INFO: informational
* @NFT_LOGLEVEL_DEBUG: debug-level messages
* @NFT_LOGLEVEL_AUDIT: enabling audit logging
*/
#define LOGLEVEL_AUDIT 8
enum nft_log_level {
NFT_LOGLEVEL_EMERG,
NFT_LOGLEVEL_ALERT,
NFT_LOGLEVEL_CRIT,
NFT_LOGLEVEL_ERR,
NFT_LOGLEVEL_WARNING,
NFT_LOGLEVEL_NOTICE,
NFT_LOGLEVEL_INFO,
NFT_LOGLEVEL_DEBUG,
NFT_LOGLEVEL_AUDIT,
__NFT_LOGLEVEL_MAX
};
#define NFT_LOGLEVEL_MAX (__NFT_LOGLEVEL_MAX + 1)
/**
* enum nft_queue_attributes - nf_tables queue expression netlink attributes