#include "missing_network.h"
#include "netlink-util.h"
#include "pager.h"
+#include "parse-argument.h"
#include "parse-util.h"
#include "pretty-print.h"
#include "resolvconf-compat.h"
break;
case ARG_LEGEND:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--legend=", optarg, &arg_legend);
if (r < 0)
- return log_error_errno(r, "Failed to parse --legend= argument");
-
- arg_legend = r;
+ return r;
break;
case 'p':
break;
case ARG_CNAME:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--cname=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --cname= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_CNAME, r == 0);
break;
case ARG_SERVICE_ADDRESS:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--service-address=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --service-address= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_ADDRESS, r == 0);
break;
case ARG_SERVICE_TXT:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--service-txt=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --service-txt= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_TXT, r == 0);
break;
case ARG_SEARCH:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--search=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --search argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_SEARCH, r == 0);
break;
break;
case ARG_LEGEND:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--legend=", optarg, &arg_legend);
if (r < 0)
- return log_error_errno(r, "Failed to parse --legend= argument");
-
- arg_legend = r;
+ return r;
break;
case 'p':
break;
case ARG_CNAME:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--cname=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --cname= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_CNAME, r == 0);
break;
case ARG_VALIDATE:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--validate=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --validate= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_VALIDATE, r == 0);
break;
case ARG_SYNTHESIZE:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--synthesize=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --synthesize= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_SYNTHESIZE, r == 0);
break;
case ARG_CACHE:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--cache=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --cache= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_CACHE, r == 0);
break;
case ARG_ZONE:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--zone=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --zone= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_ZONE, r == 0);
break;
case ARG_TRUST_ANCHOR:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--trust-anchor=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --trust-anchor= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_TRUST_ANCHOR, r == 0);
break;
case ARG_NETWORK:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--network=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --network= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_NETWORK, r == 0);
break;
case ARG_SERVICE_ADDRESS:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--service-address=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --service-address= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_ADDRESS, r == 0);
break;
case ARG_SERVICE_TXT:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--service-txt=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --service-txt= argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_TXT, r == 0);
break;
case ARG_SEARCH:
- r = parse_boolean(optarg);
+ r = parse_boolean_argument("--search=", optarg, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to parse --search argument.");
+ return r;
SET_FLAG(arg_flags, SD_RESOLVED_NO_SEARCH, r == 0);
break;