]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
local-addresses: make returning accumulated list optional
authorLennart Poettering <lennart@poettering.net>
Fri, 6 Nov 2020 09:26:40 +0000 (10:26 +0100)
committerLennart Poettering <lennart@poettering.net>
Thu, 3 Dec 2020 22:21:53 +0000 (23:21 +0100)
src/shared/local-addresses.c

index 7be6b945f2d7165347a1a1f583da0b43d5798324..2c860f76d5d164eb4eddf59a004cda4830bed1e9 100644 (file)
@@ -41,8 +41,6 @@ int local_addresses(sd_netlink *context, int ifindex, int af, struct local_addre
         sd_netlink_message *m;
         int r;
 
-        assert(ret);
-
         if (context)
                 rtnl = sd_netlink_ref(context);
         else {
@@ -135,9 +133,10 @@ int local_addresses(sd_netlink *context, int ifindex, int af, struct local_addre
                 n_list++;
         };
 
-        typesafe_qsort(list, n_list, address_compare);
-
-        *ret = TAKE_PTR(list);
+        if (ret) {
+                typesafe_qsort(list, n_list, address_compare);
+                *ret = TAKE_PTR(list);
+        }
 
         return (int) n_list;
 }
@@ -179,8 +178,6 @@ int local_gateways(sd_netlink *context, int ifindex, int af, struct local_addres
         size_t n_list = 0, n_allocated = 0;
         int r;
 
-        assert(ret);
-
         if (context)
                 rtnl = sd_netlink_ref(context);
         else {
@@ -309,9 +306,10 @@ int local_gateways(sd_netlink *context, int ifindex, int af, struct local_addres
                 }
         }
 
-        typesafe_qsort(list, n_list, address_compare);
-
-        *ret = TAKE_PTR(list);
+        if (ret) {
+                typesafe_qsort(list, n_list, address_compare);
+                *ret = TAKE_PTR(list);
+        }
 
         return (int) n_list;
 }