Add actor_name_prefix to prepare_connection parameters.
GitOrigin-RevId: fbfb40411a16c0609a8bd926f2b4f3428e43cd25
This commit is contained in:
parent
92201f904d
commit
79a38df824
@ -580,7 +580,7 @@ class TestProxyRequest : public RequestOnceActor {
|
|||||||
});
|
});
|
||||||
|
|
||||||
child_ = ConnectionCreator::prepare_connection(r_socket_fd.move_as_ok(), ConnectionCreator::ProxyInfo{&proxy_},
|
child_ = ConnectionCreator::prepare_connection(r_socket_fd.move_as_ok(), ConnectionCreator::ProxyInfo{&proxy_},
|
||||||
get_transport(), "TestPingDC2", std::move(mtproto_ip), nullptr, {},
|
mtproto_ip, get_transport(), "Test", "TestPingDC2", nullptr, {},
|
||||||
false, std::move(connection_promise));
|
false, std::move(connection_promise));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -379,7 +379,8 @@ void ConnectionCreator::ping_proxy_resolved(int32 proxy_id, IPAddress ip_address
|
|||||||
});
|
});
|
||||||
CHECK(proxy.use_proxy());
|
CHECK(proxy.use_proxy());
|
||||||
auto token = next_token();
|
auto token = next_token();
|
||||||
auto ref = prepare_connection(std::move(socket_fd), proxy, extra.transport_type, extra.debug_str, extra.mtproto_ip,
|
auto ref =
|
||||||
|
prepare_connection(std::move(socket_fd), proxy, extra.mtproto_ip, extra.transport_type, "Ping", extra.debug_str,
|
||||||
nullptr, create_reference(token), false, std::move(connection_promise));
|
nullptr, create_reference(token), false, std::move(connection_promise));
|
||||||
if (!ref.empty()) {
|
if (!ref.empty()) {
|
||||||
children_[token] = {false, std::move(ref)};
|
children_[token] = {false, std::move(ref)};
|
||||||
@ -638,9 +639,9 @@ void ConnectionCreator::request_raw_connection_by_ip(IPAddress ip_address, mtpro
|
|||||||
});
|
});
|
||||||
|
|
||||||
auto token = next_token();
|
auto token = next_token();
|
||||||
auto ref = prepare_connection(std::move(socket_fd), ProxyInfo{nullptr}, transport_type,
|
auto ref = prepare_connection(std::move(socket_fd), ProxyInfo{nullptr}, IPAddress(), transport_type, "Raw",
|
||||||
PSTRING() << "to IP address " << ip_address, IPAddress(), nullptr,
|
PSTRING() << "to IP address " << ip_address, nullptr, create_reference(token), false,
|
||||||
create_reference(token), false, std::move(connection_promise));
|
std::move(connection_promise));
|
||||||
if (!ref.empty()) {
|
if (!ref.empty()) {
|
||||||
children_[token] = {false, std::move(ref)};
|
children_[token] = {false, std::move(ref)};
|
||||||
}
|
}
|
||||||
@ -714,8 +715,8 @@ Result<SocketFd> ConnectionCreator::find_connection(const ProxyInfo &proxy, cons
|
|||||||
}
|
}
|
||||||
|
|
||||||
ActorOwn<> ConnectionCreator::prepare_connection(SocketFd socket_fd, const ProxyInfo &proxy,
|
ActorOwn<> ConnectionCreator::prepare_connection(SocketFd socket_fd, const ProxyInfo &proxy,
|
||||||
mtproto::TransportType transport_type, string debug_str,
|
const IPAddress &mtproto_ip, mtproto::TransportType transport_type,
|
||||||
IPAddress mtproto_ip,
|
Slice actor_name_prefix, Slice debug_str,
|
||||||
unique_ptr<mtproto::RawConnection::StatsCallback> stats_callback,
|
unique_ptr<mtproto::RawConnection::StatsCallback> stats_callback,
|
||||||
ActorShared<> parent, bool use_connection_token,
|
ActorShared<> parent, bool use_connection_token,
|
||||||
Promise<ConnectionData> promise) {
|
Promise<ConnectionData> promise) {
|
||||||
@ -764,17 +765,18 @@ ActorOwn<> ConnectionCreator::prepare_connection(SocketFd socket_fd, const Proxy
|
|||||||
<< ": " << debug_str;
|
<< ": " << debug_str;
|
||||||
auto callback = make_unique<Callback>(std::move(promise), std::move(stats_callback), use_connection_token);
|
auto callback = make_unique<Callback>(std::move(promise), std::move(stats_callback), use_connection_token);
|
||||||
if (proxy.use_socks5_proxy()) {
|
if (proxy.use_socks5_proxy()) {
|
||||||
return ActorOwn<>(create_actor<Socks5>("Socks5", std::move(socket_fd), mtproto_ip, proxy.proxy().user().str(),
|
return ActorOwn<>(create_actor<Socks5>(PSLICE() << actor_name_prefix << "Socks5", std::move(socket_fd),
|
||||||
proxy.proxy().password().str(), std::move(callback), std::move(parent)));
|
mtproto_ip, proxy.proxy().user().str(), proxy.proxy().password().str(),
|
||||||
|
std::move(callback), std::move(parent)));
|
||||||
} else if (proxy.use_http_tcp_proxy()) {
|
} else if (proxy.use_http_tcp_proxy()) {
|
||||||
return ActorOwn<>(create_actor<HttpProxy>("HttpProxy", std::move(socket_fd), mtproto_ip,
|
return ActorOwn<>(create_actor<HttpProxy>(PSLICE() << actor_name_prefix << "HttpProxy", std::move(socket_fd),
|
||||||
proxy.proxy().user().str(), proxy.proxy().password().str(),
|
mtproto_ip, proxy.proxy().user().str(), proxy.proxy().password().str(),
|
||||||
std::move(callback), std::move(parent)));
|
std::move(callback), std::move(parent)));
|
||||||
} else if (transport_type.secret.emulate_tls()) {
|
} else if (transport_type.secret.emulate_tls()) {
|
||||||
return ActorOwn<>(
|
return ActorOwn<>(create_actor<mtproto::TlsInit>(
|
||||||
create_actor<mtproto::TlsInit>("TlsInit", std::move(socket_fd), transport_type.secret.get_domain(),
|
PSLICE() << actor_name_prefix << "TlsInit", std::move(socket_fd), transport_type.secret.get_domain(),
|
||||||
transport_type.secret.get_proxy_secret().str(), std::move(callback),
|
transport_type.secret.get_proxy_secret().str(), std::move(callback), std::move(parent),
|
||||||
std::move(parent), G()->get_dns_time_difference()));
|
G()->get_dns_time_difference()));
|
||||||
} else {
|
} else {
|
||||||
UNREACHABLE();
|
UNREACHABLE();
|
||||||
}
|
}
|
||||||
@ -909,8 +911,9 @@ void ConnectionCreator::client_loop(ClientInfo &client) {
|
|||||||
td::make_unique<detail::StatsCallback>(client.is_media ? media_net_stats_callback_ : common_net_stats_callback_,
|
td::make_unique<detail::StatsCallback>(client.is_media ? media_net_stats_callback_ : common_net_stats_callback_,
|
||||||
actor_id(this), client.hash, extra.stat);
|
actor_id(this), client.hash, extra.stat);
|
||||||
auto token = next_token();
|
auto token = next_token();
|
||||||
auto ref = prepare_connection(std::move(socket_fd), proxy, extra.transport_type, extra.debug_str, extra.mtproto_ip,
|
auto ref = prepare_connection(std::move(socket_fd), proxy, extra.mtproto_ip, extra.transport_type, Slice(),
|
||||||
std::move(stats_callback), create_reference(token), true, std::move(promise));
|
extra.debug_str, std::move(stats_callback), create_reference(token), true,
|
||||||
|
std::move(promise));
|
||||||
if (!ref.empty()) {
|
if (!ref.empty()) {
|
||||||
children_[token] = {true, std::move(ref)};
|
children_[token] = {true, std::move(ref)};
|
||||||
}
|
}
|
||||||
|
@ -122,8 +122,8 @@ class ConnectionCreator : public NetQueryCallback {
|
|||||||
|
|
||||||
static DcOptions get_default_dc_options(bool is_test);
|
static DcOptions get_default_dc_options(bool is_test);
|
||||||
|
|
||||||
static ActorOwn<> prepare_connection(SocketFd socket_fd, const ProxyInfo &proxy,
|
static ActorOwn<> prepare_connection(SocketFd socket_fd, const ProxyInfo &proxy, const IPAddress &mtproto_ip,
|
||||||
mtproto::TransportType transport_type, string debug_str, IPAddress mtproto_ip,
|
mtproto::TransportType transport_type, Slice actor_name_prefix, Slice debug_str,
|
||||||
unique_ptr<mtproto::RawConnection::StatsCallback> stats_callback,
|
unique_ptr<mtproto::RawConnection::StatsCallback> stats_callback,
|
||||||
ActorShared<> parent, bool use_connection_token,
|
ActorShared<> parent, bool use_connection_token,
|
||||||
Promise<ConnectionData> promise);
|
Promise<ConnectionData> promise);
|
||||||
|
Loading…
Reference in New Issue
Block a user