/* Generated by ./xlat/gen.sh from ./xlat/nl_netfilter_msg_types.in; do not edit. */
#if !(defined(NFNL_MSG_BATCH_BEGIN) || (defined(HAVE_DECL_NFNL_MSG_BATCH_BEGIN) && HAVE_DECL_NFNL_MSG_BATCH_BEGIN))
# define NFNL_MSG_BATCH_BEGIN 0x10
#endif
#if !(defined(NFNL_MSG_BATCH_END) || (defined(HAVE_DECL_NFNL_MSG_BATCH_END) && HAVE_DECL_NFNL_MSG_BATCH_END))
# define NFNL_MSG_BATCH_END 0x11
#endif

#ifdef IN_MPERS

# error static const struct xlat nl_netfilter_msg_types in mpers mode

#else

static
const struct xlat nl_netfilter_msg_types[] = {
 XLAT(NFNL_MSG_BATCH_BEGIN),
 XLAT(NFNL_MSG_BATCH_END),
 XLAT_END
};

#endif /* !IN_MPERS */
