Merge "Increase the timeout for the aadb test to 15 minutes." into marshmallow-cts-dev
diff --git a/hostsidetests/devicepolicy/app/WidgetProvider/src/com/android/cts/widgetprovider/SimpleAppWidgetHostService.java b/hostsidetests/devicepolicy/app/WidgetProvider/src/com/android/cts/widgetprovider/SimpleAppWidgetHostService.java
index b5b6003..6b9a2af 100644
--- a/hostsidetests/devicepolicy/app/WidgetProvider/src/com/android/cts/widgetprovider/SimpleAppWidgetHostService.java
+++ b/hostsidetests/devicepolicy/app/WidgetProvider/src/com/android/cts/widgetprovider/SimpleAppWidgetHostService.java
@@ -31,6 +31,7 @@
import android.os.Message;
import android.os.Messenger;
import android.os.RemoteException;
+import android.os.SystemClock;
import android.os.UserHandle;
import android.os.UserManager;
import android.util.Log;
@@ -58,6 +59,8 @@
private static final int RESULT_INTERRUPTED = 3;
private static final int RESULT_TIMEOUT = 4;
+ private static final long GET_PROVIDER_TIMEOUT_MILLIS = 30 * 1000; // 30 seconds
+
public static final String USER_EXTRA = "user-extra";
public static final String PACKAGE_EXTRA = "package-extra";
public static final String REPLY_EXTRA = "reply-extra";
@@ -213,8 +216,10 @@
}
public AppWidgetProviderInfo getProvider(Bundle params) throws InterruptedException {
+ final long startTime = SystemClock.elapsedRealtime();
+ long nextTimeout = GET_PROVIDER_TIMEOUT_MILLIS;
String packageName = params.getString(PACKAGE_EXTRA);
- while (mSemaphore.tryAcquire(30, TimeUnit.SECONDS)) {
+ while ((nextTimeout > 0) && mSemaphore.tryAcquire(nextTimeout, TimeUnit.MILLISECONDS)) {
mSemaphore.drainPermits();
Log.d(TAG, "checking for " + packageName + " " + mUserHandle);
synchronized (this) {
@@ -225,6 +230,8 @@
return providerInfo;
}
}
+ nextTimeout = startTime + GET_PROVIDER_TIMEOUT_MILLIS
+ - SystemClock.elapsedRealtime();
}
}
return null;
diff --git a/tests/tests/security/src/android/security/cts/BannedFilesTest.java b/tests/tests/security/src/android/security/cts/BannedFilesTest.java
index 00c4631..83d979d 100644
--- a/tests/tests/security/src/android/security/cts/BannedFilesTest.java
+++ b/tests/tests/security/src/android/security/cts/BannedFilesTest.java
@@ -139,4 +139,15 @@
assertTrue("File \"" + file + "\" is setUID", (fs.mode & FileUtils.S_ISUID) == 0);
assertTrue("File \"" + file + "\" is setGID", (fs.mode & FileUtils.S_ISGID) == 0);
}
+
+ /**
+ * Detect "rootmydevice" vulnerability
+ *
+ * References:
+ *
+ * http://www.theregister.co.uk/2016/05/09/allwinners_allloser_custom_kernel_has_a_nasty_root_backdoor/
+ */
+ public void testNoSunxiDebug() {
+ assertFalse("/proc/sunxi_debug/sunxi_debug", new File("/proc/sunxi_debug/sunxi_debug").exists());
+ }
}