From 5f21fc7462d1d908c52bacdf98cc3e04eb45172f Mon Sep 17 00:00:00 2001 From: yomna Date: Wed, 3 Jan 2024 17:51:37 +0000 Subject: [PATCH] Clarify securityAlgorithmsUpdated and add new null enums Per vendor feedback, adds SRTP_NULL, IMS_NULL, clarifies VoWiFi are reserved for future use, and when state for securityAlgorithmsUpdated is expected to be cleared. Bug: b/318426372, b/318425921, b/318426377, b/318427053 Test: m Change-Id: I465e97a445d330088fb58d2ccc9481cfe360fc07 --- .../radio/network/SecurityAlgorithm.aidl | 6 +++--- .../radio/network/IRadioNetworkIndication.aidl | 16 ++++++++-------- .../radio/network/SecurityAlgorithm.aidl | 10 +++++----- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SecurityAlgorithm.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SecurityAlgorithm.aidl index 3eb51e7e83..c590d2bede 100644 --- a/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SecurityAlgorithm.aidl +++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SecurityAlgorithm.aidl @@ -57,6 +57,7 @@ enum SecurityAlgorithm { NEA1 = 56, NEA2 = 57, NEA3 = 58, + IMS_NULL = 67, SIP_NULL = 68, AES_GCM = 69, AES_GMAC = 70, @@ -64,9 +65,8 @@ enum SecurityAlgorithm { DES_EDE3_CBC = 72, AES_EDE3_CBC = 73, HMAC_SHA1_96 = 74, - HMAC_SHA1_96_NULL = 75, - HMAC_MD5_96 = 76, - HMAC_MD5_96_NULL = 77, + HMAC_MD5_96 = 75, + SRTP_NULL = 86, SRTP_AES_COUNTER = 87, SRTP_AES_F8 = 88, SRTP_HMAC_SHA1 = 89, diff --git a/radio/aidl/android/hardware/radio/network/IRadioNetworkIndication.aidl b/radio/aidl/android/hardware/radio/network/IRadioNetworkIndication.aidl index 875a1b2e1a..da82b78d32 100644 --- a/radio/aidl/android/hardware/radio/network/IRadioNetworkIndication.aidl +++ b/radio/aidl/android/hardware/radio/network/IRadioNetworkIndication.aidl @@ -231,13 +231,12 @@ oneway interface IRadioNetworkIndication { /* * Indicates that a new ciphering or integrity algorithm was used for a particular voice, - * signaling, or data connection attempt for a given PLMN and/or access network. Due to - * power concerns, once a connection type has been reported on, follow-up reports about that + * signaling, or data connection for a given PLMN and/or access network. Due to power + * concerns, once a connection type has been reported on, follow-up reports about that * connection type are only generated if there is any change to the most-recently reported * encryption or integrity, or if the value of SecurityAlgorithmUpdate#isUnprotectedEmergency - * changes. Thus the AP is only to be notified when there is new information. A change only in - * cell ID should not trigger an update, as the design is intended to be agnostic to dual - * connectivity ("secondary serving cells"). + * changes. A change only in cell ID should not trigger an update, as the design is intended + * to be agnostic to dual connectivity ("secondary serving cells"). * * Sample scenario to further clarify "most-recently reported": * @@ -246,9 +245,10 @@ oneway interface IRadioNetworkIndication { * 3. User returns to original location and reconnects to the null-ciphered 3G network. Modem * should report this as it's different than the most-recently reported data from step (2). * - * List is reset upon rebooting thus info about initial connections is always passed to the AP - * after a reboot. List is also reset if the SIM is changed or if there has been a change in - * the access network. + * State is reset when (1) RadioState is transitioned to ON from any other state (e.g. radio + * is turned on during device boot, or modem boot), and (2) when CardState is transitioned + * to PRESENT from any other state (e.g. when SIM is inserted), or (3) if there is a change in + * access network (PLMN). * * @param type Type of radio indication * @param securityAlgorithmUpdate SecurityAlgorithmUpdate encapsulates details of security diff --git a/radio/aidl/android/hardware/radio/network/SecurityAlgorithm.aidl b/radio/aidl/android/hardware/radio/network/SecurityAlgorithm.aidl index fefa26edd0..19feeeff59 100644 --- a/radio/aidl/android/hardware/radio/network/SecurityAlgorithm.aidl +++ b/radio/aidl/android/hardware/radio/network/SecurityAlgorithm.aidl @@ -59,7 +59,8 @@ enum SecurityAlgorithm { NEA2 = 57, NEA3 = 58, - // SIP layer security (See 3GPP TS 33.203) + // IMS and SIP layer security (See 3GPP TS 33.203) + IMS_NULL = 67, SIP_NULL = 68, AES_GCM = 69, AES_GMAC = 70, @@ -67,16 +68,15 @@ enum SecurityAlgorithm { DES_EDE3_CBC = 72, AES_EDE3_CBC = 73, HMAC_SHA1_96 = 74, - HMAC_SHA1_96_NULL = 75, - HMAC_MD5_96 = 76, - HMAC_MD5_96_NULL = 77, + HMAC_MD5_96 = 75, // RTP (see 3GPP TS 33.328) + SRTP_NULL = 86, SRTP_AES_COUNTER = 87, SRTP_AES_F8 = 88, SRTP_HMAC_SHA1 = 89, - // ePDG (3GPP TS 33.402) + // ePDG (3GPP TS 33.402) (reserved for future use) ENCR_AES_GCM_16 = 99, ENCR_AES_CBC = 100, AUTH_HMAC_SHA2_256_128 = 101,