#include "strv.h"
#include "terminal-util.h"
-#define DNS_CALL_TIMEOUT_USEC (90*USEC_PER_SEC)
-
static int arg_family = AF_UNSPEC;
static int arg_ifindex = 0;
static uint16_t arg_type = 0;
static char **arg_set_nta = NULL;
static ServiceFamily service_family_from_string(const char *s) {
- if (s == NULL || streq(s, "tcp"))
+ if (!s || streq(s, "tcp"))
return SERVICE_FAMILY_TCP;
if (streq(s, "udp"))
return SERVICE_FAMILY_UDP;
ts = now(CLOCK_MONOTONIC);
- r = sd_bus_call(bus, req, DNS_CALL_TIMEOUT_USEC, &error, &reply);
+ r = sd_bus_call(bus, req, SD_RESOLVED_QUERY_TIMEOUT_USEC, &error, &reply);
if (r < 0)
return log_error_errno(r, "%s: resolve call failed: %s", name, bus_error_message(&error, r));
ts = now(CLOCK_MONOTONIC);
- r = sd_bus_call(bus, req, DNS_CALL_TIMEOUT_USEC, &error, &reply);
+ r = sd_bus_call(bus, req, SD_RESOLVED_QUERY_TIMEOUT_USEC, &error, &reply);
if (r < 0) {
log_error("%s: resolve call failed: %s", pretty, bus_error_message(&error, r));
return r;
ts = now(CLOCK_MONOTONIC);
- r = sd_bus_call(bus, req, DNS_CALL_TIMEOUT_USEC, &error, &reply);
+ r = sd_bus_call(bus, req, SD_RESOLVED_QUERY_TIMEOUT_USEC, &error, &reply);
if (r < 0) {
if (warn_missing || r != -ENXIO)
log_error("%s: resolve call failed: %s", name, bus_error_message(&error, r));
ts = now(CLOCK_MONOTONIC);
- r = sd_bus_call(bus, req, DNS_CALL_TIMEOUT_USEC, &error, &reply);
+ r = sd_bus_call(bus, req, SD_RESOLVED_QUERY_TIMEOUT_USEC, &error, &reply);
if (r < 0)
return log_error_errno(r, "Resolve call failed: %s", bus_error_message(&error, r));
arg_family = AF_INET6;
break;
- case 'i': {
- int ifi;
+ case 'i':
+ if (parse_ifindex(optarg, &arg_ifindex) < 0) {
+ int ifi;
- if (parse_ifindex(optarg, &ifi) >= 0)
- arg_ifindex = ifi;
- else {
ifi = if_nametoindex(optarg);
if (ifi <= 0)
return log_error_errno(errno, "Unknown interface %s: %m", optarg);
}
break;
- }
case 't':
if (streq(optarg, "help")) {
r = dns_name_is_valid(p);
if (r < 0)
return log_error_errno(r, "Failed to validate specified domain %s: %m", p);
- if (r == 0)
- return log_error_errno(r, "Domain not valid: %s", p);
+ if (r == 0) {
+ log_error("Domain not valid: %s", p);
+ return -EINVAL;
+ }
r = strv_extend(&arg_set_domain, optarg);
if (r < 0)
r = dns_name_is_valid(optarg);
if (r < 0)
return log_error_errno(r, "Failed to validate specified domain %s: %m", optarg);
- if (r == 0)
- return log_error_errno(r, "Domain not valid: %s", optarg);
+ if (r == 0) {
+ log_error("Domain not valid: %s", optarg);
+ return -EINVAL;
+ }
r = strv_extend(&arg_set_nta, optarg);
if (r < 0)
break;
-
case MODE_SET_LINK:
if (argc > optind) {
log_error("Too many arguments.");