Remove deprecated variant of StreamInterface::WriteAll

This has been deprecated since November 2022.

Bug: None
Change-Id: Ia547489b1f703d0744ab7ffc096eeadbb937974a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364381
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43140}
diff --git a/p2p/BUILD.gn b/p2p/BUILD.gn
index 5802599..31595b4 100644
--- a/p2p/BUILD.gn
+++ b/p2p/BUILD.gn
@@ -971,14 +971,27 @@
     sources = [ "base/fake_ice_transport.h" ]
     deps = [
       ":ice_transport_internal",
+      ":rtc_p2p",
+      ":transport_description",
+      "../api:candidate",
       "../api:ice_transport_interface",
       "../api:libjingle_peerconnection_api",
+      "../api:sequence_checker",
       "../api/task_queue:pending_task_safety_flag",
+      "../api/transport:enums",
       "../api/units:time_delta",
+      "../rtc_base:async_packet_socket",
+      "../rtc_base:checks",
       "../rtc_base:copy_on_write_buffer",
+      "../rtc_base:logging",
+      "../rtc_base:macromagic",
+      "../rtc_base:network_route",
+      "../rtc_base:socket",
       "../rtc_base:task_queue_for_test",
+      "../rtc_base:threading",
       "../rtc_base:timeutils",
       "../rtc_base/network:received_packet",
+      "../rtc_base/network:sent_packet",
       "//third_party/abseil-cpp/absl/algorithm:container",
       "//third_party/abseil-cpp/absl/strings:string_view",
     ]
diff --git a/p2p/base/fake_ice_transport.h b/p2p/base/fake_ice_transport.h
index cc7ccc1..6359291 100644
--- a/p2p/base/fake_ice_transport.h
+++ b/p2p/base/fake_ice_transport.h
@@ -11,6 +11,7 @@
 #ifndef P2P_BASE_FAKE_ICE_TRANSPORT_H_
 #define P2P_BASE_FAKE_ICE_TRANSPORT_H_
 
+#include <cstddef>
 #include <map>
 #include <memory>
 #include <optional>
@@ -19,13 +20,29 @@
 
 #include "absl/algorithm/container.h"
 #include "absl/strings/string_view.h"
+#include "api/candidate.h"
 #include "api/ice_transport_interface.h"
+#include "api/sequence_checker.h"
 #include "api/task_queue/pending_task_safety_flag.h"
+#include "api/transport/enums.h"
 #include "api/units/time_delta.h"
+#include "p2p/base/candidate_pair_interface.h"
+#include "p2p/base/connection.h"
+#include "p2p/base/connection_info.h"
 #include "p2p/base/ice_transport_internal.h"
+#include "p2p/base/port.h"
+#include "p2p/base/transport_description.h"
+#include "rtc_base/async_packet_socket.h"
+#include "rtc_base/checks.h"
 #include "rtc_base/copy_on_write_buffer.h"
+#include "rtc_base/logging.h"
 #include "rtc_base/network/received_packet.h"
+#include "rtc_base/network/sent_packet.h"
+#include "rtc_base/network_route.h"
+#include "rtc_base/socket.h"
 #include "rtc_base/task_queue_for_test.h"
+#include "rtc_base/thread.h"
+#include "rtc_base/thread_annotations.h"
 #include "rtc_base/time_utils.h"
 
 namespace cricket {
diff --git a/p2p/base/turn_server_unittest.cc b/p2p/base/turn_server_unittest.cc
index e534f65..4970f70 100644
--- a/p2p/base/turn_server_unittest.cc
+++ b/p2p/base/turn_server_unittest.cc
@@ -10,7 +10,13 @@
 
 #include "p2p/base/turn_server.h"
 
+#include <memory>
+
 #include "p2p/base/basic_packet_socket_factory.h"
+#include "p2p/base/port_interface.h"
+#include "rtc_base/async_packet_socket.h"
+#include "rtc_base/socket_address.h"
+#include "rtc_base/thread.h"
 #include "rtc_base/virtual_socket_server.h"
 #include "test/gtest.h"
 
diff --git a/rtc_base/BUILD.gn b/rtc_base/BUILD.gn
index f157308..1dace8a 100644
--- a/rtc_base/BUILD.gn
+++ b/rtc_base/BUILD.gn
@@ -1426,6 +1426,7 @@
     ":buffer",
     ":checks",
     ":logging",
+    ":macromagic",
     ":threading",
     "../api:array_view",
     "../api:sequence_checker",
diff --git a/rtc_base/DEPS b/rtc_base/DEPS
index 3e27cfa..a0ac9d6 100644
--- a/rtc_base/DEPS
+++ b/rtc_base/DEPS
@@ -38,4 +38,7 @@
   "openssl_stream_adapter.cc": [
     "+openssl",
   ],
+  "openssl_stream_adapter.h": [
+    "+openssl",
+  ],
 }
diff --git a/rtc_base/memory/BUILD.gn b/rtc_base/memory/BUILD.gn
index b8f3bff..0037851 100644
--- a/rtc_base/memory/BUILD.gn
+++ b/rtc_base/memory/BUILD.gn
@@ -33,8 +33,11 @@
     "fifo_buffer.h",
   ]
   deps = [
+    "..:macromagic",
     "..:stream",
     "..:threading",
+    "../../api:array_view",
+    "../../api:sequence_checker",
     "../../api/task_queue:pending_task_safety_flag",
   ]
 }
