Taylor Brandstetter c2128738a8 Relanding: Fix data channel message integrity violation
Patch originally submitted by Lennart Grahl:
https://webrtc-review.googlesource.com/c/src/+/177527

SCTP message chunks and notifications are being delivered interleaved.
However, the way the code was structured previously, a notification
would interrupt reassembly of a message chunk and hand out the partial
message, thereby violating message integrity. This patch separates the
handling of notifications and reassembly of messages.

Additional changes:

- Remove illegal cast from non-validated u32 to enum (PPID)
- Drop partial messages if the SID has been changed but EOR not yet
  received instead of delivering them. (This should never happen
  anyway.)
- Don't treat TSN as timestamp (wat)
- Replace "usrsctplib/usrsctp.h" with <usrsctp.h>, allowing a hack
  to be removed from media/BUILD.gn

Bug: webrtc:11708
Change-Id: I29733b03f67a3d840104b8608a7f0083466c2d0f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/178469
Commit-Queue: Taylor <deadbeef@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31641}
2020-07-07 03:06:24 +00:00
2020-07-06 15:48:30 +00:00
2018-10-05 14:40:21 +00:00
2020-06-23 15:46:34 +00:00
2020-02-27 14:27:23 +00:00
2020-07-06 10:08:09 +00:00
2019-10-28 12:27:50 +00:00
2020-03-18 18:04:41 +00:00
2020-07-06 10:08:09 +00:00
2020-03-30 12:15:56 +00:00
2018-07-23 15:28:48 +00:00
2020-04-16 11:08:43 +00:00
2020-06-15 08:40:44 +00:00

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.

Development

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.

More info

Description
No description provided
Readme 255 MiB
Languages
C++ 88.6%
C 3.3%
Java 3%
Objective-C++ 1.9%
Python 1.9%
Other 1%