Ignore internal transport packets in DatagramConnection
Prevent DatagramConnection from forwarding internal and post-handshake
packets (such as BoringSSL session tickets, DTLS handshakes, or STUN
connectivity checks) to the OnSendOutcome observer. These internal
packets are assigned a default packet ID of -1, signaling that they
are not user-initiated data.
This could cause the following error:
[ RUN ]
DatagramConnectionTest.RtpPacketsAreSent
../../pc/datagram_connection_unittest.cc:219: Failure Mock function
called more times than expected - returning directly.
Function call: OnSendOutcome
Expected: to be called once
Actual: called twice - over-saturated and active
[ FAILED ] DatagramConnectionTest.RtpPacketsAreSent (108 ms)
Additionally, update the `Observer::SendOutcome` initialization in
OnSentPacket and DispatchSendOutcome to use structured initialization,
and Add a fallback to Timestamp::MinusInfinity() and avoid setting the
timestamp to -1ms.
Bug: none
Change-Id: I6576110ec5f9aa620b8870d3f6db963d1f5e2bbd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/477140
Auto-Submit: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Tony Herre <herre@google.com>
Cr-Commit-Position: refs/heads/main@{#47862}
WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.
Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.
The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others.
See here for instructions on how to get started developing with the native code.
Authoritative list of directories that contain the native API header files.