From 40a355a42d4a9444dc753c04c6608dade2f06a23 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 03:13:27 +0200 Subject: Adding upstream version 125.0.1. Signed-off-by: Daniel Baumann --- .../libwebrtc/p2p/stunprober/stun_prober.cc | 34 ++++++++++------------ 1 file changed, 15 insertions(+), 19 deletions(-) (limited to 'third_party/libwebrtc/p2p/stunprober/stun_prober.cc') diff --git a/third_party/libwebrtc/p2p/stunprober/stun_prober.cc b/third_party/libwebrtc/p2p/stunprober/stun_prober.cc index f5abf43beb..c60e7ede89 100644 --- a/third_party/libwebrtc/p2p/stunprober/stun_prober.cc +++ b/third_party/libwebrtc/p2p/stunprober/stun_prober.cc @@ -10,21 +10,21 @@ #include "p2p/stunprober/stun_prober.h" +#include #include #include #include #include #include +#include "api/array_view.h" #include "api/packet_socket_factory.h" #include "api/task_queue/pending_task_safety_flag.h" #include "api/transport/stun.h" #include "api/units/time_delta.h" #include "rtc_base/async_packet_socket.h" -#include "rtc_base/async_resolver_interface.h" #include "rtc_base/checks.h" -#include "rtc_base/helpers.h" -#include "rtc_base/logging.h" +#include "rtc_base/network/received_packet.h" #include "rtc_base/thread.h" #include "rtc_base/time_utils.h" @@ -60,7 +60,7 @@ class StunProber::Requester : public sigslot::has_slots<> { rtc::IPAddress server_addr; int64_t rtt() { return received_time_ms - sent_time_ms; } - void ProcessResponse(const char* buf, size_t buf_len); + void ProcessResponse(rtc::ArrayView payload); }; // StunProber provides `server_ips` for Requester to probe. For shared @@ -80,10 +80,7 @@ class StunProber::Requester : public sigslot::has_slots<> { void SendStunRequest(); void OnStunResponseReceived(rtc::AsyncPacketSocket* socket, - const char* buf, - size_t size, - const rtc::SocketAddress& addr, - const int64_t& packet_time_us); + const rtc::ReceivedPacket& packet); const std::vector& requests() { return requests_; } @@ -121,8 +118,10 @@ StunProber::Requester::Requester( response_packet_(new rtc::ByteBufferWriter(nullptr, kMaxUdpBufferSize)), server_ips_(server_ips), thread_checker_(prober->thread_checker_) { - socket_->SignalReadPacket.connect( - this, &StunProber::Requester::OnStunResponseReceived); + socket_->RegisterReceivedPacketCallback( + [&](rtc::AsyncPacketSocket* socket, const rtc::ReceivedPacket& packet) { + OnStunResponseReceived(socket, packet); + }); } StunProber::Requester::~Requester() { @@ -170,10 +169,10 @@ void StunProber::Requester::SendStunRequest() { RTC_DCHECK(static_cast(num_request_sent_) <= server_ips_.size()); } -void StunProber::Requester::Request::ProcessResponse(const char* buf, - size_t buf_len) { +void StunProber::Requester::Request::ProcessResponse( + rtc::ArrayView payload) { int64_t now = rtc::TimeMillis(); - rtc::ByteBufferReader message(buf, buf_len); + rtc::ByteBufferReader message(payload); cricket::StunMessage stun_response; if (!stun_response.Read(&message)) { // Invalid or incomplete STUN packet. @@ -201,13 +200,10 @@ void StunProber::Requester::Request::ProcessResponse(const char* buf, void StunProber::Requester::OnStunResponseReceived( rtc::AsyncPacketSocket* socket, - const char* buf, - size_t size, - const rtc::SocketAddress& addr, - const int64_t& /* packet_time_us */) { + const rtc::ReceivedPacket& packet) { RTC_DCHECK(thread_checker_.IsCurrent()); RTC_DCHECK(socket_); - Request* request = GetRequestByAddress(addr.ipaddr()); + Request* request = GetRequestByAddress(packet.source_address().ipaddr()); if (!request) { // Something is wrong, finish the test. prober_->ReportOnFinished(GENERIC_FAILURE); @@ -215,7 +211,7 @@ void StunProber::Requester::OnStunResponseReceived( } num_response_received_++; - request->ProcessResponse(buf, size); + request->ProcessResponse(packet.payload()); } StunProber::Requester::Request* StunProber::Requester::GetRequestByAddress( -- cgit v1.2.3