X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fresolve%2Fresolved-bus.c;h=fba2afcc8d7838c6366686dbb8fde1d9d7b37ce6;hb=657dbed29af59d519587aedf9f4a6ab921b0668c;hp=c6b5915853839db5f4a6f85f58253891c4fed637;hpb=da927ba997d68401563b927f92e6e40e021a8e5c;p=elogind.git diff --git a/src/resolve/resolved-bus.c b/src/resolve/resolved-bus.c index c6b591585..fba2afcc8 100644 --- a/src/resolve/resolved-bus.c +++ b/src/resolve/resolved-bus.c @@ -19,7 +19,7 @@ along with systemd; If not, see . ***/ -#include "bus-errors.h" +#include "bus-common-errors.h" #include "bus-util.h" #include "resolved-dns-domain.h" @@ -76,7 +76,7 @@ static int reply_query_state(DnsQuery *q) { rc = p; } - n = strappenda(_BUS_ERROR_DNS, rc); + n = strjoina(_BUS_ERROR_DNS, rc); sd_bus_error_setf(&error, n, "Could not resolve '%s', server or network returned error %s", name, rc); } @@ -183,7 +183,7 @@ static void bus_method_resolve_hostname_complete(DnsQuery *q) { } } - if (added <= 0) { + if (added == 0) { if (!cname) { r = sd_bus_reply_method_errorf(q->request, BUS_ERROR_NO_SUCH_RR, "'%s' does not have any RR of requested type", q->request_hostname); goto finish; @@ -220,6 +220,8 @@ static void bus_method_resolve_hostname_complete(DnsQuery *q) { added++; } + // what about the cache? + /* If we didn't find anything, then let's restart the * query, this time with the cname */ if (added <= 0) { @@ -398,7 +400,7 @@ static void bus_method_resolve_address_complete(DnsQuery *q) { } } - if (added <= 0) { + if (added == 0) { _cleanup_free_ char *ip = NULL; in_addr_to_string(q->request_family, &q->request_address, &ip); @@ -720,31 +722,23 @@ int manager_connect_bus(Manager *m) { log_debug_errno(r, "Failed to connect to bus, trying again in 5s: %m"); r = sd_event_add_time(m->event, &m->bus_retry_event_source, CLOCK_MONOTONIC, now(CLOCK_MONOTONIC) + 5*USEC_PER_SEC, 0, on_bus_retry, m); - if (r < 0) { - log_error_errno(r, "Failed to install bus reconnect time event: %m"); - return r; - } + if (r < 0) + return log_error_errno(r, "Failed to install bus reconnect time event: %m"); return 0; } r = sd_bus_add_object_vtable(m->bus, NULL, "/org/freedesktop/resolve1", "org.freedesktop.resolve1.Manager", resolve_vtable, m); - if (r < 0) { - log_error_errno(r, "Failed to register object: %m"); - return r; - } + if (r < 0) + return log_error_errno(r, "Failed to register object: %m"); r = sd_bus_request_name(m->bus, "org.freedesktop.resolve1", 0); - if (r < 0) { - log_error_errno(r, "Failed to register name: %m"); - return r; - } + if (r < 0) + return log_error_errno(r, "Failed to register name: %m"); r = sd_bus_attach_event(m->bus, m->event, 0); - if (r < 0) { - log_error_errno(r, "Failed to attach bus to event loop: %m"); - return r; - } + if (r < 0) + return log_error_errno(r, "Failed to attach bus to event loop: %m"); r = sd_bus_add_match(m->bus, &m->prepare_for_sleep_slot, "type='signal',"