From 66c34077c9bd31e4c109c599895fd5b8fd8be13c Mon Sep 17 00:00:00 2001 From: Jack Yu Date: Sat, 22 Jan 2022 12:42:04 -0800 Subject: [PATCH] Fixed several data issues 1. Added workaround for changing immutable capabilities until connectivity service supports it. 2. Fixed that logging tag suffix after transport changed. 3. Port VCN code from old data stack. 4. Fixed some cases that we need to tear down the underlying networks, but also inform data network controller of data setup fails, for example, no live network request or VCN requested tear down before creating the agent. 5. Fixed the incorrect link status report. 6. Attach/Detach network requests after network capabilities changed. 7. Support the legacy permanent fail cause carrier config. Fix: 215901070 Test: atest DataNetworkControllerTest Change-Id: Icd3b43cb897b09af3dc5a9bc90ac104457e34190 --- telephony/java/android/telephony/DataFailCause.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/telephony/java/android/telephony/DataFailCause.java b/telephony/java/android/telephony/DataFailCause.java index 56bf3039d209a..3a3b3632dc9bb 100644 --- a/telephony/java/android/telephony/DataFailCause.java +++ b/telephony/java/android/telephony/DataFailCause.java @@ -1083,6 +1083,13 @@ public final class DataFailCause { */ public static final int REQUEST_NOT_SUPPORTED = 0x1000A; + /** + * An internal setup data error initiated by telephony that no retry should be performed. + * + * @hide + */ + public static final int NO_RETRY_FAILURE = 0x1000B; + private static final Map sFailCauseMap; static { sFailCauseMap = new HashMap<>(); @@ -1515,6 +1522,8 @@ public final class DataFailCause { sFailCauseMap.put(DUPLICATE_CID, "DUPLICATE_CID"); sFailCauseMap.put(NO_DEFAULT_DATA, "NO_DEFAULT_DATA"); sFailCauseMap.put(SERVICE_TEMPORARILY_UNAVAILABLE, "SERVICE_TEMPORARILY_UNAVAILABLE"); + sFailCauseMap.put(REQUEST_NOT_SUPPORTED, "REQUEST_NOT_SUPPORTED"); + sFailCauseMap.put(NO_RETRY_FAILURE, "NO_RETRY_FAILURE"); } private DataFailCause() { @@ -1565,6 +1574,7 @@ public final class DataFailCause { } /** @hide */ + // TODO: Migrated to DataConfigManager public static boolean isPermanentFailure(@NonNull Context context, @DataFailureCause int failCause, int subId) { @@ -1621,6 +1631,7 @@ public final class DataFailCause { }; } + permanentFailureSet.add(NO_RETRY_FAILURE); sPermanentFailureCache.put(subId, permanentFailureSet); }