]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
varlink-util: add varlink_many_notify
authorNick Rosbrook <enr0n@ubuntu.com>
Tue, 8 Oct 2024 14:19:42 +0000 (10:19 -0400)
committerNick Rosbrook <enr0n@ubuntu.com>
Mon, 27 Jan 2025 14:32:24 +0000 (09:32 -0500)
We already have varlink_many_notifyb. Just re-factor it slightly and add
a plain varlink_many_notify.

src/libsystemd/sd-varlink/varlink-util.c
src/libsystemd/sd-varlink/varlink-util.h

index 22f1a94f0b566425046068dd65d308d1dac21c14..899b8ea929fa09a61fd59b22f90cfc29cbddd60c 100644 (file)
@@ -89,6 +89,19 @@ int varlink_callb_and_log(
         return varlink_call_and_log(v, method, parameters, ret_parameters);
 }
 
+int varlink_many_notify(Set *s, sd_json_variant *parameters) {
+        sd_varlink *link;
+        int r = 1;
+
+        if (set_isempty(s))
+                return 0;
+
+        SET_FOREACH(link, s)
+                RET_GATHER(r, sd_varlink_notify(link, parameters));
+
+        return r;
+}
+
 int varlink_many_notifyb(Set *s, ...) {
         int r;
 
@@ -105,12 +118,7 @@ int varlink_many_notifyb(Set *s, ...) {
         if (r < 0)
                 return r;
 
-        r = 1;
-        sd_varlink *link;
-        SET_FOREACH(link, s)
-                RET_GATHER(r, sd_varlink_notify(link, parameters));
-
-        return r;
+        return varlink_many_notify(s, parameters);
 }
 
 int varlink_many_reply(Set *s, sd_json_variant *parameters) {
index 351f3951b07a80b2f32134cb5c167c73efd88c2d..124b16263e8f20109a46732d0b86a768266692a0 100644 (file)
@@ -13,6 +13,7 @@ int varlink_callb_and_log(sd_varlink *v, const char *method, sd_json_variant **r
 #define varlink_callbo_and_log(v, method, ret_parameters, ...)          \
         varlink_callb_and_log((v), (method), (ret_parameters), SD_JSON_BUILD_OBJECT(__VA_ARGS__))
 
+int varlink_many_notify(Set *s, sd_json_variant *parameters);
 int varlink_many_notifyb(Set *s, ...);
 #define varlink_many_notifybo(s, ...)                                   \
         varlink_many_notifyb((s), SD_JSON_BUILD_OBJECT(__VA_ARGS__))