Let's introduce a new call bus_track_add_name_many() that adds a string list to
a tracking object.
return sd_bus_message_append(reply, "t", u);
}
#endif // 0
+
+int bus_track_add_name_many(sd_bus_track *t, char **l) {
+ int r = 0;
+ char **i;
+
+ assert(t);
+
+ /* Continues adding after failure, and returns the first failure. */
+
+ STRV_FOREACH(i, l) {
+ int k;
+
+ k = sd_bus_track_add_name(t, *i);
+ if (k < 0 && r >= 0)
+ r = k;
+ }
+
+ return r;
+}
#if 0 /// UNNEEDED by elogind
int bus_property_get_rlimit(sd_bus *bus, const char *path, const char *interface, const char *property, sd_bus_message *reply, void *userdata, sd_bus_error *error);
#endif // 0
+
+int bus_track_add_name_many(sd_bus_track *t, char **l);