summaryrefslogtreecommitdiff
path: root/libnm-core/nm-libnm-core-intern/nm-libnm-core-utils.c
diff options
context:
space:
mode:
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.c30
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"),
+);