summaryrefslogtreecommitdiff
path: root/src/shared/bus-map-properties.c
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2020-10-11 12:19:46 +0200
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2020-10-20 19:58:37 +0200
commitaf781878d5986127ca00831c4b524c2b62649823 (patch)
tree35759b895232a707eaf9754a8a6303f57657cd63 /src/shared/bus-map-properties.c
parent80b8c3d7fd90e1e1943873c54dafc9e3b88fca94 (diff)
downloadsystemd-af781878d5986127ca00831c4b524c2b62649823.tar.gz
resolvectl: sort domain/nta output
dns list shall not be sorted.
Diffstat (limited to 'src/shared/bus-map-properties.c')
-rw-r--r--src/shared/bus-map-properties.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/shared/bus-map-properties.c b/src/shared/bus-map-properties.c
index ab393c3952..5cc8ce222d 100644
--- a/src/shared/bus-map-properties.c
+++ b/src/shared/bus-map-properties.c
@@ -25,6 +25,23 @@ int bus_map_id128(sd_bus *bus, const char *member, sd_bus_message *m, sd_bus_err
return 0;
}
+int bus_map_strv_sort(sd_bus *bus, const char *member, sd_bus_message *m, sd_bus_error *error, void *userdata) {
+ _cleanup_strv_free_ char **l = NULL;
+ char ***p = userdata;
+ int r;
+
+ r = bus_message_read_strv_extend(m, &l);
+ if (r < 0)
+ return r;
+
+ r = strv_extend_strv(p, l, false);
+ if (r < 0)
+ return r;
+
+ strv_sort(*p);
+ return 0;
+}
+
static int map_basic(sd_bus *bus, const char *member, sd_bus_message *m, unsigned flags, sd_bus_error *error, void *userdata) {
char type;
int r;