Loading src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragment.java +8 −1 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import android.os.SimpleClock; import android.os.SystemClock; import android.provider.Settings; import android.text.TextUtils; import android.util.EventLog; import android.util.Log; import android.view.LayoutInflater; import android.view.View; Loading Loading @@ -518,7 +519,13 @@ public class AddAppNetworksFragment extends InstrumentedFragment implements UiConfigurationItem(String displayedSsid, WifiNetworkSuggestion wifiNetworkSuggestion, int index, int level) { if (displayedSsid.contains("\n") || displayedSsid.contains("\r")) { mDisplayedSsid = displayedSsid.replaceAll("\\r|\\n", ""); Log.e(TAG, "Ignore CRLF strings in display SSIDs to avoid display errors!"); EventLog.writeEvent(0x534e4554, "224545390", -1 /* UID */, "CRLF injection"); } else { mDisplayedSsid = displayedSsid; } mWifiNetworkSuggestion = wifiNetworkSuggestion; mIndex = index; mLevel = level; Loading tests/robotests/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragmentTest.java +30 −0 Original line number Diff line number Diff line Loading @@ -455,6 +455,36 @@ public class AddAppNetworksFragmentTest { AddAppNetworksFragment.MESSAGE_SHOW_SAVE_FAILED)).isTrue(); } @Test public void uiConfigurationItem_putCrToDisplayedSsid_shouldRemoveCr() { String testSsid = "\r" + FAKE_NEW_WPA_SSID + "\r"; AddAppNetworksFragment.UiConfigurationItem item = new AddAppNetworksFragment.UiConfigurationItem(testSsid, null, 0, 0); assertThat(item.mDisplayedSsid).isEqualTo(FAKE_NEW_WPA_SSID); } @Test public void uiConfigurationItem_putLfToDisplayedSsid_shouldRemoveLf() { String testSsid = "\n" + FAKE_NEW_WPA_SSID + "\n"; AddAppNetworksFragment.UiConfigurationItem item = new AddAppNetworksFragment.UiConfigurationItem(testSsid, null, 0, 0); assertThat(item.mDisplayedSsid).isEqualTo(FAKE_NEW_WPA_SSID); } @Test public void uiConfigurationItem_putCrLfToDisplayedSsid_shouldRemoveCrLf() { String testSsid = "\r\n" + FAKE_NEW_WPA_SSID + "\r\n"; AddAppNetworksFragment.UiConfigurationItem item = new AddAppNetworksFragment.UiConfigurationItem(testSsid, null, 0, 0); assertThat(item.mDisplayedSsid).isEqualTo(FAKE_NEW_WPA_SSID); } private void setUpOneScannedNetworkWithScanedLevel4() { final ArrayList list = new ArrayList<>(); list.add(mWifiEntry); Loading Loading
src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragment.java +8 −1 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import android.os.SimpleClock; import android.os.SystemClock; import android.provider.Settings; import android.text.TextUtils; import android.util.EventLog; import android.util.Log; import android.view.LayoutInflater; import android.view.View; Loading Loading @@ -518,7 +519,13 @@ public class AddAppNetworksFragment extends InstrumentedFragment implements UiConfigurationItem(String displayedSsid, WifiNetworkSuggestion wifiNetworkSuggestion, int index, int level) { if (displayedSsid.contains("\n") || displayedSsid.contains("\r")) { mDisplayedSsid = displayedSsid.replaceAll("\\r|\\n", ""); Log.e(TAG, "Ignore CRLF strings in display SSIDs to avoid display errors!"); EventLog.writeEvent(0x534e4554, "224545390", -1 /* UID */, "CRLF injection"); } else { mDisplayedSsid = displayedSsid; } mWifiNetworkSuggestion = wifiNetworkSuggestion; mIndex = index; mLevel = level; Loading
tests/robotests/src/com/android/settings/wifi/addappnetworks/AddAppNetworksFragmentTest.java +30 −0 Original line number Diff line number Diff line Loading @@ -455,6 +455,36 @@ public class AddAppNetworksFragmentTest { AddAppNetworksFragment.MESSAGE_SHOW_SAVE_FAILED)).isTrue(); } @Test public void uiConfigurationItem_putCrToDisplayedSsid_shouldRemoveCr() { String testSsid = "\r" + FAKE_NEW_WPA_SSID + "\r"; AddAppNetworksFragment.UiConfigurationItem item = new AddAppNetworksFragment.UiConfigurationItem(testSsid, null, 0, 0); assertThat(item.mDisplayedSsid).isEqualTo(FAKE_NEW_WPA_SSID); } @Test public void uiConfigurationItem_putLfToDisplayedSsid_shouldRemoveLf() { String testSsid = "\n" + FAKE_NEW_WPA_SSID + "\n"; AddAppNetworksFragment.UiConfigurationItem item = new AddAppNetworksFragment.UiConfigurationItem(testSsid, null, 0, 0); assertThat(item.mDisplayedSsid).isEqualTo(FAKE_NEW_WPA_SSID); } @Test public void uiConfigurationItem_putCrLfToDisplayedSsid_shouldRemoveCrLf() { String testSsid = "\r\n" + FAKE_NEW_WPA_SSID + "\r\n"; AddAppNetworksFragment.UiConfigurationItem item = new AddAppNetworksFragment.UiConfigurationItem(testSsid, null, 0, 0); assertThat(item.mDisplayedSsid).isEqualTo(FAKE_NEW_WPA_SSID); } private void setUpOneScannedNetworkWithScanedLevel4() { final ArrayList list = new ArrayList<>(); list.add(mWifiEntry); Loading