diff --git a/rtc_base/memory/fifo_buffer.h b/rtc_base/memory/fifo_buffer.h
index 8b31c5f..0d12d47 100644
--- a/rtc_base/memory/fifo_buffer.h
+++ b/rtc_base/memory/fifo_buffer.h
@@ -11,10 +11,16 @@
 #ifndef RTC_BASE_MEMORY_FIFO_BUFFER_H_
 #define RTC_BASE_MEMORY_FIFO_BUFFER_H_
 
+#include <cstddef>
+#include <cstdint>
 #include <memory>
 
+#include "api/array_view.h"
+#include "api/sequence_checker.h"
 #include "api/task_queue/pending_task_safety_flag.h"
 #include "rtc_base/stream.h"
+#include "rtc_base/thread.h"
+#include "rtc_base/thread_annotations.h"
 
 namespace rtc {
 
diff --git a/rtc_base/openssl_stream_adapter.h b/rtc_base/openssl_stream_adapter.h
index f9eee0f..c14d9d7 100644
--- a/rtc_base/openssl_stream_adapter.h
+++ b/rtc_base/openssl_stream_adapter.h
@@ -22,8 +22,10 @@
 
 #include "absl/functional/any_invocable.h"
 #include "absl/strings/string_view.h"
+#include "api/array_view.h"
 #include "rtc_base/buffer.h"
 #ifdef OPENSSL_IS_BORINGSSL
+#include "openssl/base.h"
 #include "rtc_base/boringssl_identity.h"
 #else
 #include "rtc_base/openssl_identity.h"
@@ -32,9 +34,9 @@
 #include "rtc_base/ssl_identity.h"
 #include "rtc_base/ssl_stream_adapter.h"
 #include "rtc_base/stream.h"
-#include "rtc_base/system/rtc_export.h"
 #include "rtc_base/task_utils/repeating_task.h"
 #include "rtc_base/third_party/sigslot/sigslot.h"
+#include "rtc_base/thread.h"
 
 namespace rtc {
 
diff --git a/rtc_base/stream.cc b/rtc_base/stream.cc
index e6b74b4..0a0ab4f 100644
--- a/rtc_base/stream.cc
+++ b/rtc_base/stream.cc
@@ -9,15 +9,11 @@
  */
 #include "rtc_base/stream.h"
 
-#include <errno.h>
 #include <string.h>
 
-#include <algorithm>
-#include <string>
+#include <cstdint>
 
 #include "api/array_view.h"
-#include "rtc_base/checks.h"
-#include "rtc_base/thread.h"
 
 namespace rtc {
 
@@ -25,23 +21,20 @@
 // StreamInterface
 ///////////////////////////////////////////////////////////////////////////////
 
-StreamResult StreamInterface::WriteAll(const void* data,
-                                       size_t data_len,
-                                       size_t* written,
-                                       int* error) {
+StreamResult StreamInterface::WriteAll(ArrayView<const uint8_t> data,
+                                       size_t& written,
+                                       int& error) {
   StreamResult result = SR_SUCCESS;
   size_t total_written = 0, current_written;
-  while (total_written < data_len) {
-    result = Write(ArrayView<const uint8_t>(
-                       reinterpret_cast<const uint8_t*>(data) + total_written,
-                       data_len - total_written),
-                   current_written, *error);
+  while (total_written < data.size()) {
+    rtc::ArrayView<const uint8_t> this_slice =
+        data.subview(total_written, data.size() - total_written);
+    result = Write(this_slice, current_written, error);
     if (result != SR_SUCCESS)
       break;
     total_written += current_written;
   }
-  if (written)
-    *written = total_written;
+  written = total_written;
   return result;
 }
 
diff --git a/rtc_base/stream.h b/rtc_base/stream.h
index 8eb800c..844e8ff 100644
--- a/rtc_base/stream.h
+++ b/rtc_base/stream.h
@@ -11,17 +11,18 @@
 #ifndef RTC_BASE_STREAM_H_
 #define RTC_BASE_STREAM_H_
 
-#include <memory>
+#include <cstddef>
+#include <cstdint>
+#include <utility>
 
 #include "absl/functional/any_invocable.h"
 #include "api/array_view.h"
 #include "api/sequence_checker.h"
-#include "rtc_base/buffer.h"
-#include "rtc_base/logging.h"
+#include "rtc_base/checks.h"
 #include "rtc_base/system/no_unique_address.h"
 #include "rtc_base/system/rtc_export.h"
 #include "rtc_base/third_party/sigslot/sigslot.h"
-#include "rtc_base/thread.h"
+#include "rtc_base/thread_annotations.h"
 
 namespace rtc {
 
@@ -118,19 +119,9 @@
   // unlike Write, the argument 'written' is always set, and may be non-zero
   // on results other than SR_SUCCESS.  The remaining arguments have the
   // same semantics as Write.
-  [[deprecated("Use version with ArrayView")]] StreamResult
-  WriteAll(const void* data, size_t data_len, size_t* written, int* error);
-
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wdeprecated-declarations"
-  // TODO(bugs.webrc.org/14632): Remove pragmas and change underlying
-  // implementation when downstream code is converted.
   StreamResult WriteAll(ArrayView<const uint8_t> data,
                         size_t& written,
-                        int& error) {
-    return WriteAll(data.data(), data.size(), &written, &error);
-  }
-#pragma clang diagnostic pop
+                        int& error);
 
  protected:
   StreamInterface();