Loading changes/19965 0 → 100644 +3 −0 Original line number Diff line number Diff line o Minor bugfix (configuration): - Accept non-space whitespace characters after the severity level in the `Log` option. Fixes bug 19965; bugfix on 0.2.1.1-alpha. src/common/log.c +1 −3 Original line number Diff line number Diff line Loading @@ -1319,10 +1319,8 @@ parse_log_severity_config(const char **cfg_ptr, if (got_an_unqualified_range > 1) return -1; space = strchr(cfg, ' '); space = find_whitespace(cfg); dash = strchr(cfg, '-'); if (!space) space = strchr(cfg, '\0'); if (dash && dash < space) { sev_lo = tor_strndup(cfg, dash-cfg); sev_hi = tor_strndup(dash+1, space-(dash+1)); Loading src/test/test_config.c +28 −1 Original line number Diff line number Diff line Loading @@ -4890,6 +4890,33 @@ test_config_parse_port_config__ports__server_options(void *data) config_free_lines(config_port_valid); config_port_valid = NULL; } static void test_config_parse_log_severity(void *data) { int ret; const char *severity_log_lines[] = { "debug file /tmp/debug.log", "debug\tfile /tmp/debug.log", "[handshake]debug [~net,~mm]info notice stdout", "[handshake]debug\t[~net,~mm]info\tnotice\tstdout", NULL }; int i; log_severity_list_t *severity; (void) data; severity = tor_malloc(sizeof(log_severity_list_t)); for (i = 0; severity_log_lines[i]; i++) { memset(severity, 0, sizeof(log_severity_list_t)); ret = parse_log_severity_config(&severity_log_lines[i], severity); tt_int_op(ret, OP_EQ, 0); } done: tor_free(severity); } #define CONFIG_TEST(name, flags) \ { #name, test_config_ ## name, flags, NULL, NULL } Loading @@ -4916,6 +4943,6 @@ struct testcase_t config_tests[] = { CONFIG_TEST(parse_port_config__ports__no_ports_given, 0), CONFIG_TEST(parse_port_config__ports__server_options, 0), CONFIG_TEST(parse_port_config__ports__ports_given, 0), CONFIG_TEST(parse_log_severity, 0), END_OF_TESTCASES }; Loading
changes/19965 0 → 100644 +3 −0 Original line number Diff line number Diff line o Minor bugfix (configuration): - Accept non-space whitespace characters after the severity level in the `Log` option. Fixes bug 19965; bugfix on 0.2.1.1-alpha.
src/common/log.c +1 −3 Original line number Diff line number Diff line Loading @@ -1319,10 +1319,8 @@ parse_log_severity_config(const char **cfg_ptr, if (got_an_unqualified_range > 1) return -1; space = strchr(cfg, ' '); space = find_whitespace(cfg); dash = strchr(cfg, '-'); if (!space) space = strchr(cfg, '\0'); if (dash && dash < space) { sev_lo = tor_strndup(cfg, dash-cfg); sev_hi = tor_strndup(dash+1, space-(dash+1)); Loading
src/test/test_config.c +28 −1 Original line number Diff line number Diff line Loading @@ -4890,6 +4890,33 @@ test_config_parse_port_config__ports__server_options(void *data) config_free_lines(config_port_valid); config_port_valid = NULL; } static void test_config_parse_log_severity(void *data) { int ret; const char *severity_log_lines[] = { "debug file /tmp/debug.log", "debug\tfile /tmp/debug.log", "[handshake]debug [~net,~mm]info notice stdout", "[handshake]debug\t[~net,~mm]info\tnotice\tstdout", NULL }; int i; log_severity_list_t *severity; (void) data; severity = tor_malloc(sizeof(log_severity_list_t)); for (i = 0; severity_log_lines[i]; i++) { memset(severity, 0, sizeof(log_severity_list_t)); ret = parse_log_severity_config(&severity_log_lines[i], severity); tt_int_op(ret, OP_EQ, 0); } done: tor_free(severity); } #define CONFIG_TEST(name, flags) \ { #name, test_config_ ## name, flags, NULL, NULL } Loading @@ -4916,6 +4943,6 @@ struct testcase_t config_tests[] = { CONFIG_TEST(parse_port_config__ports__no_ports_given, 0), CONFIG_TEST(parse_port_config__ports__server_options, 0), CONFIG_TEST(parse_port_config__ports__ports_given, 0), CONFIG_TEST(parse_log_severity, 0), END_OF_TESTCASES };