diff options
Diffstat (limited to 'src/opt.c')
-rw-r--r-- | src/opt.c | 13 |
1 files changed, 8 insertions, 5 deletions
@@ -9,7 +9,7 @@ #define CONFIG_OPT(default_val) { {0},0,{default_val} } -struct opt config_opts[] = { CONFIG_OPT(DEFAULT_FIFO), CONFIG_OPT(NULL), CONFIG_OPT("/tmp/naskpass.log") }; +struct opt config_opts[] = { CONFIG_OPT(DEFAULT_FIFO), CONFIG_OPT(NULL), CONFIG_OPT(NULL) }; const int opt_siz = ( sizeof(config_opts)/sizeof(config_opts[0]) ); @@ -20,7 +20,7 @@ usage(char *arg0) fprintf(stderr, " Written by %s (%s).\n", AUTHOR, AUTHOR_EMAIL); fprintf(stderr, " License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.\n\n"); fprintf(stderr, " Command:\n\t%s [args]\n", arg0); - fprintf(stderr, " Arguments:\n\t-h this\n\t-l [logfile] default: %s\n\t-f [passfifo] default: %s\n\t-c [cryptcreate]\n", GETOPT(LOG_FILE), GETOPT(FIFO_PATH)); + fprintf(stderr, " Arguments:\n\t-h this\n\t-l [logfile]\n\t-f [passfifo] default: %s\n\t-c [cryptcreate]\n", GETOPT(FIFO_PATH).str); } int @@ -28,16 +28,19 @@ parse_cmd(int argc, char **argv) { int opt; - while ((opt = getopt(argc, argv, "hf:c:")) != -1) { + while ((opt = getopt(argc, argv, "hf:c:l:")) != -1) { switch (opt) { case 'h': usage(argv[0]); return 1; case 'f': - s_OPT(FIFO_PATH, strdup(optarg)); + SETOPT_str(FIFO_PATH, strdup(optarg)); break; case 'c': - s_OPT(CRYPT_CMD, strdup(optarg)); + SETOPT_str(CRYPT_CMD, strdup(optarg)); + break; + case 'l': + SETOPT_str(LOG_FILE, strdup(optarg)); break; default: usage(argv[0]); |