summaryrefslogtreecommitdiff
path: root/src/shared
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2020-11-06 10:26:40 +0100
committerLennart Poettering <lennart@poettering.net>2020-12-03 23:21:53 +0100
commitc3a8c6aa42092d87b73a3653d96258bbfe32fd28 (patch)
tree29c5067d2502cbddb10f03ca34bd32c07866f71c /src/shared
parent6c0bacc146f1eea16f3b177a02fadf28901f9302 (diff)
downloadsystemd-c3a8c6aa42092d87b73a3653d96258bbfe32fd28.tar.gz
local-addresses: make returning accumulated list optional
Diffstat (limited to 'src/shared')
-rw-r--r--src/shared/local-addresses.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/shared/local-addresses.c b/src/shared/local-addresses.c
index 7be6b945f2..2c860f76d5 100644
--- a/src/shared/local-addresses.c
+++ b/src/shared/local-addresses.c
@@ -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;
}