diff options
author | Thomas Haller <thaller@redhat.com> | 2015-06-25 18:44:58 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2015-06-25 20:50:55 +0200 |
commit | 85978aff7858e7c68116c05a451a4ea890949297 (patch) | |
tree | 05061dae84e5cbe2e04f24eeb19fc7875a68c774 | |
parent | 35ea2389befa7bbe6ea064e177197d32b7c1ceea (diff) |
platform: fix inverting guint8 value inet6_addr_gen_mode_inv
Fixes: e8e455817b340f60b396ba5d41425ed4de4c8554
(cherry picked from commit c2754ede5cc26a76e5804c09003c2175ef48cf6a)
-rw-r--r-- | src/platform/nm-linux-platform.c | 2 | ||||
-rw-r--r-- | src/platform/nm-platform.c | 6 | ||||
-rw-r--r-- | src/platform/nm-platform.h | 3 |
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; } |