SerialManager: Only allow opening files that are whitelisted serial port devices

Bug: 7367956

Change-Id: I82fd8d2694dda89332497d9eded5445a0262e12b
Signed-off-by: Mike Lockwood <lockwood@google.com>
diff --git a/services/java/com/android/server/SerialService.java b/services/java/com/android/server/SerialService.java
index 5d2b2a0..1abe458 100644
--- a/services/java/com/android/server/SerialService.java
+++ b/services/java/com/android/server/SerialService.java
@@ -51,7 +51,12 @@
 
     public ParcelFileDescriptor openSerialPort(String path) {
         mContext.enforceCallingOrSelfPermission(android.Manifest.permission.SERIAL_PORT, null);
-        return native_open(path);
+        for (int i = 0; i < mSerialPorts.length; i++) {
+            if (mSerialPorts[i].equals(path)) {
+                return native_open(path);
+            }
+        }
+        throw new IllegalArgumentException("Invalid serial port " + path);
     }
 
     private native ParcelFileDescriptor native_open(String path);