summaryrefslogtreecommitdiffstats
path: root/tests/wifitests/src/com/android/server/wifi/scanner
diff options
context:
space:
mode:
authorxshu <xshu@google.com>2018-01-26 16:09:34 -0800
committerxshu <xshu@google.com>2018-02-08 10:27:45 -0800
commit79acd709be087ef72bf851ec9882c7ecf18bc2a7 (patch)
tree9d391c26119d348d01b3fc7e008451c5b2ee8972 /tests/wifitests/src/com/android/server/wifi/scanner
parentc08cad95aa5559d849820136d6ba0606d6698419 (diff)
downloadandroid_frameworks_opt_net_wifi-79acd709be087ef72bf851ec9882c7ecf18bc2a7.tar.gz
android_frameworks_opt_net_wifi-79acd709be087ef72bf851ec9882c7ecf18bc2a7.tar.bz2
android_frameworks_opt_net_wifi-79acd709be087ef72bf851ec9882c7ecf18bc2a7.zip
Add null check to prevent security exploit
Bug: 34230372 Test: compile, run ./frameworks/opt/net/wifi/tests/wifitests/runtests.sh Change-Id: Id6951be18a17447c199ff54a86d66f322b091867
Diffstat (limited to 'tests/wifitests/src/com/android/server/wifi/scanner')
-rw-r--r--tests/wifitests/src/com/android/server/wifi/scanner/WifiScanningServiceTest.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/wifitests/src/com/android/server/wifi/scanner/WifiScanningServiceTest.java b/tests/wifitests/src/com/android/server/wifi/scanner/WifiScanningServiceTest.java
index 9cf2cc944..24f1abccb 100644
--- a/tests/wifitests/src/com/android/server/wifi/scanner/WifiScanningServiceTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/scanner/WifiScanningServiceTest.java
@@ -61,6 +61,7 @@ import android.os.Binder;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
+import android.os.Messenger;
import android.os.RemoteException;
import android.os.WorkSource;
import android.os.test.TestLooper;
@@ -2272,4 +2273,22 @@ public class WifiScanningServiceTest {
verifySingleScanCompletedReceived(order, handler, requestId);
verifyNoMoreInteractions(handler);
}
+
+ /**
+ * Verifies that null msg.replyTo is handled properly
+ */
+ @Test
+ public void nullReplyToInMsgIsHandled() throws RemoteException {
+ startServiceAndLoadDriver();
+ mWifiScanningServiceImpl.setWifiHandlerLogForTest(mLog);
+ final Message message = Message.obtain();
+ message.what = AsyncChannel.CMD_CHANNEL_FULL_CONNECTION;
+ message.replyTo = null;
+
+ // can't use BidirectionalAsyncChannel to send message because that
+ // will override message.replyTo to non-null
+ Messenger messenger = mWifiScanningServiceImpl.getMessenger();
+ messenger.send(message);
+ verify(mFrameworkFacade, never()).makeWifiAsyncChannel(anyString());
+ }
}