Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cf02eb30 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add support for vendor indication that disclosures are benign." into main

parents 9462174a 148b92d5
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -15044,6 +15044,7 @@ package android.telephony {
    method public int getCellularIdentifier();
    method public int getNasProtocolMessage();
    method @NonNull public String getPlmn();
    method @FlaggedApi("com.android.internal.telephony.flags.vendor_specific_cellular_identifier_disclosure_indications") public boolean isBenign();
    method public boolean isEmergency();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field public static final int CELLULAR_IDENTIFIER_IMEI = 2; // 0x2
@@ -15061,6 +15062,8 @@ package android.telephony {
    field public static final int NAS_PROTOCOL_MESSAGE_IMSI_DETACH_INDICATION = 11; // 0xb
    field public static final int NAS_PROTOCOL_MESSAGE_LOCATION_UPDATE_REQUEST = 5; // 0x5
    field public static final int NAS_PROTOCOL_MESSAGE_REGISTRATION_REQUEST = 7; // 0x7
    field @FlaggedApi("com.android.internal.telephony.flags.vendor_specific_cellular_identifier_disclosure_indications") public static final int NAS_PROTOCOL_MESSAGE_THREAT_IDENTIFIER_FALSE = 12; // 0xc
    field @FlaggedApi("com.android.internal.telephony.flags.vendor_specific_cellular_identifier_disclosure_indications") public static final int NAS_PROTOCOL_MESSAGE_THREAT_IDENTIFIER_TRUE = 13; // 0xd
    field public static final int NAS_PROTOCOL_MESSAGE_TRACKING_AREA_UPDATE_REQUEST = 4; // 0x4
    field public static final int NAS_PROTOCOL_MESSAGE_UNKNOWN = 0; // 0x0
  }
+19 −1
Original line number Diff line number Diff line
@@ -74,6 +74,14 @@ public final class CellularIdentifierDisclosure implements Parcelable {
    /** IMEI DETATCH INDICATION. Reference: 3GPP TS 24.008 9.2.14.
     * Applies to 2g and 3g networks. Used for circuit-switched detach. */
    public static final int NAS_PROTOCOL_MESSAGE_IMSI_DETACH_INDICATION = 11;
    /** Vendor-specific enumeration to identify a disclosure as potentially benign.
     * Enables vendors to semantically classify disclosures based on their own logic. */
    @FlaggedApi(Flags.FLAG_VENDOR_SPECIFIC_CELLULAR_IDENTIFIER_DISCLOSURE_INDICATIONS)
    public static final int NAS_PROTOCOL_MESSAGE_THREAT_IDENTIFIER_FALSE = 12;
    /** Vendor-specific enumeration to identify a disclosure as potentially harmful.
     * Enables vendors to semantically classify disclosures based on their own logic. */
    @FlaggedApi(Flags.FLAG_VENDOR_SPECIFIC_CELLULAR_IDENTIFIER_DISCLOSURE_INDICATIONS)
    public static final int NAS_PROTOCOL_MESSAGE_THREAT_IDENTIFIER_TRUE = 13;

    /** @hide */
    @Retention(RetentionPolicy.SOURCE)
@@ -84,7 +92,9 @@ public final class CellularIdentifierDisclosure implements Parcelable {
            NAS_PROTOCOL_MESSAGE_AUTHENTICATION_AND_CIPHERING_RESPONSE,
            NAS_PROTOCOL_MESSAGE_REGISTRATION_REQUEST, NAS_PROTOCOL_MESSAGE_DEREGISTRATION_REQUEST,
            NAS_PROTOCOL_MESSAGE_CM_REESTABLISHMENT_REQUEST,
            NAS_PROTOCOL_MESSAGE_CM_SERVICE_REQUEST, NAS_PROTOCOL_MESSAGE_IMSI_DETACH_INDICATION})
            NAS_PROTOCOL_MESSAGE_CM_SERVICE_REQUEST, NAS_PROTOCOL_MESSAGE_IMSI_DETACH_INDICATION,
            NAS_PROTOCOL_MESSAGE_THREAT_IDENTIFIER_FALSE,
            NAS_PROTOCOL_MESSAGE_THREAT_IDENTIFIER_TRUE})
    public @interface NasProtocolMessage {
    }

@@ -156,6 +166,14 @@ public final class CellularIdentifierDisclosure implements Parcelable {
        return mIsEmergency;
    }

    /**
     * @return if the modem vendor classifies the disclosure as benign.
     */
    @FlaggedApi(Flags.FLAG_VENDOR_SPECIFIC_CELLULAR_IDENTIFIER_DISCLOSURE_INDICATIONS)
    public boolean isBenign() {
        return mNasProtocolMessage == NAS_PROTOCOL_MESSAGE_THREAT_IDENTIFIER_FALSE;
    }

    @Override
    public int describeContents() {
        return 0;