webrtc/rtc_base
Taylor Brandstetter 7b69a44c8b Fix ABA problem when iterating epoll events.
Original patch contributed by andrey.semashev@gmail.com.

In PhysicalSocketServer::WaitEpoll(), the loop verifies that the
signalled dispatcher is in dispatchers_ set. It does so by looking up
the dispatcher pointer in the set. This is vulnerable to the ABA
problem because one dispatcher may be removed and destroyed and another
created and added with the same address before epoll reports an event
for the old dispatcher. The same issue exists for other Wait
implementations, if a dispatcher is removed and a new one added with
the same socket handle is the old.

This is avoided by using a 64-bit key for looking up the dispatcher
in the set. The key is set from a running counter which gets incremented
when a dispatcher is added to the set, so even if the same dispatcher
pointer is added, removed and added again, the key value will be
different.

This changes the storage of dispatchers_ from a set to a flat_hash_map,
which uses a bit more memory but has faster lookup (O(1) as opposed to
O(log n)).

Bug: webrtc:11124
Change-Id: I6d206e1a367b58ba971edca9b48af7664384b797
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181027
Commit-Queue: Taylor <deadbeef@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32019}
2020-08-31 20:26:37 +00:00
..
deprecated Rename CriticalSection to RecursiveCriticalSection. 2020-07-17 09:19:50 +00:00
experiments Update settings for balanced degradation. 2020-08-10 10:59:17 +00:00
java/src/org/webrtc Fix errorprone issues preventing Chromium Roll. 2019-11-27 12:52:48 +00:00
memory Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
network Use absl_deps in order to preapre to the Abseil component build release. 2020-06-08 12:59:40 +00:00
numerics Replace DataSize and DataRate factories with newer versions 2020-02-18 16:09:50 +00:00
strings Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
synchronization Migrate to webrtc::GlobalMutex. 2020-07-15 10:32:20 +00:00
system Remove unused critical section includes. 2020-07-16 13:52:28 +00:00
task_utils Use absl_deps in order to preapre to the Abseil component build release. 2020-06-08 12:59:40 +00:00
third_party Reformat GN files. 2020-01-21 12:13:11 +00:00
time Reformat GN files. 2020-01-21 12:13:11 +00:00
units Fix errors C2238, C2248 and C2059 on MSVC bots. 2020-04-02 09:54:27 +00:00
win Format almost everything. 2019-07-08 13:45:15 +00:00
arraysize.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
async_invoker.cc Remove unused GuardedAsyncInvoker class 2020-07-08 10:46:20 +00:00
async_invoker.h Remove unused GuardedAsyncInvoker class 2020-07-08 10:46:20 +00:00
async_invoker_inl.h Remove unused critical section includes. 2020-07-16 13:52:28 +00:00
async_packet_socket.cc Cleanup: Use common IP overhead definitions in test and prod code 2020-03-02 11:36:58 +00:00
async_packet_socket.h Remove iceRegatherIntervalRange 2020-01-28 19:16:18 +00:00
async_resolver_interface.cc webrtc: Remove semicolons. 2019-02-20 16:02:59 +00:00
async_resolver_interface.h Add missing RTC_EXPORT for the component build. 2019-10-15 09:07:44 +00:00
async_socket.cc Format almost everything. 2019-07-08 13:45:15 +00:00
async_socket.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
async_tcp_socket.cc AsyncTCPSocket: try sending outgoing data until EWOULDBLOCK 2020-02-03 21:19:57 +00:00
async_tcp_socket.h AsyncTCPSocket: try sending outgoing data until EWOULDBLOCK 2020-02-03 21:19:57 +00:00
async_tcp_socket_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
async_udp_socket.cc Format almost everything. 2019-07-08 13:45:15 +00:00
async_udp_socket.h Format almost everything. 2019-07-08 13:45:15 +00:00
async_udp_socket_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
atomic_ops.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
atomic_ops_unittest.cc (3) Rename files to snake_case: move the files 2019-01-11 17:05:20 +00:00
base64_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
bind.h Replace template_util.h with C++14 STL methods 2019-11-27 19:34:54 +00:00
bind_unittest.cc Replace template_util.h with C++14 STL methods 2019-11-27 19:34:54 +00:00
bit_buffer.cc Fix support for BitBuffer::ReadNonSymmetric(&value, 1) 2020-07-08 11:41:20 +00:00
bit_buffer.h Add functions to read from/write to bitstream values with known max value 2019-07-03 13:30:01 +00:00
bit_buffer_unittest.cc Fix support for BitBuffer::ReadNonSymmetric(&value, 1) 2020-07-08 11:41:20 +00:00
bounded_inline_vector.h BoundedInlineVector: Add resize() method 2020-03-02 20:55:28 +00:00
bounded_inline_vector_impl.h BoundedInlineVector: Add resize() method 2020-03-02 20:55:28 +00:00
bounded_inline_vector_unittest.cc BoundedInlineVector: Add resize() method 2020-03-02 20:55:28 +00:00
buffer.h Check that data_ is non-null before memcpy in EnsureCapacityWithHeadroom 2020-05-29 11:42:06 +00:00
buffer_queue.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
buffer_queue.h Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
buffer_queue_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
buffer_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
BUILD.gn Fix ABA problem when iterating epoll events. 2020-08-31 20:26:37 +00:00
byte_buffer.cc In rtc::ByteBuffer drop support for ORDER_HOST as unused 2019-11-15 11:48:42 +00:00
byte_buffer.h In rtc::ByteBuffer drop support for ORDER_HOST as unused 2019-11-15 11:48:42 +00:00
byte_buffer_unittest.cc In rtc::ByteBuffer drop support for ORDER_HOST as unused 2019-11-15 11:48:42 +00:00
byte_order.h Reworking byte order utility functions for Windows platforms. 2019-03-31 11:55:09 +00:00
byte_order_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
callback.h Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
callback.h.pump Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
callback_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
checks.cc Add ability to disable detailed error message in RTC_CHECKs 2019-11-28 17:51:00 +00:00
checks.h Search and replace gendered terms according to style guide: 2020-06-12 14:12:54 +00:00
checks_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
compile_assert_c.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
constructor_magic.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
copy_on_write_buffer.cc Add Slice method to CopyOnWriteBuffer and use it in FEC code. 2019-09-26 09:48:07 +00:00
copy_on_write_buffer.h Add missing RTC_EXPORT for the component build. 2019-10-15 09:07:44 +00:00
copy_on_write_buffer_unittest.cc Add Slice method to CopyOnWriteBuffer and use it in FEC code. 2019-09-26 09:48:07 +00:00
cpu_time.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
cpu_time.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
cpu_time_unittest.cc Deflake CpuTimeTest.TwoThreads 2020-01-15 13:36:58 +00:00
crc32.cc Thread safe crc32 table initialization 2019-05-15 23:54:07 +00:00
crc32.h Delete unneeded includes of basictypes.h. 2018-05-21 19:35:08 +00:00
crc32_unittest.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
crypt_string.cc Delete unused class InsecureCryptStringImpl 2019-05-10 07:07:19 +00:00
crypt_string.h Delete unused class InsecureCryptStringImpl 2019-05-10 07:07:19 +00:00
data_rate_limiter.cc Renamed rtc::RateLimiter to rtrc::DataRateLimiter. 2018-02-28 19:58:24 +00:00
data_rate_limiter.h Add missing RTC_EXPORT for the component build. 2019-10-15 09:07:44 +00:00
data_rate_limiter_unittest.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
deprecation.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
DEPS Introduces rtc_base/synchronization/mutex.h. 2020-06-04 09:55:12 +00:00
dscp.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
event.cc NullSocketServer::Wait: Don't warn if we have to wait a long time for messages 2019-04-11 16:35:18 +00:00
event.h NullSocketServer::Wait: Don't warn if we have to wait a long time for messages 2019-04-11 16:35:18 +00:00
event_tracer.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
event_tracer.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
event_tracer_unittest.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
event_unittest.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
fake_clock.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
fake_clock.h Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
fake_clock_unittest.cc Use newer version of TimeDelta and TimeStamp factories in webrtc 2020-02-10 12:21:17 +00:00
fake_mdns_responder.h Make rtc_base/fake_mdns_responder.h self contained. 2019-03-02 10:18:01 +00:00
fake_network.h Format almost everything. 2019-07-08 13:45:15 +00:00
fake_ssl_identity.cc Remove deprecated ssl_identity methods 2020-04-16 14:21:41 +00:00
fake_ssl_identity.h Remove deprecated ssl_identity methods 2020-04-16 14:21:41 +00:00
file_rotating_stream.cc Format almost everything. 2019-07-08 13:45:15 +00:00
file_rotating_stream.h Format almost everything. 2019-07-08 13:45:15 +00:00
file_rotating_stream_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
firewall_socket_server.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
firewall_socket_server.h Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
format_macros.h Delete shim of PRId64 et al. on Windows 2019-08-08 08:29:18 +00:00
gtest_prod_util.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
gunit.cc Replace starts_with and ends_with with Abseil 2018-12-17 17:33:06 +00:00
gunit.h Use newer version of TimeDelta and TimeStamp factories in webrtc 2020-02-10 12:21:17 +00:00
helpers.cc Format almost everything. 2019-07-08 13:45:15 +00:00
helpers.h Add missing RTC_EXPORT for the component build. 2019-10-15 09:07:44 +00:00
helpers_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
http_common.cc Format almost everything. 2019-07-08 13:45:15 +00:00
http_common.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
ifaddrs_android.cc Format almost everything. 2019-07-08 13:45:15 +00:00
ifaddrs_android.h (3) Rename files to snake_case: move the files 2019-01-11 17:05:20 +00:00
ifaddrs_converter.cc Format almost everything. 2019-07-08 13:45:15 +00:00
ifaddrs_converter.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
ignore_wundef.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
ip_address.cc Cleanup: Use common IP overhead definitions in test and prod code 2020-03-02 11:36:58 +00:00
ip_address.h Cleanup: Use common IP overhead definitions in test and prod code 2020-03-02 11:36:58 +00:00
ip_address_unittest.cc Extending UsagePattern and private IP addresses. 2019-04-24 20:57:20 +00:00
keep_ref_until_done.h Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
location.cc Remove line number from rtc::Location 2019-12-03 19:43:12 +00:00
location.h Remove line number from rtc::Location 2019-12-03 19:43:12 +00:00
log_sinks.cc Format almost everything. 2019-07-08 13:45:15 +00:00
log_sinks.h Format almost everything. 2019-07-08 13:45:15 +00:00
logging.cc Remove unused critical section includes. 2020-07-16 13:52:28 +00:00
logging.h Clarify logging docs. 2020-07-08 16:20:17 +00:00
logging_unittest.cc Concatenate string literals at compile time. 2020-01-14 14:47:48 +00:00
mac_ifaddrs_converter.cc Format almost everything. 2019-07-08 13:45:15 +00:00
mdns_responder_interface.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
memory_stream.cc Fix MemoryLogWriter so that it always writes the full data. 2019-10-25 12:07:32 +00:00
memory_stream.h Fix MemoryLogWriter so that it always writes the full data. 2019-10-25 12:07:32 +00:00
memory_usage.cc Format almost everything. 2019-07-08 13:45:15 +00:00
memory_usage.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
memory_usage_unittest.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
message_buffer_reader.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
message_digest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
message_digest.h Format almost everything. 2019-07-08 13:45:15 +00:00
message_digest_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
message_handler.cc Cleanup: Merges Thread and MessageQueue. 2020-01-13 13:53:20 +00:00
message_handler.h Delete FunctorMessageHandler, in tests use alternative ways to post functors 2019-12-02 09:47:34 +00:00
nat_server.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
nat_server.h Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
nat_socket_factory.cc Cleanup: Replace MessageQueue pointers with Thread pointers. 2020-01-10 19:03:12 +00:00
nat_socket_factory.h Cleanup: Replace MessageQueue pointers with Thread pointers. 2020-01-10 19:03:12 +00:00
nat_types.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
nat_types.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
nat_unittest.cc Use std::make_unique instead of absl::make_unique. 2019-09-17 15:47:29 +00:00
net_helper.cc Cleanup: Use common IP overhead definitions in test and prod code 2020-03-02 11:36:58 +00:00
net_helper.h Cleanup: Use common IP overhead definitions in test and prod code 2020-03-02 11:36:58 +00:00
net_helpers.cc AsyncResolver: remove dependency on SignalThread. 2020-05-26 20:07:14 +00:00
net_helpers.h AsyncResolver: remove dependency on SignalThread. 2020-05-26 20:07:14 +00:00
network.cc Implement network monitor for iOS. 2020-08-20 21:46:18 +00:00
network.h Add interface for os/firmware to affect ICE selection. 2020-08-07 10:07:43 +00:00
network_constants.cc Extend rtc::AdapterType with 2g, 3G, 4G & 5G enum values. 2020-04-02 07:48:36 +00:00
network_constants.h Extend rtc::AdapterType with 2g, 3G, 4G & 5G enum values. 2020-04-02 07:48:36 +00:00
network_monitor.cc Reland "Pass NetworkMonitorFactory through PeerConnectionFactory." 2020-08-01 00:36:27 +00:00
network_monitor.h Implement network monitor for iOS. 2020-08-20 21:46:18 +00:00
network_monitor_factory.cc Removing NetworkMonitorFactory static global. 2020-08-13 20:50:23 +00:00
network_monitor_factory.h Removing NetworkMonitorFactory static global. 2020-08-13 20:50:23 +00:00
network_route.cc Only print route if it has changed 2020-03-24 11:48:42 +00:00
network_route.h Add test for relay bandwidth capping. 2020-03-30 13:02:46 +00:00
network_route_unittest.cc Only print route if it has changed 2020-03-24 11:48:42 +00:00
network_unittest.cc Implement network monitor for iOS. 2020-08-20 21:46:18 +00:00
null_socket_server.cc Format almost everything. 2019-07-08 13:45:15 +00:00
null_socket_server.h Add RTC_EXPORT for NullSocketServer 2020-05-06 20:19:49 +00:00
null_socket_server_unittest.cc Cleanup: Removes redundant includes on message_queue.h 2020-01-08 14:12:08 +00:00
one_time_event.h Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
one_time_event_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
openssl.h Refactor OpenSSLSessionCache out of OpenSSLAdapterFactory. 2018-04-06 01:01:48 +00:00
openssl_adapter.cc Remove deprecated SSLAdapter::SetIdentity. 2020-04-14 11:00:49 +00:00
openssl_adapter.h Remove deprecated SSLAdapter::SetIdentity. 2020-04-14 11:00:49 +00:00
openssl_adapter_unittest.cc In rtc_base/ and api/ replace mock macros with unified MOCK_METHOD macro 2020-05-14 19:33:26 +00:00
openssl_certificate.cc Use std::make_unique instead of absl::make_unique. 2019-09-17 15:47:29 +00:00
openssl_certificate.h Format almost everything. 2019-07-08 13:45:15 +00:00
openssl_digest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
openssl_digest.h Format almost everything. 2019-07-08 13:45:15 +00:00
openssl_identity.cc Remove deprecated SSLIdentity methods that return raw pointers. 2020-04-16 20:56:25 +00:00
openssl_identity.h Remove deprecated SSLIdentity methods that return raw pointers. 2020-04-16 20:56:25 +00:00
openssl_session_cache.cc Format almost everything. 2019-07-08 13:45:15 +00:00
openssl_session_cache.h Format almost everything. 2019-07-08 13:45:15 +00:00
openssl_session_cache_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
openssl_stream_adapter.cc openssl_stream_adapter: improve ssl handshake error logging 2020-08-05 21:17:26 +00:00
openssl_stream_adapter.h Refactor ssl_stream_adapter API to show object ownership 2020-03-21 18:53:46 +00:00
openssl_utility.cc Format almost everything. 2019-07-08 13:45:15 +00:00
openssl_utility.h Format almost everything. 2019-07-08 13:45:15 +00:00
openssl_utility_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
operations_chain.cc [Perfect Negotiation] Fire onnegotiationneeded when chain is empty. 2020-08-25 09:56:39 +00:00
operations_chain.h [Perfect Negotiation] Fire onnegotiationneeded when chain is empty. 2020-08-25 09:56:39 +00:00
operations_chain_unittest.cc Fix OperationsChainTest.OnChainEmptyCallback flake. 2020-08-25 16:11:22 +00:00
OWNERS Remove wildcard ownership for build files. 2020-02-19 14:05:46 +00:00
physical_socket_server.cc Fix ABA problem when iterating epoll events. 2020-08-31 20:26:37 +00:00
physical_socket_server.h Fix ABA problem when iterating epoll events. 2020-08-31 20:26:37 +00:00
physical_socket_server_unittest.cc Fix ABA problem when iterating epoll events. 2020-08-31 20:26:37 +00:00
platform_thread.cc Format almost everything. 2019-07-08 13:45:15 +00:00
platform_thread.h Delete windows-specific stop flag in PlatformThread 2019-05-06 07:34:09 +00:00
platform_thread_types.cc Reland "Use Windows 10 thread naming API" 2020-05-17 17:22:01 +00:00
platform_thread_types.h Switch back to native mutexes on macOS 2019-03-04 12:42:10 +00:00
platform_thread_unittest.cc Delete deprecated PlatformThread looping 2019-05-03 08:35:42 +00:00
protobuf_utils.h Remove webrtc::ProtoString. 2019-02-16 11:11:45 +00:00
proxy_info.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
proxy_info.h Format almost everything. 2019-07-08 13:45:15 +00:00
proxy_server.cc Use std::make_unique instead of absl::make_unique. 2019-09-17 15:47:29 +00:00
proxy_server.h Move FifoBuffer to its own file and build target 2019-03-28 13:33:30 +00:00
proxy_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
race_checker.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
race_checker.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
random.cc Move some numeric utility code from rtc_base/ to rtc_base/numerics/ 2017-11-22 11:21:47 +00:00
random.h Format almost everything. 2019-07-08 13:45:15 +00:00
random_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
rate_limiter.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
rate_limiter.h Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
rate_limiter_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
rate_statistics.cc Replaces ring buffer in RateStatistics with deque. 2020-05-25 12:14:44 +00:00
rate_statistics.h Replaces ring buffer in RateStatistics with deque. 2020-05-25 12:14:44 +00:00
rate_statistics_unittest.cc Change rate stats classes to use int64_t not size_t 2020-01-15 13:46:38 +00:00
rate_tracker.cc Change rate stats classes to use int64_t not size_t 2020-01-15 13:46:38 +00:00
rate_tracker.h Change rate stats classes to use int64_t not size_t 2020-01-15 13:46:38 +00:00
rate_tracker_unittest.cc Change rate stats classes to use int64_t not size_t 2020-01-15 13:46:38 +00:00
ref_count.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
ref_counted_object.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
ref_counted_object_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
ref_counter.h Use std::atomic for RefCounter 2019-11-26 14:05:20 +00:00
rolling_accumulator.h Format almost everything. 2019-07-08 13:45:15 +00:00
rolling_accumulator_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
rtc_certificate.cc Refactor ssl_stream_adapter API to show object ownership 2020-03-21 18:53:46 +00:00
rtc_certificate.h Add missing RTC_EXPORT for the component build. 2019-10-15 09:07:44 +00:00
rtc_certificate_generator.cc Refactor ssl_stream_adapter API to show object ownership 2020-03-21 18:53:46 +00:00
rtc_certificate_generator.h Add missing RTC_EXPORT for the component build. 2019-10-15 09:07:44 +00:00
rtc_certificate_generator_unittest.cc Mark static const class/struct members as constexpr. 2020-04-15 09:30:07 +00:00
rtc_certificate_unittest.cc Refactor ssl_stream_adapter API to show object ownership 2020-03-21 18:53:46 +00:00
sanitizer.h Rebase std::is_trivially_* with absl::is_trivially_* 2018-11-26 19:20:27 +00:00
sanitizer_unittest.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
server_socket_adapters.cc Format almost everything. 2019-07-08 13:45:15 +00:00
server_socket_adapters.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
signal_thread.h Deprecate SignalThread. 2020-05-28 07:52:53 +00:00
sigslot_repeater.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
sigslot_tester.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
sigslot_tester_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
sigslot_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
sigslottester.h.pump (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
socket.cc Format almost everything. 2019-07-08 13:45:15 +00:00
socket.h Delete compatibility defines for unused error codes 2020-01-07 09:54:44 +00:00
socket_adapters.cc Remove MessageBoxA UI API call from socket code 2019-12-10 08:32:10 +00:00
socket_adapters.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
socket_address.cc [Cleanup/Optim] Pass IPAddress by const reference. 2020-01-03 18:42:32 +00:00
socket_address.h Add missing RTC_EXPORT for the component build. 2019-10-15 09:07:44 +00:00
socket_address_pair.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
socket_address_pair.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
socket_address_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
socket_factory.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
socket_server.h Cleanup: Replace MessageQueue pointers with Thread pointers. 2020-01-10 19:03:12 +00:00
socket_stream.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
socket_stream.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
socket_unittest.cc Fix ABA problem when iterating epoll events. 2020-08-31 20:26:37 +00:00
socket_unittest.h Fix ABA problem when iterating epoll events. 2020-08-31 20:26:37 +00:00
ssl_adapter.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
ssl_adapter.h Remove deprecated SSLAdapter::SetIdentity. 2020-04-14 11:00:49 +00:00
ssl_adapter_unittest.cc In rtc_base/ and api/ replace mock macros with unified MOCK_METHOD macro 2020-05-14 19:33:26 +00:00
ssl_certificate.cc Use std::make_unique instead of absl::make_unique. 2019-09-17 15:47:29 +00:00
ssl_certificate.h Add missing RTC_EXPORT for the component build. 2019-10-15 09:07:44 +00:00
ssl_fingerprint.cc Use std::make_unique instead of absl::make_unique. 2019-09-17 15:47:29 +00:00
ssl_fingerprint.h Add missing RTC_EXPORT for the component build. 2019-10-15 09:07:44 +00:00
ssl_identity.cc Remove deprecated ssl_identity methods 2020-04-16 14:21:41 +00:00
ssl_identity.h Remove deprecated SSLIdentity methods that return raw pointers. 2020-04-16 20:56:25 +00:00
ssl_identity_unittest.cc Refactor ssl_stream_adapter API to show object ownership 2020-03-21 18:53:46 +00:00
ssl_roots.h Update set of known root certificates. 2020-04-24 20:40:45 +00:00
ssl_stream_adapter.cc Refactor ssl_stream_adapter API to show object ownership 2020-03-21 18:53:46 +00:00
ssl_stream_adapter.h Remove deprecated ssl_identity methods 2020-04-16 14:21:41 +00:00
ssl_stream_adapter_unittest.cc Refactor ssl_stream_adapter API to show object ownership 2020-03-21 18:53:46 +00:00
stream.cc Cleanup: Removes redundant includes on message_queue.h 2020-01-08 14:12:08 +00:00
stream.h Remove unused critical section includes. 2020-07-16 13:52:28 +00:00
string_encode.cc Fix HexEncodeTest.TestZeroLengthNoDelimiter with enable_iterator_debugging=true 2019-08-29 14:16:23 +00:00
string_encode.h Format almost everything. 2019-07-08 13:45:15 +00:00
string_encode_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
string_to_number.cc Format almost everything. 2019-07-08 13:45:15 +00:00
string_to_number.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
string_to_number_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
string_utils.cc Replace replace_substrs with Abseil 2019-02-15 01:22:54 +00:00
string_utils.h Skip empty strings in ToUtf(8|16). 2019-07-30 19:35:37 +00:00
string_utils_unittest.cc Skip empty strings in ToUtf(8|16). 2019-07-30 19:35:37 +00:00
stringize_macros.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
stringize_macros_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
swap_queue.h Reland "Introduce ability to test echo in PC level test framework" 2019-08-20 12:18:28 +00:00
swap_queue_unittest.cc Rename more death test to *DeathTest 2020-05-26 20:27:34 +00:00
task_queue.cc Reland "Remove TaskQueue constructor that uses GlobalTaskQueueFactory" 2019-04-10 10:27:07 +00:00
task_queue.h Use std::make_unique instead of absl::make_unique. 2019-09-17 15:47:29 +00:00
task_queue_for_test.cc Avoid using GlobalTaskQueueFactory for TaskQueueForTest 2019-03-19 18:11:52 +00:00
task_queue_for_test.h Add WaitForPreviouslyPostedTasks to TaskQueueForTest. 2020-05-04 13:47:35 +00:00
task_queue_gcd.cc Reland "Leverage dispatch_queue_create_with_target when possible." 2020-03-18 16:06:09 +00:00
task_queue_gcd.h Migrate gcd task queue implementation to TaskQueueBase interface 2019-02-20 17:08:53 +00:00
task_queue_libevent.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
task_queue_libevent.h Migrate libevent task queue implementation to TaskQueueBase interface 2019-02-12 10:58:36 +00:00
task_queue_stdlib.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
task_queue_stdlib.h Migrate stdlib task queue to TaskQueueBase interface 2019-02-21 14:36:07 +00:00
task_queue_unittest.cc Use TaskQueueForTest instead or TaskQueue in unittests 2019-03-26 14:42:49 +00:00
task_queue_win.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
task_queue_win.h Migrate win task queue to TaskQueueBase interface 2019-02-21 09:33:42 +00:00
test_base64.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
test_certificate_verifier.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
test_client.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
test_client.h Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
test_client_unittest.cc Use std::make_unique instead of absl::make_unique. 2019-09-17 15:47:29 +00:00
test_echo_server.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
test_echo_server.h Format almost everything. 2019-07-08 13:45:15 +00:00
test_utils.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
test_utils.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
thread.cc Rename CriticalSection to RecursiveCriticalSection. 2020-07-17 09:19:50 +00:00
thread.h Delete old name ProcessAllMessageQueues 2020-08-03 11:24:17 +00:00
thread_annotations.h Remove RTC_GUARDED_VAR and RTC_PT_GUARDED_VAR macros 2017-11-01 13:23:26 +00:00
thread_annotations_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
thread_checker.h Deprecating ThreadChecker specific interface. 2019-04-08 16:58:07 +00:00
thread_checker_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
thread_message.h Cleanup of rtc::Thread. 2020-01-20 14:07:16 +00:00
thread_unittest.cc Migrate stray leftovers from rtc_base/ and test/ to webrtc::Mutex. 2020-07-13 13:14:34 +00:00
time_utils.cc Prevent undefined shift in TimestampWrapAroundHandler::Unwrap 2020-07-01 17:21:02 +00:00
time_utils.h Remove iceRegatherIntervalRange 2020-01-28 19:16:18 +00:00
time_utils_unittest.cc Use newer version of TimeDelta and TimeStamp factories in webrtc 2020-02-10 12:21:17 +00:00
timestamp_aligner.cc Allow TimestampAligner to translate timestamp without new observation of system clock. 2020-03-10 17:22:54 +00:00
timestamp_aligner.h Allow TimestampAligner to translate timestamp without new observation of system clock. 2020-03-10 17:22:54 +00:00
timestamp_aligner_unittest.cc Allow TimestampAligner to translate timestamp without new observation of system clock. 2020-03-10 17:22:54 +00:00
trace_event.h Add directive to make TRACE_EVENT macros optional. 2019-11-28 15:58:24 +00:00
type_traits.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
unique_id_generator.cc Make UniqueNumberGenerator::AddKnownId() return a value 2019-02-09 00:55:14 +00:00
unique_id_generator.h Make UniqueNumberGenerator::AddKnownId() return a value 2019-02-09 00:55:14 +00:00
unique_id_generator_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
virtual_socket_server.cc Rename CriticalSection to RecursiveCriticalSection. 2020-07-17 09:19:50 +00:00
virtual_socket_server.h Rename CriticalSection to RecursiveCriticalSection. 2020-07-17 09:19:50 +00:00
virtual_socket_unittest.cc Cleanup: Removes redundant includes on message_queue.h 2020-01-08 14:12:08 +00:00
weak_ptr.cc Replacing SequencedTaskChecker with SequenceChecker. 2019-04-09 12:28:04 +00:00
weak_ptr.h Format almost everything. 2019-07-08 13:45:15 +00:00
weak_ptr_unittest.cc Merge SendTask implementation for SingleThreadedTaskQueueForTesting and TaskQueueForTest 2019-10-15 09:17:36 +00:00
win32.cc Format almost everything. 2019-07-08 13:45:15 +00:00
win32.h Delete no longer used windows helpers 2019-05-22 10:32:25 +00:00
win32_socket_init.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
win32_socket_server.cc Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
win32_socket_server.h Migrate rtc_base to webrtc::Mutex. 2020-07-08 20:38:54 +00:00
win32_socket_server_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
win32_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
win32_window.cc Support case where win32socketserver's window class is not unregistered properly. 2019-10-22 16:15:56 +00:00
win32_window.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
win32_window_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
zero_memory.cc Securely clear memory containing key information / passwords before freeing. 2018-03-07 22:06:20 +00:00
zero_memory.h Format almost everything. 2019-07-08 13:45:15 +00:00
zero_memory_unittest.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00