Delete BasicPacketSocketFactory default constructor
Update users to pass in the appropriate rtc::SocketFactory, instead of relying on BasicPacketSocketFactory using the rtc::SocketServer associated with the thread the constructor runs on. Bug: webrtc:13145 Change-Id: I74eca1ce2c5885c14372a797f6374825b1bc1873 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231134 Reviewed-by: Harald Alvestrand <hta@webrtc.org> Commit-Queue: Niels Moller <nisse@webrtc.org> Cr-Commit-Position: refs/heads/main@{#34914}
This commit is contained in:
committed by
WebRTC LUCI CQ
parent
cebbff7f58
commit
66be895944
@ -21,6 +21,7 @@
|
||||
#include "rtc_base/helpers.h"
|
||||
#include "rtc_base/logging.h"
|
||||
#include "rtc_base/network.h"
|
||||
#include "rtc_base/physical_socket_server.h"
|
||||
#include "rtc_base/socket_address.h"
|
||||
#include "rtc_base/ssl_adapter.h"
|
||||
#include "rtc_base/thread.h"
|
||||
@ -122,23 +123,23 @@ int main(int argc, char* argv[]) {
|
||||
|
||||
rtc::InitializeSSL();
|
||||
rtc::InitRandom(rtc::Time32());
|
||||
rtc::Thread* thread = rtc::ThreadManager::Instance()->WrapCurrentThread();
|
||||
std::unique_ptr<rtc::BasicPacketSocketFactory> socket_factory(
|
||||
new rtc::BasicPacketSocketFactory());
|
||||
rtc::PhysicalSocketServer socket_server;
|
||||
rtc::AutoSocketServerThread thread(&socket_server);
|
||||
auto socket_factory =
|
||||
std::make_unique<rtc::BasicPacketSocketFactory>(&socket_server);
|
||||
std::unique_ptr<rtc::BasicNetworkManager> network_manager(
|
||||
new rtc::BasicNetworkManager());
|
||||
rtc::NetworkManager::NetworkList networks;
|
||||
network_manager->GetNetworks(&networks);
|
||||
StunProber* prober =
|
||||
new StunProber(socket_factory.get(), rtc::Thread::Current(), networks);
|
||||
auto finish_callback = [thread](StunProber* prober, int result) {
|
||||
StopTrial(thread, prober, result);
|
||||
auto prober = std::make_unique<StunProber>(socket_factory.get(),
|
||||
rtc::Thread::Current(), networks);
|
||||
auto finish_callback = [&thread](StunProber* prober, int result) {
|
||||
StopTrial(&thread, prober, result);
|
||||
};
|
||||
prober->Start(server_addresses, absl::GetFlag(FLAGS_shared_socket),
|
||||
absl::GetFlag(FLAGS_interval),
|
||||
absl::GetFlag(FLAGS_pings_per_ip), absl::GetFlag(FLAGS_timeout),
|
||||
AsyncCallback(finish_callback));
|
||||
thread->Run();
|
||||
delete prober;
|
||||
thread.Run();
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -20,8 +20,8 @@
|
||||
#include "p2p/base/turn_server.h"
|
||||
#include "rtc_base/async_udp_socket.h"
|
||||
#include "rtc_base/ip_address.h"
|
||||
#include "rtc_base/physical_socket_server.h"
|
||||
#include "rtc_base/socket_address.h"
|
||||
#include "rtc_base/socket_server.h"
|
||||
#include "rtc_base/thread.h"
|
||||
|
||||
namespace {
|
||||
@ -69,16 +69,17 @@ int main(int argc, char* argv[]) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
rtc::Thread* main = rtc::Thread::Current();
|
||||
rtc::PhysicalSocketServer socket_server;
|
||||
rtc::AutoSocketServerThread main(&socket_server);
|
||||
rtc::AsyncUDPSocket* int_socket =
|
||||
rtc::AsyncUDPSocket::Create(main->socketserver(), int_addr);
|
||||
rtc::AsyncUDPSocket::Create(&socket_server, int_addr);
|
||||
if (!int_socket) {
|
||||
std::cerr << "Failed to create a UDP socket bound at" << int_addr.ToString()
|
||||
<< std::endl;
|
||||
return 1;
|
||||
}
|
||||
|
||||
cricket::TurnServer server(main);
|
||||
cricket::TurnServer server(&main);
|
||||
std::fstream auth_file(argv[4], std::fstream::in);
|
||||
|
||||
TurnFileAuth auth(auth_file.is_open()
|
||||
@ -88,11 +89,12 @@ int main(int argc, char* argv[]) {
|
||||
server.set_software(kSoftware);
|
||||
server.set_auth_hook(&auth);
|
||||
server.AddInternalSocket(int_socket, cricket::PROTO_UDP);
|
||||
server.SetExternalSocketFactory(new rtc::BasicPacketSocketFactory(),
|
||||
rtc::SocketAddress(ext_addr, 0));
|
||||
server.SetExternalSocketFactory(
|
||||
new rtc::BasicPacketSocketFactory(&socket_server),
|
||||
rtc::SocketAddress(ext_addr, 0));
|
||||
|
||||
std::cout << "Listening internally at " << int_addr.ToString() << std::endl;
|
||||
|
||||
main->Run();
|
||||
main.Run();
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user