Add try/catch blocks for incoming WificondControl params

Bug: 36608272
Test: compile, manual test that wifi connects and no error logs
Change-Id: I853d85813644fe74343c1bc322ad34ad6f1adf2b
diff --git a/service/java/com/android/server/wifi/WificondControl.java b/service/java/com/android/server/wifi/WificondControl.java
index c88a804..fdd0faf 100644
--- a/service/java/com/android/server/wifi/WificondControl.java
+++ b/service/java/com/android/server/wifi/WificondControl.java
@@ -328,7 +328,17 @@
             NativeScanResult[] nativeResults = mWificondScanner.getScanResults();
             for (NativeScanResult result : nativeResults) {
                 WifiSsid wifiSsid = WifiSsid.createFromByteArray(result.ssid);
-                String bssid = NativeUtil.macAddressFromByteArray(result.bssid);
+                String bssid;
+                try {
+                    bssid = NativeUtil.macAddressFromByteArray(result.bssid);
+                } catch (IllegalArgumentException e) {
+                    Log.e(TAG, "Illegal argument " + result.bssid, e);
+                    continue;
+                }
+                if (bssid == null) {
+                    Log.e(TAG, "Illegal null bssid");
+                    continue;
+                }
                 ScanResult.InformationElement[] ies =
                         InformationElementUtil.parseInformationElements(result.infoElement);
                 InformationElementUtil.Capabilities capabilities =
@@ -381,7 +391,12 @@
         if (hiddenNetworkSSIDs != null) {
             for (String ssid : hiddenNetworkSSIDs) {
                 HiddenNetwork network = new HiddenNetwork();
-                network.ssid = NativeUtil.byteArrayFromArrayList(NativeUtil.decodeSsid(ssid));
+                try {
+                    network.ssid = NativeUtil.byteArrayFromArrayList(NativeUtil.decodeSsid(ssid));
+                } catch (IllegalArgumentException e) {
+                    Log.e(TAG, "Illegal argument " + ssid, e);
+                    continue;
+                }
                 settings.hiddenNetworks.add(network);
             }
         }
@@ -414,8 +429,13 @@
                 PnoNetwork condNetwork = new PnoNetwork();
                 condNetwork.isHidden = (network.flags
                         & WifiScanner.PnoSettings.PnoNetwork.FLAG_DIRECTED_SCAN) != 0;
-                condNetwork.ssid =
-                        NativeUtil.byteArrayFromArrayList(NativeUtil.decodeSsid(network.ssid));
+                try {
+                    condNetwork.ssid =
+                            NativeUtil.byteArrayFromArrayList(NativeUtil.decodeSsid(network.ssid));
+                } catch (IllegalArgumentException e) {
+                    Log.e(TAG, "Illegal argument " + network.ssid, e);
+                    continue;
+                }
                 settings.pnoNetworks.add(condNetwork);
             }
         }