case DNS_TRANSACTION_ATTEMPTS_MAX_REACHED:
return sd_bus_reply_method_errorf(q->request, SD_BUS_ERROR_TIMEOUT, "All attempts to contact name servers or networks failed");
+ case DNS_TRANSACTION_INVALID_REPLY:
+ return sd_bus_reply_method_errorf(q->request, BUS_ERROR_INVALID_REPLY, "Received invalid reply");
+
case DNS_TRANSACTION_RESOURCES:
return sd_bus_reply_method_errorf(q->request, BUS_ERROR_NO_RESOURCES, "Not enough resources");
- case DNS_TRANSACTION_INVALID_REPLY:
- return sd_bus_reply_method_errorf(q->request, BUS_ERROR_INVALID_REPLY, "Received invalid reply");
+ case DNS_TRANSACTION_ABORTED:
+ return sd_bus_reply_method_errorf(q->request, BUS_ERROR_ABORTED, "Query aborted");
case DNS_TRANSACTION_FAILURE: {
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
q->request_hostname = hostname;
q->complete = bus_method_resolve_hostname_complete;
+ r = dns_query_bus_track(q, bus, message);
+ if (r < 0)
+ return r;
+
r = dns_query_go(q);
if (r < 0) {
dns_query_free(q);
memcpy(&q->request_address, d, sz);
q->complete = bus_method_resolve_address_complete;
+ r = dns_query_bus_track(q, bus, message);
+ if (r < 0)
+ return r;
+
r = dns_query_go(q);
if (r < 0) {
dns_query_free(q);
q->request_hostname = name;
q->complete = bus_method_resolve_record_complete;
+ r = dns_query_bus_track(q, bus, message);
+ if (r < 0)
+ return r;
+
r = dns_query_go(q);
if (r < 0) {
dns_query_free(q);