diff options
Diffstat (limited to 'libnm-core/nm-libnm-core-intern/nm-libnm-core-utils.c')
-rw-r--r-- | libnm-core/nm-libnm-core-intern/nm-libnm-core-utils.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/libnm-core/nm-libnm-core-intern/nm-libnm-core-utils.c b/libnm-core/nm-libnm-core-intern/nm-libnm-core-utils.c index df2f2e7769..8d2ea09cdf 100644 --- a/libnm-core/nm-libnm-core-intern/nm-libnm-core-utils.c +++ b/libnm-core/nm-libnm-core-intern/nm-libnm-core-utils.c @@ -6,6 +6,8 @@ #include "nm-common-macros.h" +#include <linux/rtnetlink.h> + /*****************************************************************************/ gboolean @@ -178,3 +180,31 @@ nm_client_permission_result_to_string (NMClientPermissionResult permission) nm_assert_not_reached (); return NULL; } + +NM_UTILS_STRING_TABLE_LOOKUP_DEFINE ( + nm_utils_route_type_by_name, + guint8, + { nm_assert (name); }, + { return RTN_UNSPEC; }, + { "blackhole", RTN_BLACKHOLE }, + { "broadcast", RTN_BROADCAST }, + { "local", RTN_LOCAL }, + { "multicast", RTN_MULTICAST }, + { "nat", RTN_NAT }, + { "prohibit", RTN_PROHIBIT }, + { "throw", RTN_THROW }, + { "unicast", RTN_UNICAST }, + { "unreachable", RTN_UNREACHABLE }, +); + +NM_UTILS_ENUM2STR_DEFINE (nm_utils_route_type2str, guint8, + NM_UTILS_ENUM2STR (RTN_BLACKHOLE, "blackhole"), + NM_UTILS_ENUM2STR (RTN_BROADCAST, "broadcast"), + NM_UTILS_ENUM2STR (RTN_LOCAL, "local"), + NM_UTILS_ENUM2STR (RTN_MULTICAST, "multicast"), + NM_UTILS_ENUM2STR (RTN_NAT, "nat"), + NM_UTILS_ENUM2STR (RTN_PROHIBIT, "prohibit"), + NM_UTILS_ENUM2STR (RTN_THROW, "throw"), + NM_UTILS_ENUM2STR (RTN_UNICAST, "unicast"), + NM_UTILS_ENUM2STR (RTN_UNREACHABLE, "unreachable"), +); |