/* Generated by ./xlat/gen.sh from ./xlat/routing_table_ids.in; do not edit. */
#if !(defined(RT_TABLE_UNSPEC) || (defined(HAVE_DECL_RT_TABLE_UNSPEC) && HAVE_DECL_RT_TABLE_UNSPEC))
# define RT_TABLE_UNSPEC 0
#endif
#if !(defined(RT_TABLE_COMPAT) || (defined(HAVE_DECL_RT_TABLE_COMPAT) && HAVE_DECL_RT_TABLE_COMPAT))
# define RT_TABLE_COMPAT 252
#endif
#if !(defined(RT_TABLE_DEFAULT) || (defined(HAVE_DECL_RT_TABLE_DEFAULT) && HAVE_DECL_RT_TABLE_DEFAULT))
# define RT_TABLE_DEFAULT 253
#endif
#if !(defined(RT_TABLE_MAIN) || (defined(HAVE_DECL_RT_TABLE_MAIN) && HAVE_DECL_RT_TABLE_MAIN))
# define RT_TABLE_MAIN 254
#endif
#if !(defined(RT_TABLE_LOCAL) || (defined(HAVE_DECL_RT_TABLE_LOCAL) && HAVE_DECL_RT_TABLE_LOCAL))
# define RT_TABLE_LOCAL 255
#endif

#ifndef IN_MPERS

const struct xlat routing_table_ids[] = {
 XLAT(RT_TABLE_UNSPEC),
 XLAT(RT_TABLE_COMPAT),
 XLAT(RT_TABLE_DEFAULT),
 XLAT(RT_TABLE_MAIN),
 XLAT(RT_TABLE_LOCAL),
 XLAT_END
};

#endif /* !IN_MPERS */
