diff --git a/src/or/config.c b/src/or/config.c index edfa6c3e8a..cba902d00d 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -5821,7 +5821,10 @@ parse_port_config(smartlist_t *out, addrport = smartlist_get(elts, 0); if (is_unix_socket) { /* leave it as it is. */ - port = 1; + if (!strcmp(addrport, "0")) + port = 0; + else + port = 1; } else if (!strcmp(addrport, "auto")) { port = CFG_AUTO_PORT; tor_addr_parse(&addr, defaultaddr); @@ -6052,7 +6055,7 @@ parse_port_config(smartlist_t *out, warn_nonlocal_client_ports(out, portname, listener_type); } - if (!is_unix_socket && got_zero_port && got_nonzero_port) { + if (got_zero_port && got_nonzero_port) { log_warn(LD_CONFIG, "You specified a nonzero %sPort along with '%sPort 0' " "in the same configuration. Did you mean to disable %sPort or " "not?", portname, portname, portname);