Merge pull request #1160 from google/embedded

Merge embedded branch
diff --git a/.gitmodules b/.gitmodules
index 81c6b8e..c14bb9c 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -30,3 +30,6 @@
 	path = third_party/google-toolbox-for-mac/google-toolbox-for-mac
 	url = https://github.com/google/google-toolbox-for-mac.git
 	branch = main
+[submodule "third_party/mbedtls"]
+	path = third_party/mbedtls
+	url = https://github.com/ARMmbed/mbedtls
diff --git a/connections/implementation/endpoint_manager.h b/connections/implementation/endpoint_manager.h
index dd127d7..a493147 100644
--- a/connections/implementation/endpoint_manager.h
+++ b/connections/implementation/endpoint_manager.h
@@ -238,8 +238,11 @@
   static void WaitForLatch(const std::string& method_name,
                            CountDownLatch* latch, std::int32_t timeout_millis);
 
+  // We set this to 11s to provide sufficient time for an in-progress WebRTC
+  // bandwidth upgrade to resolve. This is chosen to be slightly longer than the
+  // 10s timeout in WebRtc::AttemptToConnect().
   static constexpr absl::Duration kProcessEndpointDisconnectionTimeout =
-      absl::Milliseconds(2000);
+      absl::Milliseconds(11000);
   static constexpr absl::Time kInvalidTimestamp = absl::InfinitePast();
 
   // It should be noted that this method may be called multiple times (because
diff --git a/internal/platform/BUILD b/internal/platform/BUILD
index 4abb2e9..a6ea1c0 100644
--- a/internal/platform/BUILD
+++ b/internal/platform/BUILD
@@ -48,10 +48,8 @@
         "//connections:__subpackages__",
         "//fastpair:__subpackages__",
         "//internal:__pkg__",
-        "//internal/analytics:__subpackages__",
         "//internal/platform:__subpackages__",
         "//internal/platform/implementation:__subpackages__",
-        "//internal/proto/analytics:__subpackages__",
         "//location/nearby/cpp/fastpair:__subpackages__",
         "//presence:__subpackages__",
     ],
@@ -82,7 +80,6 @@
     defines = ["NO_WEBRTC"],
     visibility = [
         "//connections:__subpackages__",
-        "//internal/platform:__pkg__",
         "//internal/platform/implementation:__subpackages__",
     ],
     deps = [
@@ -103,8 +100,6 @@
     visibility = [
         "//connections:__subpackages__",
         "//fastpair:__subpackages__",
-        "//googlemac/iPhone/Shared/Nearby/Connections:__subpackages__",
-        "//internal/analytics:__subpackages__",
         "//internal/crypto:__subpackages__",
         "//internal/platform:__subpackages__",
         "//internal/proto/analytics:__subpackages__",
@@ -130,7 +125,6 @@
     defines = ["NO_WEBRTC"],
     visibility = [
         "//connections/implementation:__subpackages__",
-        "//internal/platform:__pkg__",
         "//internal/platform/implementation:__subpackages__",
     ],
     deps = [
@@ -156,9 +150,7 @@
     ],
     defines = ["NO_WEBRTC"],
     visibility = [
-        "//connections:__subpackages__",
         "//internal:__pkg__",
-        "//internal/platform/implementation:__subpackages__",
         "//presence:__subpackages__",
     ],
     deps = [
@@ -180,11 +172,7 @@
         "error_code_recorder.h",
     ],
     defines = ["NO_WEBRTC"],
-    visibility = [
-        "//connections/implementation:__subpackages__",
-        "//internal/analytics:__subpackages__",
-        "//internal/platform/implementation:__subpackages__",
-    ],
+    visibility = ["//connections/implementation:__subpackages__"],
     deps = [
         ":logging",
         "//proto:connections_enums_cc_proto",
@@ -204,7 +192,6 @@
     visibility = [
         "//connections/implementation:__subpackages__",
         "//fastpair:__subpackages__",
-        "//internal/platform:__pkg__",
         "//internal/platform/implementation:__subpackages__",
         "//presence:__subpackages__",
     ],
@@ -227,7 +214,6 @@
     visibility = [
         "//connections:__subpackages__",
         "//fastpair:__subpackages__",
-        "//internal/platform:__pkg__",
         "//internal/platform/implementation:__subpackages__",
         "//presence:__subpackages__",
     ],
@@ -349,9 +335,6 @@
     visibility = [
         "//connections:__subpackages__",
         "//fastpair:__subpackages__",
-        "//internal/analytics:__subpackages__",
-        "//internal/platform:__pkg__",
-        "//internal/platform/implementation/ios:__subpackages__",
         "//internal/platform/implementation/windows:__subpackages__",
         "//location/nearby/cpp/fastpair:__subpackages__",
         "//presence:__subpackages__",
@@ -404,9 +387,6 @@
     visibility = [
         "//connections:__subpackages__",
         "//fastpair:__subpackages__",
-        "//googlemac/iPhone/Shared/Nearby/Connections:__subpackages__",
-        "//internal/analytics:__subpackages__",
-        "//internal/platform:__pkg__",
         "//internal/platform/implementation:__subpackages__",
         "//location/nearby/cpp/fastpair:__subpackages__",
         "//presence:__subpackages__",
diff --git a/third_party/mbedtls b/third_party/mbedtls
new file mode 160000
index 0000000..3e0418f
--- /dev/null
+++ b/third_party/mbedtls
@@ -0,0 +1 @@
+Subproject commit 3e0418fe502b2a2194e118d362efdfc0e558be73