|
@@ -790,7 +790,8 @@ parse_smethod_line(const char *line, managed_proxy_t *mp)
|
|
|
char *method_name=NULL;
|
|
|
|
|
|
char *addrport=NULL;
|
|
|
- tor_addr_t addr;
|
|
|
+ tor_addr_t tor_addr;
|
|
|
+ char *address=NULL;
|
|
|
uint16_t port = 0;
|
|
|
|
|
|
transport_t *transport=NULL;
|
|
@@ -814,7 +815,7 @@ parse_smethod_line(const char *line, managed_proxy_t *mp)
|
|
|
}
|
|
|
|
|
|
addrport = smartlist_get(items, 2);
|
|
|
- if (tor_addr_port_lookup(addrport, &addr, &port)<0) {
|
|
|
+ if (tor_addr_port_split(LOG_PROTOCOL_WARN, addrport, &address, &port)<0) {
|
|
|
log_warn(LD_CONFIG, "Error parsing transport "
|
|
|
"address '%s'", addrport);
|
|
|
goto err;
|
|
@@ -826,7 +827,12 @@ parse_smethod_line(const char *line, managed_proxy_t *mp)
|
|
|
goto err;
|
|
|
}
|
|
|
|
|
|
- transport = transport_new(&addr, port, method_name, PROXY_NONE);
|
|
|
+ if (tor_addr_parse(&tor_addr, address) < 0) {
|
|
|
+ log_warn(LD_CONFIG, "Error parsing transport address '%s'", address);
|
|
|
+ goto err;
|
|
|
+ }
|
|
|
+
|
|
|
+ transport = transport_new(&tor_addr, port, method_name, PROXY_NONE);
|
|
|
if (!transport)
|
|
|
goto err;
|
|
|
|
|
@@ -835,7 +841,7 @@ parse_smethod_line(const char *line, managed_proxy_t *mp)
|
|
|
/* For now, notify the user so that he knows where the server
|
|
|
transport is listening. */
|
|
|
log_info(LD_CONFIG, "Server transport %s at %s:%d.",
|
|
|
- method_name, fmt_addr(&addr), (int)port);
|
|
|
+ method_name, address, (int)port);
|
|
|
|
|
|
r=0;
|
|
|
goto done;
|
|
@@ -846,6 +852,7 @@ parse_smethod_line(const char *line, managed_proxy_t *mp)
|
|
|
done:
|
|
|
SMARTLIST_FOREACH(items, char*, s, tor_free(s));
|
|
|
smartlist_free(items);
|
|
|
+ tor_free(address);
|
|
|
return r;
|
|
|
}
|
|
|
|
|
@@ -863,7 +870,8 @@ parse_cmethod_line(const char *line, managed_proxy_t *mp)
|
|
|
int socks_ver=PROXY_NONE;
|
|
|
|
|
|
char *addrport=NULL;
|
|
|
- tor_addr_t addr;
|
|
|
+ tor_addr_t tor_addr;
|
|
|
+ char *address=NULL;
|
|
|
uint16_t port = 0;
|
|
|
|
|
|
transport_t *transport=NULL;
|
|
@@ -899,7 +907,7 @@ parse_cmethod_line(const char *line, managed_proxy_t *mp)
|
|
|
}
|
|
|
|
|
|
addrport = smartlist_get(items, 3);
|
|
|
- if (tor_addr_port_lookup(addrport, &addr, &port)<0) {
|
|
|
+ if (tor_addr_port_split(LOG_PROTOCOL_WARN, addrport, &address, &port)<0) {
|
|
|
log_warn(LD_CONFIG, "Error parsing transport "
|
|
|
"address '%s'", addrport);
|
|
|
goto err;
|
|
@@ -911,7 +919,12 @@ parse_cmethod_line(const char *line, managed_proxy_t *mp)
|
|
|
goto err;
|
|
|
}
|
|
|
|
|
|
- transport = transport_new(&addr, port, method_name, socks_ver);
|
|
|
+ if (tor_addr_parse(&tor_addr, address) < 0) {
|
|
|
+ log_warn(LD_CONFIG, "Error parsing transport address '%s'", address);
|
|
|
+ goto err;
|
|
|
+ }
|
|
|
+
|
|
|
+ transport = transport_new(&tor_addr, port, method_name, socks_ver);
|
|
|
if (!transport)
|
|
|
goto err;
|
|
|
|
|
@@ -919,7 +932,7 @@ parse_cmethod_line(const char *line, managed_proxy_t *mp)
|
|
|
|
|
|
log_info(LD_CONFIG, "Transport %s at %s:%d with SOCKS %d. "
|
|
|
"Attached to managed proxy.",
|
|
|
- method_name, fmt_addr(&addr), (int)port, socks_ver);
|
|
|
+ method_name, address, (int)port, socks_ver);
|
|
|
|
|
|
r=0;
|
|
|
goto done;
|
|
@@ -930,6 +943,7 @@ parse_cmethod_line(const char *line, managed_proxy_t *mp)
|
|
|
done:
|
|
|
SMARTLIST_FOREACH(items, char*, s, tor_free(s));
|
|
|
smartlist_free(items);
|
|
|
+ tor_free(address);
|
|
|
return r;
|
|
|
}
|
|
|
|