From 9c34154a2b4adddf0ef81bb732e78289f7a87f06 Mon Sep 17 00:00:00 2001 From: Umut Tezduyar Lindskog Date: Wed, 10 Jun 2015 13:15:39 +0200 Subject: [PATCH] networkd: use async convenience call to set hostname --- src/network/networkd-link.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index 127bc1249ae..7841f69dab0 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -749,7 +749,6 @@ static int set_hostname_handler(sd_bus_message *m, void *userdata, sd_bus_error } int link_set_hostname(Link *link, const char *hostname) { - _cleanup_bus_message_unref_ sd_bus_message *m = NULL; int r = 0; assert(link); @@ -764,22 +763,19 @@ int link_set_hostname(Link *link, const char *hostname) { return 0; } - r = sd_bus_message_new_method_call( + r = sd_bus_call_method_async( link->manager->bus, - &m, + NULL, "org.freedesktop.hostname1", "/org/freedesktop/hostname1", "org.freedesktop.hostname1", - "SetHostname"); - if (r < 0) - return r; + "SetHostname", + set_hostname_handler, + link, + "sb", + hostname, + false); - r = sd_bus_message_append(m, "sb", hostname, false); - if (r < 0) - return r; - - r = sd_bus_call_async(link->manager->bus, NULL, m, set_hostname_handler, - link, 0); if (r < 0) return log_link_error_errno(link, r, "Could not set transient hostname: %m");