chiark / gitweb /
sd-bus: catch up with current kdbus, don't do matches on kdbus monitor connections
[elogind.git] / src / libsystemd / sd-rtnl / local-addresses.c
index 629f89697448d495138f8486d4a757d2f3956868..31bfa06066b157dcf30eee3a1800553262da4d81 100644 (file)
@@ -50,7 +50,7 @@ static int address_compare(const void *_a, const void *_b) {
         if (a->ifindex > b->ifindex)
                 return 1;
 
-        return 0;
+        return memcmp(&a->address, &b->address, FAMILY_ADDRESS_SIZE(a->family));
 }
 
 int local_addresses(sd_rtnl *context, int ifindex, int af, struct local_address **ret) {
@@ -212,13 +212,13 @@ int local_gateways(sd_rtnl *context, int ifindex, int af, struct local_address *
                         continue;
 
                 /* We only care for default routes */
-                r = sd_rtnl_message_route_get_dst_len(m, &dst_len);
+                r = sd_rtnl_message_route_get_dst_prefixlen(m, &dst_len);
                 if (r < 0)
                         return r;
                 if (dst_len != 0)
                         continue;
 
-                r = sd_rtnl_message_route_get_src_len(m, &src_len);
+                r = sd_rtnl_message_route_get_src_prefixlen(m, &src_len);
                 if (r < 0)
                         return r;
                 if (src_len != 0)