summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2019-06-16 09:14:36 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2019-06-16 09:14:40 +0900
commitaa3108f6b21109425e4aa2313d2a0aa14eed5674 (patch)
tree32b8bfa858eb638f4205f4f21e9fea5d1999c8fc
parent6a1af3d4caca8f902068a97440ed31a643c2a033 (diff)
downloadsystemd-aa3108f6b21109425e4aa2313d2a0aa14eed5674.tar.gz
network: introduce link_send_changed_strv()
It will be used in later commits.
-rw-r--r--src/network/networkd-link-bus.c18
-rw-r--r--src/network/networkd-link-bus.h1
2 files changed, 13 insertions, 6 deletions
diff --git a/src/network/networkd-link-bus.c b/src/network/networkd-link-bus.c
index 0f2ffd4e86..cbd6fa3676 100644
--- a/src/network/networkd-link-bus.c
+++ b/src/network/networkd-link-bus.c
@@ -145,17 +145,15 @@ int link_object_find(sd_bus *bus, const char *path, const char *interface, void
return 1;
}
-int link_send_changed(Link *link, const char *property, ...) {
+int link_send_changed_strv(Link *link, char **properties) {
_cleanup_free_ char *p = NULL;
- char **l;
assert(link);
assert(link->manager);
+ assert(properties);
if (!link->manager->bus)
- return 0; /* replace with assert when we have kdbus */
-
- l = strv_from_stdarg_alloca(property);
+ return 0;
p = link_bus_path(link);
if (!p)
@@ -165,5 +163,13 @@ int link_send_changed(Link *link, const char *property, ...) {
link->manager->bus,
p,
"org.freedesktop.network1.Link",
- l);
+ properties);
+}
+
+int link_send_changed(Link *link, const char *property, ...) {
+ char **properties;
+
+ properties = strv_from_stdarg_alloca(property);
+
+ return link_send_changed_strv(link, properties);
}
diff --git a/src/network/networkd-link-bus.h b/src/network/networkd-link-bus.h
index 3cc3de46c6..d5e0807d9d 100644
--- a/src/network/networkd-link-bus.h
+++ b/src/network/networkd-link-bus.h
@@ -12,4 +12,5 @@ extern const sd_bus_vtable link_vtable[];
char *link_bus_path(Link *link);
int link_node_enumerator(sd_bus *bus, const char *path, void *userdata, char ***nodes, sd_bus_error *error);
int link_object_find(sd_bus *bus, const char *path, const char *interface, void *userdata, void **found, sd_bus_error *error);
+int link_send_changed_strv(Link *link, char **properties);
int link_send_changed(Link *link, const char *property, ...) _sentinel_;