/* Generated by ./xlat/gen.sh from ./xlat/rtnl_nsid_attrs.in; do not edit. */
#if !(defined(NETNSA_NSID_NOT_ASSIGNED) || (defined(HAVE_DECL_NETNSA_NSID_NOT_ASSIGNED) && HAVE_DECL_NETNSA_NSID_NOT_ASSIGNED))
# define NETNSA_NSID_NOT_ASSIGNED -1
#endif
#if !(defined(NETNSA_NONE) || (defined(HAVE_DECL_NETNSA_NONE) && HAVE_DECL_NETNSA_NONE))
# define NETNSA_NONE 0
#endif
#if !(defined(NETNSA_NSID) || (defined(HAVE_DECL_NETNSA_NSID) && HAVE_DECL_NETNSA_NSID))
# define NETNSA_NSID 1
#endif
#if !(defined(NETNSA_PID) || (defined(HAVE_DECL_NETNSA_PID) && HAVE_DECL_NETNSA_PID))
# define NETNSA_PID 2
#endif
#if !(defined(NETNSA_FD) || (defined(HAVE_DECL_NETNSA_FD) && HAVE_DECL_NETNSA_FD))
# define NETNSA_FD 3
#endif

#ifdef IN_MPERS

# error static const struct xlat rtnl_nsid_attrs in mpers mode

#else

static
const struct xlat rtnl_nsid_attrs[] = {
 XLAT(NETNSA_NSID_NOT_ASSIGNED),
 XLAT(NETNSA_NONE),
 XLAT(NETNSA_NSID),
 XLAT(NETNSA_PID),
 XLAT(NETNSA_FD),
 XLAT_END
};

#endif /* !IN_MPERS */
