summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2015-06-25 18:44:58 +0200
committerThomas Haller <thaller@redhat.com>2015-06-25 20:50:55 +0200
commit85978aff7858e7c68116c05a451a4ea890949297 (patch)
tree05061dae84e5cbe2e04f24eeb19fc7875a68c774
parent35ea2389befa7bbe6ea064e177197d32b7c1ceea (diff)
platform: fix inverting guint8 value inet6_addr_gen_mode_inv
-rw-r--r--src/platform/nm-linux-platform.c2
-rw-r--r--src/platform/nm-platform.c6
-rw-r--r--src/platform/nm-platform.h3
3 files changed, 6 insertions, 5 deletions
diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
index 3cce4add3c..bba8af8731 100644
--- a/src/platform/nm-linux-platform.c
+++ b/src/platform/nm-linux-platform.c
@@ -1019,7 +1019,7 @@ _nmp_vt_cmd_plobj_init_from_nl_link (NMPlatform *platform, NMPlatformObject *_ob
guint8 mode = 0;
if (rtnl_link_inet6_get_addr_gen_mode (nlo, &mode) == 0)
- obj->inet6_addr_gen_mode_inv = ~mode;
+ obj->inet6_addr_gen_mode_inv = _nm_platform_uint8_inv (mode);
}
#endif
diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c
index 06c102d87e..43647acfa0 100644
--- a/src/platform/nm-platform.c
+++ b/src/platform/nm-platform.c
@@ -930,7 +930,7 @@ nm_platform_link_get_user_ipv6ll_enabled (NMPlatform *self, int ifindex)
pllink = nm_platform_link_get (self, ifindex);
if (pllink && pllink->inet6_addr_gen_mode_inv)
- return (~pllink->inet6_addr_gen_mode_inv) == IN6_ADDR_GEN_MODE_NONE;
+ return _nm_platform_uint8_inv (pllink->inet6_addr_gen_mode_inv) == IN6_ADDR_GEN_MODE_NONE;
}
#endif
return FALSE;
@@ -2442,7 +2442,7 @@ nm_platform_link_to_string (const NMPlatformLink *link)
str_vlan[0] = '\0';
if (link->inet6_addr_gen_mode_inv) {
- switch ((guint8) ~link->inet6_addr_gen_mode_inv) {
+ switch (_nm_platform_uint8_inv (link->inet6_addr_gen_mode_inv)) {
case 0:
g_snprintf (str_addrmode, sizeof (str_addrmode), " addrgenmode eui64");
break;
@@ -2450,7 +2450,7 @@ nm_platform_link_to_string (const NMPlatformLink *link)
g_snprintf (str_addrmode, sizeof (str_addrmode), " addrgenmode none");
break;
default:
- g_snprintf (str_addrmode, sizeof (str_addrmode), " addrgenmode %d", (int) (guint8) (~link->inet6_addr_gen_mode_inv));
+ g_snprintf (str_addrmode, sizeof (str_addrmode), " addrgenmode %d", _nm_platform_uint8_inv (link->inet6_addr_gen_mode_inv));
break;
}
} else
diff --git a/src/platform/nm-platform.h b/src/platform/nm-platform.h
index c5a5fa1cbf..4ad30b7de1 100644
--- a/src/platform/nm-platform.h
+++ b/src/platform/nm-platform.h
@@ -570,8 +570,9 @@ NMPlatform *nm_platform_try_get (void);
*
* Returns: the bitwise inverse of the route scope.
* */
+#define nm_platform_route_scope_inv _nm_platform_uint8_inv
static inline guint8
-nm_platform_route_scope_inv (guint8 scope)
+_nm_platform_uint8_inv (guint8 scope)
{
return (guint8) ~scope;
}