mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 21:23:58 +01:00
config: Make parse_outbound_addresses() return failures
The function was never returning an error code on failure to parse the OutboundAddress* options. In the process, it was making our test_options_validate__outbound_addresses() not test the right thing. Fixes #23366 Signed-off-by: David Goulet <dgoulet@torproject.org>
This commit is contained in:
parent
209bfe715c
commit
651629cbdf
4
changes/bug23366
Normal file
4
changes/bug23366
Normal file
@ -0,0 +1,4 @@
|
||||
o Minor bugfixes (test):
|
||||
- Fix a broken OutboundAddress option unit test because the parsing
|
||||
function was never returning an error on failure. Fixes bug #23366.;
|
||||
bugfix on tor-0.3.0.3-alpha.
|
@ -7921,13 +7921,28 @@ parse_outbound_addresses(or_options_t *options, int validate_only, char **msg)
|
||||
memset(&options->OutboundBindAddresses, 0,
|
||||
sizeof(options->OutboundBindAddresses));
|
||||
}
|
||||
parse_outbound_address_lines(options->OutboundBindAddress,
|
||||
OUTBOUND_ADDR_EXIT_AND_OR, options, validate_only, msg);
|
||||
parse_outbound_address_lines(options->OutboundBindAddressOR,
|
||||
OUTBOUND_ADDR_OR, options, validate_only, msg);
|
||||
parse_outbound_address_lines(options->OutboundBindAddressExit,
|
||||
OUTBOUND_ADDR_EXIT, options, validate_only, msg);
|
||||
|
||||
if (parse_outbound_address_lines(options->OutboundBindAddress,
|
||||
OUTBOUND_ADDR_EXIT_AND_OR, options,
|
||||
validate_only, msg) < 0) {
|
||||
goto err;
|
||||
}
|
||||
|
||||
if (parse_outbound_address_lines(options->OutboundBindAddressOR,
|
||||
OUTBOUND_ADDR_OR, options, validate_only,
|
||||
msg) < 0) {
|
||||
goto err;
|
||||
}
|
||||
|
||||
if (parse_outbound_address_lines(options->OutboundBindAddressExit,
|
||||
OUTBOUND_ADDR_EXIT, options, validate_only,
|
||||
msg) < 0) {
|
||||
goto err;
|
||||
}
|
||||
|
||||
return 0;
|
||||
err:
|
||||
return -1;
|
||||
}
|
||||
|
||||
/** Load one of the geoip files, <a>family</a> determining which
|
||||
|
@ -528,6 +528,8 @@ test_options_validate__outbound_addresses(void *ignored)
|
||||
|
||||
ret = options_validate(tdata->old_opt, tdata->opt, tdata->def_opt, 0, &msg);
|
||||
tt_int_op(ret, OP_EQ, -1);
|
||||
tt_str_op(msg, OP_EQ, "Multiple outbound bind addresses configured: "
|
||||
"xxyy!!!sdfaf");
|
||||
|
||||
done:
|
||||
free_options_test_data(tdata);
|
||||
|
Loading…
Reference in New Issue
Block a user