From 4411940b632293fb62913199a09b5977930a9555 Mon Sep 17 00:00:00 2001 From: David Su Date: Mon, 27 Jan 2020 13:26:52 -0800 Subject: [PATCH 1/3] Wifi: Rename removeDoubleQuotes to sanitizeSsid Keep removeDoubleQuotes as it is marked @UnsupportedAppUsage. Bug: 145745815 Test: compiles Change-Id: I68a16b64eba3d84265b5cf2c83b434dc4fc7fa3c --- api/system-current.txt | 2 +- wifi/java/android/net/wifi/WifiInfo.java | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/api/system-current.txt b/api/system-current.txt index 0b40553fa6a00..9faa9ddd95eec 100755 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -7580,7 +7580,7 @@ package android.net.wifi { method public boolean isEphemeral(); method public boolean isOsuAp(); method public boolean isPasspointAp(); - method @Nullable public static String removeDoubleQuotes(@Nullable String); + method @Nullable public static String sanitizeSsid(@Nullable String); field public static final String DEFAULT_MAC_ADDRESS = "02:00:00:00:00:00"; field public static final int INVALID_RSSI = -127; // 0xffffff81 } diff --git a/wifi/java/android/net/wifi/WifiInfo.java b/wifi/java/android/net/wifi/WifiInfo.java index f8d48c5403f7a..7c031eaaeaf4a 100644 --- a/wifi/java/android/net/wifi/WifiInfo.java +++ b/wifi/java/android/net/wifi/WifiInfo.java @@ -889,6 +889,13 @@ public class WifiInfo implements Parcelable { */ @Nullable @SystemApi + public static String sanitizeSsid(@Nullable String string) { + return removeDoubleQuotes(string); + } + + /** @hide */ + @UnsupportedAppUsage + @Nullable public static String removeDoubleQuotes(@Nullable String string) { if (string == null) return null; final int length = string.length(); From b4d222ab97aa64aa51ad4ff7f84c8fde2835302a Mon Sep 17 00:00:00 2001 From: David Su Date: Mon, 27 Jan 2020 13:27:50 -0800 Subject: [PATCH 2/3] Networking: Rename removeDoubleQuotes to sanitizeSsid Bug: 145745815 Test: compiles Change-Id: Iaa6f0d65cab556c24b0a9010427de8e6a02836c1 --- core/java/android/net/NetworkPolicyManager.java | 4 ++-- core/java/android/net/NetworkTemplate.java | 4 ++-- .../connectivity/NetworkNotificationManager.java | 12 ++++++------ 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/core/java/android/net/NetworkPolicyManager.java b/core/java/android/net/NetworkPolicyManager.java index 01800c6751fbd..14442a2088cdf 100644 --- a/core/java/android/net/NetworkPolicyManager.java +++ b/core/java/android/net/NetworkPolicyManager.java @@ -539,13 +539,13 @@ public class NetworkPolicyManager { /** @hide */ public static String resolveNetworkId(WifiConfiguration config) { - return WifiInfo.removeDoubleQuotes(config.isPasspoint() + return WifiInfo.sanitizeSsid(config.isPasspoint() ? config.providerFriendlyName : config.SSID); } /** @hide */ public static String resolveNetworkId(String ssid) { - return WifiInfo.removeDoubleQuotes(ssid); + return WifiInfo.sanitizeSsid(ssid); } /** @hide */ diff --git a/core/java/android/net/NetworkTemplate.java b/core/java/android/net/NetworkTemplate.java index 5e6c47a47a8e3..5498f74ba2cc9 100644 --- a/core/java/android/net/NetworkTemplate.java +++ b/core/java/android/net/NetworkTemplate.java @@ -32,7 +32,7 @@ import static android.net.NetworkStats.METERED_YES; import static android.net.NetworkStats.ROAMING_ALL; import static android.net.NetworkStats.ROAMING_NO; import static android.net.NetworkStats.ROAMING_YES; -import static android.net.wifi.WifiInfo.removeDoubleQuotes; +import static android.net.wifi.WifiInfo.sanitizeSsid; import android.compat.annotation.UnsupportedAppUsage; import android.os.Parcel; @@ -401,7 +401,7 @@ public class NetworkTemplate implements Parcelable { switch (ident.mType) { case TYPE_WIFI: return Objects.equals( - removeDoubleQuotes(mNetworkId), removeDoubleQuotes(ident.mNetworkId)); + sanitizeSsid(mNetworkId), sanitizeSsid(ident.mNetworkId)); default: return false; } diff --git a/services/core/java/com/android/server/connectivity/NetworkNotificationManager.java b/services/core/java/com/android/server/connectivity/NetworkNotificationManager.java index 2c415570d5fa4..25c761ab80ec8 100644 --- a/services/core/java/com/android/server/connectivity/NetworkNotificationManager.java +++ b/services/core/java/com/android/server/connectivity/NetworkNotificationManager.java @@ -188,14 +188,14 @@ public class NetworkNotificationManager { int icon = getIcon(transportType, notifyType); if (notifyType == NotificationType.NO_INTERNET && transportType == TRANSPORT_WIFI) { title = r.getString(R.string.wifi_no_internet, - WifiInfo.removeDoubleQuotes(nai.networkCapabilities.getSSID())); + WifiInfo.sanitizeSsid(nai.networkCapabilities.getSSID())); details = r.getString(R.string.wifi_no_internet_detailed); } else if (notifyType == NotificationType.PRIVATE_DNS_BROKEN) { if (transportType == TRANSPORT_CELLULAR) { title = r.getString(R.string.mobile_no_internet); } else if (transportType == TRANSPORT_WIFI) { title = r.getString(R.string.wifi_no_internet, - WifiInfo.removeDoubleQuotes(nai.networkCapabilities.getSSID())); + WifiInfo.sanitizeSsid(nai.networkCapabilities.getSSID())); } else { title = r.getString(R.string.other_networks_no_internet); } @@ -203,19 +203,19 @@ public class NetworkNotificationManager { } else if (notifyType == NotificationType.PARTIAL_CONNECTIVITY && transportType == TRANSPORT_WIFI) { title = r.getString(R.string.network_partial_connectivity, - WifiInfo.removeDoubleQuotes(nai.networkCapabilities.getSSID())); + WifiInfo.sanitizeSsid(nai.networkCapabilities.getSSID())); details = r.getString(R.string.network_partial_connectivity_detailed); } else if (notifyType == NotificationType.LOST_INTERNET && transportType == TRANSPORT_WIFI) { title = r.getString(R.string.wifi_no_internet, - WifiInfo.removeDoubleQuotes(nai.networkCapabilities.getSSID())); + WifiInfo.sanitizeSsid(nai.networkCapabilities.getSSID())); details = r.getString(R.string.wifi_no_internet_detailed); } else if (notifyType == NotificationType.SIGN_IN) { switch (transportType) { case TRANSPORT_WIFI: title = r.getString(R.string.wifi_available_sign_in, 0); details = r.getString(R.string.network_available_sign_in_detailed, - WifiInfo.removeDoubleQuotes(nai.networkCapabilities.getSSID())); + WifiInfo.sanitizeSsid(nai.networkCapabilities.getSSID())); break; case TRANSPORT_CELLULAR: title = r.getString(R.string.network_available_sign_in, 0); @@ -236,7 +236,7 @@ public class NetworkNotificationManager { break; } } else if (notifyType == NotificationType.LOGGED_IN) { - title = WifiInfo.removeDoubleQuotes(nai.networkCapabilities.getSSID()); + title = WifiInfo.sanitizeSsid(nai.networkCapabilities.getSSID()); details = r.getString(R.string.captive_portal_logged_in_detailed); } else if (notifyType == NotificationType.NETWORK_SWITCH) { String fromTransport = getTransportName(transportType); From 9c9c02ca9d4add4057e54d519f44fe0819c6859b Mon Sep 17 00:00:00 2001 From: David Su Date: Mon, 27 Jan 2020 13:28:03 -0800 Subject: [PATCH 3/3] SettingsLib: Rename removeDoubleQuotes to sanitizeSsid Bug: 145745815 Test: compiles Change-Id: I08fd795b8a92e0940e79d55dd37b699397fc0114 --- .../src/com/android/settingslib/NetworkPolicyEditor.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/SettingsLib/src/com/android/settingslib/NetworkPolicyEditor.java b/packages/SettingsLib/src/com/android/settingslib/NetworkPolicyEditor.java index b01fc85419579..f5aa652f31946 100644 --- a/packages/SettingsLib/src/com/android/settingslib/NetworkPolicyEditor.java +++ b/packages/SettingsLib/src/com/android/settingslib/NetworkPolicyEditor.java @@ -216,7 +216,7 @@ public class NetworkPolicyEditor { private static NetworkTemplate buildUnquotedNetworkTemplate(NetworkTemplate template) { if (template == null) return null; final String networkId = template.getNetworkId(); - final String strippedNetworkId = WifiInfo.removeDoubleQuotes(networkId); + final String strippedNetworkId = WifiInfo.sanitizeSsid(networkId); if (!TextUtils.equals(strippedNetworkId, networkId)) { return new NetworkTemplate( template.getMatchRule(), template.getSubscriberId(), strippedNetworkId);