#endif
typedef enum {
+ COMMAND_UNSPEC,
COMMAND_HELP,
COMMAND_VERSION,
COMMAND_RESOLVE_HOST_NAME,
static void help(FILE *f, const char *argv0) {
fprintf(f,
- "%s [options] %s <name ...>\n"
+ "%s [options] %s <host name ...>\n"
"%s [options] %s <address ... >\n\n"
" -h --help Show this help\n"
" -V --version Show version\n"
" -a --address Resolve address\n"
" -v --verbose Enable verbose mode\n"
" -6 Lookup IPv6 address\n"
- " -4 Lookup IPv4 address\n"
- ,
- argv0, strstr(argv0, "address") ? "-n" : "[-n]",
- argv0, strstr(argv0, "address") ? "[-a]" : "-a");
+ " -4 Lookup IPv4 address\n",
+ argv0, strstr(argv0, "address") ? "[-a]" : "-a",
+ argv0, strstr(argv0, "host-name") ? "[-n]" : "-n");
}
-static int parse_command_line(Config *c, int argc, char *argv[]) {
+static int parse_command_line(Config *c, const char *argv0, int argc, char *argv[]) {
int o;
static const struct option long_options[] = {
assert(c);
- c->command = strstr(argv[0], "address") ? COMMAND_RESOLVE_ADDRESS : COMMAND_RESOLVE_HOST_NAME;
+ c->command = strstr(argv0, "address") ? COMMAND_RESOLVE_ADDRESS : (strstr(argv0, "host-name") ? COMMAND_RESOLVE_HOST_NAME : COMMAND_UNSPEC);
c->proto = AVAHI_PROTO_UNSPEC;
c->verbose = 0;
else
argv0 = argv[0];
- if (parse_command_line(&config, argc, argv) < 0)
+ if (parse_command_line(&config, argv0, argc, argv) < 0)
goto fail;
switch (config.command) {
+ case COMMAND_UNSPEC:
+ ret = 1;
+ fprintf(stderr, "No command specified.\n");
+ break;
+
case COMMAND_HELP:
help(stdout, argv0);
ret = 0;
}
}
-
fail:
if (client)