mirror of
https://github.com/Divested-Mobile/DivestOS-Build.git
synced 2024-10-01 01:35:54 -04:00
6fb0a581c3
Signed-off-by: Tad <tad@spotco.us>
75 lines
3.3 KiB
Diff
75 lines
3.3 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Thomas Stuart <tjstuart@google.com>
|
|
Date: Mon, 21 Nov 2022 17:38:21 -0800
|
|
Subject: [PATCH] enforce stricter rules when registering phoneAccounts
|
|
|
|
- include disable accounts when looking up accounts for a package to
|
|
check if the limit is reached (10)
|
|
- put a new limit of 10 supported schemes
|
|
- put a new limit of 256 characters per scheme
|
|
- put a new limit of 256 characters per address
|
|
- ensure the Icon can write to memory w/o throwing an exception
|
|
|
|
bug: 259064622
|
|
bug: 256819769
|
|
Test: cts + unit
|
|
Change-Id: Ia7d8d00d9de0fb6694ded6a80c40bd55d7fdf7a7
|
|
Merged-In: Ia7d8d00d9de0fb6694ded6a80c40bd55d7fdf7a7
|
|
(cherry picked from commit on googleplex-android-review.googlesource.com host: a66a3156e03fbd1c3a29015db9193d66f2709f98)
|
|
Merged-In: Ia7d8d00d9de0fb6694ded6a80c40bd55d7fdf7a7
|
|
---
|
|
.../java/android/telecom/PhoneAccount.java | 19 +++++++++++++++++++
|
|
1 file changed, 19 insertions(+)
|
|
|
|
diff --git a/telecomm/java/android/telecom/PhoneAccount.java b/telecomm/java/android/telecom/PhoneAccount.java
|
|
index 691e7cf1d34f..7d2f705bf7e7 100644
|
|
--- a/telecomm/java/android/telecom/PhoneAccount.java
|
|
+++ b/telecomm/java/android/telecom/PhoneAccount.java
|
|
@@ -393,6 +393,11 @@ public final class PhoneAccount implements Parcelable {
|
|
|
|
/**
|
|
* Sets the address. See {@link PhoneAccount#getAddress}.
|
|
+ * <p>
|
|
+ * Note: The entire URI value is limited to 256 characters. This check is
|
|
+ * enforced when registering the PhoneAccount via
|
|
+ * {@link TelecomManager#registerPhoneAccount(PhoneAccount)} and will cause an
|
|
+ * {@link IllegalArgumentException} to be thrown if URI is over 256.
|
|
*
|
|
* @param value The address of the phone account.
|
|
* @return The builder.
|
|
@@ -426,6 +431,10 @@ public final class PhoneAccount implements Parcelable {
|
|
|
|
/**
|
|
* Sets the icon. See {@link PhoneAccount#getIcon}.
|
|
+ * <p>
|
|
+ * Note: An {@link IllegalArgumentException} if the Icon cannot be written to memory.
|
|
+ * This check is enforced when registering the PhoneAccount via
|
|
+ * {@link TelecomManager#registerPhoneAccount(PhoneAccount)}
|
|
*
|
|
* @param icon The icon to set.
|
|
*/
|
|
@@ -459,6 +468,10 @@ public final class PhoneAccount implements Parcelable {
|
|
/**
|
|
* Specifies an additional URI scheme supported by the {@link PhoneAccount}.
|
|
*
|
|
+ * <p>
|
|
+ * Each URI scheme is limited to 256 characters. Adding a scheme over 256 characters will
|
|
+ * cause an {@link IllegalArgumentException} to be thrown when the account is registered.
|
|
+ *
|
|
* @param uriScheme The URI scheme.
|
|
* @return The builder.
|
|
*/
|
|
@@ -472,6 +485,12 @@ public final class PhoneAccount implements Parcelable {
|
|
/**
|
|
* Specifies the URI schemes supported by the {@link PhoneAccount}.
|
|
*
|
|
+ * <p>
|
|
+ * A max of 10 URI schemes can be added per account. Additionally, each URI scheme is
|
|
+ * limited to 256 characters. Adding more than 10 URI schemes or 256 characters on any
|
|
+ * scheme will cause an {@link IllegalArgumentException} to be thrown when the account
|
|
+ * is registered.
|
|
+ *
|
|
* @param uriSchemes The URI schemes.
|
|
* @return The builder.
|
|
*/
|