diff options
Diffstat (limited to 'src/nm-types.h')
-rw-r--r-- | src/nm-types.h | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/src/nm-types.h b/src/nm-types.h index db0b944e06..fa70372c43 100644 --- a/src/nm-types.h +++ b/src/nm-types.h @@ -54,10 +54,20 @@ typedef struct _NMLldpListener NMLldpListener; typedef enum { /* In priority order; higher number == higher priority */ - NM_IP_CONFIG_SOURCE_UNKNOWN, - /* routes from platform with protocol RTPROT_KERNEL. */ - NM_IP_CONFIG_SOURCE_RTPROT_KERNEL, + NM_IP_CONFIG_SOURCE_UNKNOWN = 0, + + /* for routes, the source is mapped to the uint8 field rtm_protocol. + * Reserve the range [1,0x100] for native RTPROT values. */ + + NM_IP_CONFIG_SOURCE_RTPROT_UNSPEC = 1 + 0, + NM_IP_CONFIG_SOURCE_RTPROT_REDIRECT = 1 + 1, + NM_IP_CONFIG_SOURCE_RTPROT_KERNEL = 1 + 2, + NM_IP_CONFIG_SOURCE_RTPROT_BOOT = 1 + 3, + NM_IP_CONFIG_SOURCE_RTPROT_STATIC = 1 + 4, + NM_IP_CONFIG_SOURCE_RTPROT_RA = 1 + 9, + NM_IP_CONFIG_SOURCE_RTPROT_DHCP = 1 + 16, + _NM_IP_CONFIG_SOURCE_RTPROT_LAST = 1 + 0xFF, NM_IP_CONFIG_SOURCE_KERNEL, NM_IP_CONFIG_SOURCE_SHARED, @@ -70,6 +80,12 @@ typedef enum { NM_IP_CONFIG_SOURCE_USER, } NMIPConfigSource; +inline static gboolean +NM_IS_IP_CONFIG_SOURCE_RTPROT (NMIPConfigSource source) +{ + return source > NM_IP_CONFIG_SOURCE_UNKNOWN && source <= _NM_IP_CONFIG_SOURCE_RTPROT_LAST; +} + /* platform */ typedef struct _NMPlatform NMPlatform; typedef struct _NMPlatformIP4Address NMPlatformIP4Address; |