diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/charon-cmd/charon-cmd.c | 12 | ||||
-rw-r--r-- | src/charon-cmd/cmd/cmd_options.c | 2 | ||||
-rw-r--r-- | src/charon-cmd/cmd/cmd_options.h | 1 |
3 files changed, 13 insertions, 2 deletions
diff --git a/src/charon-cmd/charon-cmd.c b/src/charon-cmd/charon-cmd.c index 2d8cdce70..d35847d25 100644 --- a/src/charon-cmd/charon-cmd.c +++ b/src/charon-cmd/charon-cmd.c @@ -37,6 +37,11 @@ #include "cmd/cmd_creds.h" /** + * Default loglevel + */ +static level_t default_loglevel = LEVEL_CTRL; + +/** * Loglevel configuration */ static level_t levels[DBG_MAX]; @@ -63,7 +68,7 @@ static void dbg_stderr(debug_t group, level_t level, char *fmt, ...) { va_list args; - if (level <= 1) + if (level <= default_loglevel) { va_start(args, fmt); fprintf(stderr, "00[%N] ", debug_names, group); @@ -280,6 +285,9 @@ static void handle_arguments(int argc, char *argv[], bool simple) case CMD_OPT_VERSION: printf("%s, strongSwan %s\n", "charon-cmd", VERSION); exit(0); + case CMD_OPT_DEBUG: + default_loglevel = atoi(optarg); + continue; default: if (simple) { @@ -338,7 +346,7 @@ int main(int argc, char *argv[]) } for (group = 0; group < DBG_MAX; group++) { - levels[group] = LEVEL_CTRL; + levels[group] = default_loglevel; } charon->load_loggers(charon, levels, TRUE); diff --git a/src/charon-cmd/cmd/cmd_options.c b/src/charon-cmd/cmd/cmd_options.c index 16b6b65c1..77d549d13 100644 --- a/src/charon-cmd/cmd/cmd_options.c +++ b/src/charon-cmd/cmd/cmd_options.c @@ -28,6 +28,8 @@ cmd_option_t cmd_options[CMD_OPT_COUNT] = { "print this usage information and exit", {}}, { CMD_OPT_VERSION, "version", no_argument, "", "show version information and exit", {}}, + { CMD_OPT_DEBUG, "debug", required_argument, "level", + "set the default log level (-1..4, default: 1)", {}}, { CMD_OPT_HOST, "host", required_argument, "hostname", "DNS name or address to connect to", {}}, { CMD_OPT_IDENTITY, "identity", required_argument, "identity", diff --git a/src/charon-cmd/cmd/cmd_options.h b/src/charon-cmd/cmd/cmd_options.h index f0cf32a04..4e5ba6780 100644 --- a/src/charon-cmd/cmd/cmd_options.h +++ b/src/charon-cmd/cmd/cmd_options.h @@ -33,6 +33,7 @@ typedef enum cmd_option_type_t cmd_option_type_t; enum cmd_option_type_t { CMD_OPT_HELP, CMD_OPT_VERSION, + CMD_OPT_DEBUG, CMD_OPT_HOST, CMD_OPT_IDENTITY, CMD_OPT_REMOTE_IDENTITY, |