Merge tag 'android-security-11.0.0_r49' into int/11/fp3

Android security 11.0.0 release 49

* tag 'android-security-11.0.0_r49':
  Fix the security issue that preloaded apps can get SSID & BSSID

Change-Id: Ic2bd80e69139286a728db1c713cd6499c670d009
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
index 10e7870..49f00aa 100644
--- a/res/values-mn/strings.xml
+++ b/res/values-mn/strings.xml
@@ -16,11 +16,11 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="notification_channel_name_connected" msgid="1795068343200033922">"Дамжих порталын нотолгоо"</string>
+    <string name="notification_channel_name_connected" msgid="1795068343200033922">"Дамжих порталын баталгаажуулалт"</string>
     <string name="notification_channel_description_connected" msgid="7239184168268014518">"Төхөөрөмжийг дамжих порталын сүлжээнд амжилттай баталгаажуулсан үед харуулдаг мэдэгдлүүд"</string>
     <string name="notification_channel_name_network_venue_info" msgid="6526543187249265733">"Сүлжээний байршлын мэдээлэл"</string>
     <string name="notification_channel_description_network_venue_info" msgid="5131499595382733605">"Сүлжээнд байршлын мэдээллийн хуудас байгааг заах зорилгоор харуулдаг мэдэгдэл"</string>
     <string name="connected" msgid="4563643884927480998">"Холбогдсон"</string>
-    <string name="tap_for_info" msgid="6849746325626883711">"Холбогдсон / Вэб сайтыг үзэхийн тулд товшино уу"</string>
+    <string name="tap_for_info" msgid="6849746325626883711">"Холбогдсон / Веб сайтыг үзэхийн тулд товшино уу"</string>
     <string name="application_label" msgid="1322847171305285454">"Сүлжээний менежер"</string>
 </resources>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 527d895..7b54302 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -17,9 +17,9 @@
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="notification_channel_name_connected" msgid="1795068343200033922">"Verificatie van captive portal"</string>
-    <string name="notification_channel_description_connected" msgid="7239184168268014518">"Er worden meldingen weergegeven als het apparaat is geverifieerd voor een captive portal-netwerk"</string>
+    <string name="notification_channel_description_connected" msgid="7239184168268014518">"Er worden meldingen getoond als het apparaat is geverifieerd voor een captive portal-netwerk"</string>
     <string name="notification_channel_name_network_venue_info" msgid="6526543187249265733">"Netwerklocatie-informatie"</string>
-    <string name="notification_channel_description_network_venue_info" msgid="5131499595382733605">"Er worden meldingen weergegeven om aan te geven dat het netwerk een locatie-informatiepagina heeft"</string>
+    <string name="notification_channel_description_network_venue_info" msgid="5131499595382733605">"Er worden meldingen getoond om aan te geven dat het netwerk een locatie-informatiepagina heeft"</string>
     <string name="connected" msgid="4563643884927480998">"Verbonden"</string>
     <string name="tap_for_info" msgid="6849746325626883711">"Verbonden / Tik om de website te bekijken"</string>
     <string name="application_label" msgid="1322847171305285454">"Netwerkbeheer"</string>
diff --git a/src/android/net/ip/IpClient.java b/src/android/net/ip/IpClient.java
index c4f46ae..d1e130a 100644
--- a/src/android/net/ip/IpClient.java
+++ b/src/android/net/ip/IpClient.java
@@ -777,6 +777,7 @@
 
     private void stopStateMachineUpdaters() {
         mObserverRegistry.unregisterObserver(mLinkObserver);
+        mLinkObserver.shutdown();
     }
 
     @Override
diff --git a/src/android/net/ip/IpClientLinkObserver.java b/src/android/net/ip/IpClientLinkObserver.java
index 82f8d5d..5fd45a3 100644
--- a/src/android/net/ip/IpClientLinkObserver.java
+++ b/src/android/net/ip/IpClientLinkObserver.java
@@ -114,6 +114,7 @@
     private DnsServerRepository mDnsServerRepository;
     private final AlarmManager mAlarmManager;
     private final Configuration mConfig;
+    private final Handler mHandler;
 
     private final MyNetlinkMonitor mNetlinkMonitor;
 
@@ -127,11 +128,16 @@
         mLinkProperties = new LinkProperties();
         mLinkProperties.setInterfaceName(mInterfaceName);
         mConfig = config;
+        mHandler = h;
         mInterfaceLinkState = true; // Assume up by default
         mDnsServerRepository = new DnsServerRepository(config.minRdnssLifetime);
         mAlarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
         mNetlinkMonitor = new MyNetlinkMonitor(h, log, mTag);
-        h.post(mNetlinkMonitor::start);
+        mHandler.post(mNetlinkMonitor::start);
+    }
+
+    public void shutdown() {
+        mHandler.post(mNetlinkMonitor::stop);
     }
 
     private void maybeLog(String operation, String iface, LinkAddress address) {