summaryrefslogtreecommitdiffstats
path: root/man/sd-bus-container-read.c
diff options
context:
space:
mode:
Diffstat (limited to 'man/sd-bus-container-read.c')
-rw-r--r--man/sd-bus-container-read.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/man/sd-bus-container-read.c b/man/sd-bus-container-read.c
new file mode 100644
index 0000000..b6c95f4
--- /dev/null
+++ b/man/sd-bus-container-read.c
@@ -0,0 +1,25 @@
+#include <stdio.h>
+
+#include <systemd/sd-bus.h>
+
+int read_strings_from_message(sd_bus_message *m) {
+ int r;
+
+ r = sd_bus_message_enter_container(m, 'a', "s");
+ if (r < 0)
+ return r;
+
+ for (;;) {
+ const char *s;
+
+ r = sd_bus_message_read(m, "s", &s);
+ if (r < 0)
+ return r;
+ if (r == 0)
+ break;
+
+ printf("%s\n", s);
+ }
+
+ return sd_bus_message_exit_container(m);
+}