diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-02-16 02:24:05 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-02-16 02:24:05 +0000 |
commit | 2036aa2e85d942007df7332f66d4dfc29472d529 (patch) | |
tree | 3e892a4129db607cc1e16ef81aa5c7b39fd674b9 | |
parent | 69579b6d87c0987396d018b0a7ba2048fe35a9a9 (diff) | |
parent | b469837ed336a619c7869ebbf61d98ff264154cb (diff) | |
download | libhardware_legacy-2036aa2e85d942007df7332f66d4dfc29472d529.tar.gz |
Snap for 9613524 from b469837ed336a619c7869ebbf61d98ff264154cb to udc-release
Change-Id: Id135b9ce2382790e7f1ed106007e09589c106d96
-rw-r--r-- | include/hardware_legacy/wifi_hal.h | 8 | ||||
-rw-r--r-- | include/hardware_legacy/wifi_nan.h | 67 |
2 files changed, 68 insertions, 7 deletions
diff --git a/include/hardware_legacy/wifi_hal.h b/include/hardware_legacy/wifi_hal.h index 494d653..5a3148a 100644 --- a/include/hardware_legacy/wifi_hal.h +++ b/include/hardware_legacy/wifi_hal.h @@ -287,6 +287,10 @@ typedef struct { typedef struct { /** + * Maximum number of links supported by the chip for MLO association. + */ + u32 max_mlo_association_link_count; + /** * Maximum number of Simultaneous Transmit and Receive (STR) links used * in Multi-Link Operation. The maximum number of STR links used can be * different from the maximum number of radios supported by the chip. @@ -1228,6 +1232,10 @@ typedef struct { */ wifi_error (*wifi_set_scan_mode)(const char * ifname, bool enable); + wifi_error (*wifi_nan_pairing_end)(transaction_id id, + wifi_interface_handle iface, + NanPairingEndRequest *msg); + /* * when adding new functions make sure to add stubs in * wifi_legacy_hal_stubs.cpp::initHalFuncTableWithStubs diff --git a/include/hardware_legacy/wifi_nan.h b/include/hardware_legacy/wifi_nan.h index 9c7397c..e0b93d8 100644 --- a/include/hardware_legacy/wifi_nan.h +++ b/include/hardware_legacy/wifi_nan.h @@ -94,7 +94,8 @@ typedef enum { NAN_PAIRING_INITIATOR_RESPONSE = 18, NAN_PAIRING_RESPONDER_RESPONSE = 19, NAN_BOOTSTRAPPING_INITIATOR_RESPONSE = 20, - NAN_BOOTSTRAPPING_RESPONDER_RESPONSE = 21 + NAN_BOOTSTRAPPING_RESPONDER_RESPONSE = 21, + NAN_PAIRING_END = 22 } NanResponseType; /* NAN Publish Types */ @@ -150,11 +151,11 @@ typedef enum { NAN_PAIRING_VERIFICATION = 1 } NanPairingRequestType; -/* AKM type */ +/* Nan AKM type */ typedef enum { SAE = 0, PASN = 1 -} Akm; +} NanAkm; /* NAN Channel Info */ typedef struct { @@ -275,7 +276,8 @@ typedef enum { /* Pairing bootstrapping Responder's response */ typedef enum { NAN_BOOTSTRAPPING_REQUEST_ACCEPT = 0, - NAN_BOOTSTRAPPING_REQUEST_REJECT = 1 + NAN_BOOTSTRAPPING_REQUEST_REJECT = 1, + NAN_BOOTSTRAPPING_REQUEST_COMEBACK = 2 } NanBootstrappingResponseCode; /* NAN DP channel config options */ @@ -2666,7 +2668,7 @@ typedef struct { /* AKM used for the pairing verification */ - Akm akm; + NanAkm akm; /* Whether should cache the negotiated NIK/NPK for future verification @@ -2678,6 +2680,11 @@ typedef struct { */ u8 nan_identity_key[NAN_IDENTITY_KEY_LEN]; + /* + NAN Cipher Suite Type + */ + u32 cipher_type; + } NanPairingRequest; /* @@ -2713,7 +2720,7 @@ typedef struct { /* AKM used for the pairing verification */ - Akm akm; + NanAkm akm; /* Whether should cache the negotiated NIK/NPK for future verification @@ -2724,8 +2731,21 @@ typedef struct { The Identity key for pairing, can be used for pairing verification */ u8 nan_identity_key[NAN_IDENTITY_KEY_LEN]; + + /* + NAN Cipher Suite Type + */ + u32 cipher_type; } NanPairingIndicationResponse; +typedef struct { + /* + Unique token Id generated on the initiator/responder side + used for a pairing session between two NAN devices + */ + u32 pairing_instance_id; +} NanPairingEndRequest; + /* Event indication received on the responder side when a Nan pairing session is initiated on the Initiator side @@ -2765,7 +2785,9 @@ typedef struct { /* The PMK excahnge between two devices*/ NanSecurityPmk npk; /* The AKM used during the key exchange*/ - Akm akm; + NanAkm akm; + /* NAN Cipher Suite Type */ + u32 cipher_type; } NpkSecurityAssociation; /* @@ -2816,6 +2838,12 @@ typedef struct { /* Proposed bootstrapping method */ u16 request_bootstrapping_method; + /* The length of cookie. */ + u32 cookie_length; + + /* Cookie for the follow up request */ + u8 cookie[]; + } NanBootstrappingRequest; /* NAN pairing bootstrapping response from responder to a initate request @@ -2877,6 +2905,14 @@ typedef struct { expected reason codes. */ NanStatusType reason_code; + /* The delay of bootstrapping in seconds */ + u32 come_back_delay; + + /* The length of cookie. */ + u32 cookie_length; + + /* Cookie received from the comeback response */ + u8 cookie[]; } NanBootstrappingConfirmInd; @@ -3248,6 +3284,23 @@ wifi_error nan_pairing_request(transaction_id id, wifi_interface_handle iface, wifi_error nan_pairing_indication_response(transaction_id id, wifi_interface_handle iface, NanPairingIndicationResponse* msg); +/**@brief nan_pairing_end + * Cancel and remove the existing Pairing setups + * + * @param transaction_id: + * @param wifi_interface_handle: + * @param NanPairingEndRequest: + * @return Synchronous wifi_error + * @return Asynchronous NotifyResponse CB return + * NAN_STATUS_SUCCESS + * NAN_STATUS_INVALID_PARAM + * NAN_STATUS_INTERNAL_FAILURE + * NAN_STATUS_PROTOCOL_FAILURE + * NAN_STATUS_INVALID_PAIRING_ID + */ +wifi_error nan_pairing_end(transaction_id id, wifi_interface_handle iface, + NanPairingEndRequest* msg); + /**@brief nan_bootstrapping_request * Initiate a NAN Bootstrapping session. * |