summaryrefslogtreecommitdiff
path: root/telephony/java
diff options
context:
space:
mode:
authorJayachandran C <jayachandranc@google.com>2021-06-25 18:07:54 -0700
committerJayachandran C <jayachandranc@google.com>2021-06-28 19:19:34 -0700
commitbd4bd964f442a41bbbfbf3604c0c9f7f0d467871 (patch)
tree4e911ec468219fd77f2bf4e722af66f154d19ffa /telephony/java
parentf4ecf18a39ad021f12deb22d53bad7206fe0213a (diff)
QOS: Check for portRange validity before filter matching
Bug: 191810683 Test: Manual atest com.android.internal.telephony.dataconnection.QosCallbackTrackerTest Change-Id: Iaad16f7efe4bfaea3abd296547b5c53426a29854
Diffstat (limited to 'telephony/java')
-rw-r--r--telephony/java/android/telephony/data/QosBearerFilter.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/telephony/java/android/telephony/data/QosBearerFilter.java b/telephony/java/android/telephony/data/QosBearerFilter.java
index 5642549d7313..54930d0266b7 100644
--- a/telephony/java/android/telephony/data/QosBearerFilter.java
+++ b/telephony/java/android/telephony/data/QosBearerFilter.java
@@ -57,6 +57,12 @@ public final class QosBearerFilter implements Parcelable {
public static final int QOS_PROTOCOL_UDP = android.hardware.radio.V1_6.QosProtocol.UDP;
public static final int QOS_PROTOCOL_ESP = android.hardware.radio.V1_6.QosProtocol.ESP;
public static final int QOS_PROTOCOL_AH = android.hardware.radio.V1_6.QosProtocol.AH;
+ public static final int QOS_MIN_PORT = android.hardware.radio.V1_6.QosPortRange.MIN;
+ /**
+ * Hardcoded inplace of android.hardware.radio.V1_6.QosPortRange.MAX as it
+ * returns -1 due to uint16_t to int conversion in java. (TODO: Fix the HAL)
+ */
+ public static final int QOS_MAX_PORT = 65535; // android.hardware.radio.V1_6.QosPortRange.MIN;
@QosProtocol
private int protocol;
@@ -229,6 +235,12 @@ public final class QosBearerFilter implements Parcelable {
return end;
}
+ public boolean isValid() {
+ return start >= QOS_MIN_PORT && start <= QOS_MAX_PORT
+ && end >= QOS_MIN_PORT && end <= QOS_MAX_PORT
+ && start <= end;
+ }
+
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
dest.writeInt(start);