#include <getopt.h>
#include <stdlib.h>
#include <signal.h>
+#include <locale.h>
#include <string.h>
#include <waiter/waiter.h>
#include <log/log.h>
#include <process/process.h>
#include <talloc/talloc.h>
+#include <i18n/i18n.h>
#include "discover-server.h"
#include "device-handler.h"
print_version();
printf(
"Usage: pb-discover [-a, --no-autoboot] [-h, --help] [-l, --log log-file]\n"
-" [-n, --dry-run] [-V, --version]\n");
+" [-n, --dry-run] [-v, --verbose] [-V, --version]\n");
}
/**
const char *log_file;
enum opt_value dry_run;
enum opt_value show_version;
+ enum opt_value verbose;
};
/**
{"help", no_argument, NULL, 'h'},
{"log", required_argument, NULL, 'l'},
{"dry-run", no_argument, NULL, 'n'},
+ {"verbose", no_argument, NULL, 'v'},
{"version", no_argument, NULL, 'V'},
{ NULL, 0, NULL, 0},
};
- static const char short_options[] = "ahl:nV";
+ static const char short_options[] = "ahl:nvV";
static const struct opts default_values = {
.no_autoboot = opt_no,
.log_file = "/var/log/petitboot/pb-discover.log",
.dry_run = opt_no,
+ .verbose = opt_no,
};
*opts = default_values;
case 'n':
opts->dry_run = opt_yes;
break;
+ case 'v':
+ opts->verbose = opt_yes;
+ break;
case 'V':
opts->show_version = opt_yes;
break;
struct opts opts;
FILE *log;
+ setlocale(LC_ALL, "");
+ bindtextdomain(PACKAGE, LOCALEDIR);
+ textdomain(PACKAGE);
+
if (opts_parse(&opts, argc, argv)) {
print_usage();
return EXIT_FAILURE;
}
pb_log_init(log);
+ if (opts.verbose == opt_yes)
+ pb_log_set_debug(true);
+
pb_log("--- pb-discover ---\n");
/* we look for closed sockets when we write, so ignore SIGPIPE */
if (opts.no_autoboot == opt_yes)
config_set_autoboot(false);
+ if (config_get()->lang)
+ setlocale(LC_ALL, config_get()->lang);
+
+ if (config_get()->debug)
+ pb_log_set_debug(true);
+
system_info_init(server);
handler = device_handler_init(server, waitset, opts.dry_run == opt_yes);