mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-24 04:13:28 +01:00
Merge remote-tracking branch 'origin/maint-0.2.5'
This commit is contained in:
commit
7b51667d63
7
changes/bug14142-parse-virtual-addr
Normal file
7
changes/bug14142-parse-virtual-addr
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
o Minor bugfixes (client):
|
||||||
|
- Check for a missing option value in parse_virtual_addr_network
|
||||||
|
before asserting on the NULL in tor_addr_parse_mask_ports.
|
||||||
|
This avoids crashing on torrc lines like
|
||||||
|
Vi[rtualAddrNetworkIPv[4|6]] when no value follows the option.
|
||||||
|
Bugfix on 0.2.3 (de4cc126cbb5 on 24 November 2012), fixes #14142.
|
||||||
|
Patch by "teor".
|
@ -744,6 +744,12 @@ parse_virtual_addr_network(const char *val, sa_family_t family,
|
|||||||
const int max_bits = ipv6 ? 40 : 16;
|
const int max_bits = ipv6 ? 40 : 16;
|
||||||
virtual_addr_conf_t *conf = ipv6 ? &virtaddr_conf_ipv6 : &virtaddr_conf_ipv4;
|
virtual_addr_conf_t *conf = ipv6 ? &virtaddr_conf_ipv6 : &virtaddr_conf_ipv4;
|
||||||
|
|
||||||
|
if (!val || val[0] == '\0') {
|
||||||
|
if (msg)
|
||||||
|
tor_asprintf(msg, "Value not present (%s) after VirtualAddressNetwork%s",
|
||||||
|
val?"Empty":"NULL", ipv6?"IPv6":"");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
if (tor_addr_parse_mask_ports(val, 0, &addr, &bits, NULL, NULL) < 0) {
|
if (tor_addr_parse_mask_ports(val, 0, &addr, &bits, NULL, NULL) < 0) {
|
||||||
if (msg)
|
if (msg)
|
||||||
tor_asprintf(msg, "Error parsing VirtualAddressNetwork%s %s",
|
tor_asprintf(msg, "Error parsing VirtualAddressNetwork%s %s",
|
||||||
|
Loading…
Reference in New Issue
Block a user