qcacmn: Exchange CSID cap and GTK param
To support group NDP security, WiFi-HAL and firmware introduces two new parameters (csid_cap and gtk_required) in NDP initiator request, responder requestor and NDP indication event. Host driver will retrieve the CSID capabilities and GTK parameter and parse it to firmware in NDP Initiator and Responder request TLV. Also, driver extract these parameters from NDP indication TLV and will pass to Wifi-HAL in vendor event. Change-Id: I23483141219e4224bb76ed209aee46e131eaa747 CRs-Fixed: 3583154
This commit is contained in:

committed by
Rahul Choudhary

parent
56ee84d4e4
commit
94ce1bb20d
@@ -406,6 +406,8 @@ static QDF_STATUS nan_ndp_initiator_req_tlv(wmi_unified_t wmi_handle,
|
||||
cmd->nan_csid = ndp_req->ncs_sk_type;
|
||||
cmd->nan_passphrase_len = ndp_req->passphrase.passphrase_len;
|
||||
cmd->nan_servicename_len = ndp_req->service_name.service_name_len;
|
||||
cmd->nan_csid_cap = ndp_req->ndp_add_params.csid_cap;
|
||||
cmd->nan_gtk_required = ndp_req->ndp_add_params.gtk;
|
||||
|
||||
ch_tlv = (wmi_channel *)&cmd[1];
|
||||
WMITLV_SET_HDR(ch_tlv, WMITLV_TAG_STRUC_wmi_channel,
|
||||
@@ -462,6 +464,9 @@ static QDF_STATUS nan_ndp_initiator_req_tlv(wmi_unified_t wmi_handle,
|
||||
cmd->ndp_cfg_len, cmd->ndp_app_info_len, cmd->nan_pmk_len,
|
||||
cmd->nan_passphrase_len, cmd->nan_servicename_len);
|
||||
|
||||
wmi_debug("ndp_csid_cap %d, ndp_gtk_required %d", cmd->nan_csid_cap,
|
||||
cmd->nan_gtk_required);
|
||||
|
||||
wmi_mtrace(WMI_NDP_INITIATOR_REQ_CMDID, cmd->vdev_id, 0);
|
||||
status = wmi_unified_cmd_send(wmi_handle, buf, len,
|
||||
WMI_NDP_INITIATOR_REQ_CMDID);
|
||||
@@ -530,6 +535,8 @@ static QDF_STATUS nan_ndp_responder_req_tlv(wmi_unified_t wmi_handle,
|
||||
cmd->nan_csid = req->ncs_sk_type;
|
||||
cmd->nan_passphrase_len = req->passphrase.passphrase_len;
|
||||
cmd->nan_servicename_len = req->service_name.service_name_len;
|
||||
cmd->nan_csid_cap = req->ndp_add_params.csid_cap;
|
||||
cmd->nan_gtk_required = req->ndp_add_params.gtk;
|
||||
|
||||
tlv_ptr = (uint8_t *)&cmd[1];
|
||||
WMITLV_SET_HDR(tlv_ptr, WMITLV_TAG_ARRAY_BYTE, ndp_cfg_len);
|
||||
@@ -584,6 +591,9 @@ static QDF_STATUS nan_ndp_responder_req_tlv(wmi_unified_t wmi_handle,
|
||||
cmd->nan_pmk_len, cmd->nan_passphrase_len,
|
||||
cmd->nan_servicename_len);
|
||||
|
||||
wmi_debug("ndp_csid_cap %d, ndp_gtk_required %d", cmd->nan_csid_cap,
|
||||
cmd->nan_gtk_required);
|
||||
|
||||
wmi_mtrace(WMI_NDP_RESPONDER_REQ_CMDID, cmd->vdev_id, 0);
|
||||
status = wmi_unified_cmd_send(wmi_handle, buf, len,
|
||||
WMI_NDP_RESPONDER_REQ_CMDID);
|
||||
@@ -813,13 +823,15 @@ static QDF_STATUS extract_ndp_ind_tlv(wmi_unified_t wmi_handle,
|
||||
rsp->ndp_instance_id = fixed_params->ndp_instance_id;
|
||||
rsp->role = fixed_params->self_ndp_role;
|
||||
rsp->policy = fixed_params->accept_policy;
|
||||
rsp->ndp_add_params.csid_cap = fixed_params->nan_csid_cap;
|
||||
rsp->ndp_add_params.gtk = fixed_params->nan_gtk_required;
|
||||
|
||||
WMI_MAC_ADDR_TO_CHAR_ARRAY(&fixed_params->peer_ndi_mac_addr,
|
||||
rsp->peer_mac_addr.bytes);
|
||||
WMI_MAC_ADDR_TO_CHAR_ARRAY(&fixed_params->peer_discovery_mac_addr,
|
||||
rsp->peer_discovery_mac_addr.bytes);
|
||||
|
||||
wmi_debug("WMI_NDP_INDICATION_EVENTID(0x%X) received. vdev %d service_instance %d, ndp_instance %d, role %d, policy %d csid: %d, scid_len: %d, peer_addr: "QDF_MAC_ADDR_FMT", peer_disc_addr: "QDF_MAC_ADDR_FMT" ndp_cfg - %d bytes ndp_app_info - %d bytes",
|
||||
wmi_debug("WMI_NDP_INDICATION_EVENTID(0x%X) received. vdev %d service_instance %d, ndp_instance %d, role %d, policy %d csid: %d, scid_len: %d, peer_addr: "QDF_MAC_ADDR_FMT", peer_disc_addr: "QDF_MAC_ADDR_FMT" ndp_cfg - %d bytes ndp_app_info - %d bytes ndp_csid_caps %d, ndp_gtk_required %d",
|
||||
WMI_NDP_INDICATION_EVENTID, fixed_params->vdev_id,
|
||||
fixed_params->service_instance_id,
|
||||
fixed_params->ndp_instance_id, fixed_params->self_ndp_role,
|
||||
@@ -828,7 +840,8 @@ static QDF_STATUS extract_ndp_ind_tlv(wmi_unified_t wmi_handle,
|
||||
QDF_MAC_ADDR_REF(rsp->peer_mac_addr.bytes),
|
||||
QDF_MAC_ADDR_REF(rsp->peer_discovery_mac_addr.bytes),
|
||||
fixed_params->ndp_cfg_len,
|
||||
fixed_params->ndp_app_info_len);
|
||||
fixed_params->ndp_app_info_len, rsp->ndp_add_params.csid_cap,
|
||||
rsp->ndp_add_params.gtk);
|
||||
|
||||
rsp->ncs_sk_type = fixed_params->nan_csid;
|
||||
if (event->ndp_cfg) {
|
||||
|
Reference in New Issue
Block a user