summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Chris Tate <ctate@android.com> 2016-05-03 18:27:34 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2016-05-03 18:27:36 +0000
commit44b28493cad3fcc2708c58a8bd1a40d6dd1e64eb (patch)
treee3a54beb4acffabe8368edfa7e37e535c7bb42df
parent65e22a20acd50876602f25b9b607aeea57682971 (diff)
parenteb87a4d969c8282ff0c257541a42e499a99d32c7 (diff)
Merge "Always log web link filter verification parameters" into nyc-dev
-rw-r--r--packages/StatementService/src/com/android/statementservice/IntentFilterVerificationReceiver.java17
1 files changed, 15 insertions, 2 deletions
diff --git a/packages/StatementService/src/com/android/statementservice/IntentFilterVerificationReceiver.java b/packages/StatementService/src/com/android/statementservice/IntentFilterVerificationReceiver.java
index 57809acc84b1..ba8e7a1d3db3 100644
--- a/packages/StatementService/src/com/android/statementservice/IntentFilterVerificationReceiver.java
+++ b/packages/StatementService/src/com/android/statementservice/IntentFilterVerificationReceiver.java
@@ -24,6 +24,7 @@ import android.content.pm.PackageManager.NameNotFoundException;
import android.os.Bundle;
import android.os.Handler;
import android.os.ResultReceiver;
+import android.text.TextUtils;
import android.util.Log;
import android.util.Patterns;
@@ -90,8 +91,6 @@ public final class IntentFilterVerificationReceiver extends BroadcastReceiver {
String packageName = inputExtras.getString(
PackageManager.EXTRA_INTENT_FILTER_VERIFICATION_PACKAGE_NAME);
- Log.i(TAG, "Verify IntentFilter for " + hosts);
-
Bundle extras = new Bundle();
extras.putString(DirectStatementService.EXTRA_RELATION, HANDLE_ALL_URLS_RELATION);
@@ -103,6 +102,7 @@ public final class IntentFilterVerificationReceiver extends BroadcastReceiver {
return;
}
+ ArrayList<String> finalHosts = new ArrayList<String>(hostList.length);
try {
ArrayList<String> sourceAssets = new ArrayList<String>();
for (String host : hostList) {
@@ -111,6 +111,7 @@ public final class IntentFilterVerificationReceiver extends BroadcastReceiver {
host = host.substring(2);
}
sourceAssets.add(createWebAssetString(scheme, host));
+ finalHosts.add(host);
}
extras.putStringArrayList(DirectStatementService.EXTRA_SOURCE_ASSET_DESCRIPTORS,
sourceAssets);
@@ -131,6 +132,9 @@ public final class IntentFilterVerificationReceiver extends BroadcastReceiver {
new IsAssociatedResultReceiver(
new Handler(), context.getPackageManager(), verificationId));
+ // Required for CTS: log a few details of the validcation operation to be performed
+ logValidationParametersForCTS(verificationId, scheme, finalHosts, packageName);
+
serviceIntent.putExtras(extras);
context.startService(serviceIntent);
}
@@ -139,6 +143,15 @@ public final class IntentFilterVerificationReceiver extends BroadcastReceiver {
}
}
+ // CTS requirement: logging of the validation parameters in a specific format
+ private static final String CTS_LOG_FORMAT =
+ "Verifying IntentFilter. verificationId:%d scheme:\"%s\" hosts:\"%s\" package:\"%s\".";
+ private void logValidationParametersForCTS(int verificationId, String scheme,
+ ArrayList<String> finalHosts, String packageName) {
+ String hostString = TextUtils.join(" ", finalHosts.toArray());
+ Log.i(TAG, String.format(CTS_LOG_FORMAT, verificationId, scheme, hostString, packageName));
+ }
+
private String createAndroidAssetString(Context context, String packageName)
throws NameNotFoundException {
if (!ANDROID_PACKAGE_NAME_PATTERN.matcher(packageName).matches()) {