Upstream commit: https://webrtc.googlesource.com/src/+/34505048c030ee72ad6ee99f46534861ebb0e365 Cap RTCConfiguration certificates and enforce 32-bit overflow checks 1. Bounded the maximum number of certificates in RTCConfiguration to 1000 to prevent reference counter overflow while maintaining ample headroom for legitimate multi-algorithm DTLS interoperability. 2. Updated webrtc_impl::RefCounter to declare IncRef() out-of-line unconditionally across all architectures. 3. Implemented RefCounter::IncRef() out-of-line in ref_counter.cc with an explicit RTC_CHECK_LT(prev, INT_MAX) guard on all architectures, preventing 32-bit integer overflow and Use-After-Free vulnerabilities unconditionally without causing inlined binary bloat. Bug: chromium:513154132 Fixed: chromium:513154132 Change-Id: I9894ef08519423b24139b0250cc9da0f9737827a Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/472722 Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org> Reviewed-by: Harald Alvestrand <hta@webrtc.org> Cr-Commit-Position: refs/heads/main@{#47722}
31 lines
826 B
Diff
31 lines
826 B
Diff
From: Byron Campen <docfaraday@gmail.com>
|
|
Date: Thu, 25 Jul 2024 10:07:00 -0500
|
|
Subject: Bug 1909234 - (fix-4fec6f9c67dc) Hollow out the new ssl_adapter lib.
|
|
r?mjf
|
|
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/ee2f06666bcc6d22c4d7c93b78fb52d28452d055
|
|
---
|
|
rtc_base/BUILD.gn | 2 ++
|
|
1 file changed, 2 insertions(+)
|
|
|
|
diff --git a/rtc_base/BUILD.gn b/rtc_base/BUILD.gn
|
|
index fafa40d0f9..b6db0fbabd 100644
|
|
--- a/rtc_base/BUILD.gn
|
|
+++ b/rtc_base/BUILD.gn
|
|
@@ -1776,6 +1776,7 @@ if (!build_with_mozilla) {
|
|
}
|
|
|
|
rtc_library("ssl_adapter") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
"openssl_adapter.cc",
|
|
@@ -1832,6 +1833,7 @@ rtc_library("ssl_adapter") {
|
|
configs += [ "..:external_ssl_library" ]
|
|
}
|
|
}
|
|
+}
|
|
|
|
rtc_source_set("gtest_prod") {
|
|
sources = [ "gtest_prod_util.h" ]
|