Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 63 additions & 0 deletions modules/wfa-qt/src/indigo_api_callback_dut.c
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,12 @@
#include "hs2_profile.h"
#include "common.h"

#ifdef CONFIG_WIFI_CERTIFICATE_LIB
#include <zephyr/net/wifi_certs.h>

int process_certificates(void);
#endif

struct interface_info *band_transmitter[16];
struct interface_info *band_first_wlan[16];
extern struct sockaddr_in *tool_addr;
Expand Down Expand Up @@ -1867,7 +1873,64 @@ static int configure_sta_handler(struct packet_wrapper *req, struct packet_wrapp
CHECK_RET();
ret = run_qt_command("SET_NETWORK 0 ieee80211w 2");
CHECK_RET();
#ifdef CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE
} else if (strstr(tlv->value, "WPA-EAP")) {
/*
* Process Certificates
*/

process_certificates();

struct {
int tlv_id;
const char *cmd_fmt;
const char *default_val;
bool use_tlv_value;
} config_cmds[] = {
{ TLV_EAP,
"SET_NETWORK 0 eap %s",
NULL, true },
{ TLV_IDENTITY,
"SET_NETWORK 0 identity \"%s\"",
NULL, true },
{ TLV_CA_CERT,
"SET_NETWORK 0 ca_cert \"%s\"",
"blob://ca_cert", false },
{ TLV_CLIENT_CERT,
"SET_NETWORK 0 client_cert \"%s\"",
"blob://client_cert", false },
{ TLV_PRIVATE_KEY,
"SET_NETWORK 0 private_key \"%s\"",
"blob://private_key", false },
};

for (size_t i = 0; i < ARRAY_SIZE(config_cmds); i++) {
tlv = find_wrapper_tlv_by_id(req, config_cmds[i].tlv_id);
if (tlv) {
memset(buffer, 0, sizeof(buffer));
if (config_cmds[i].use_tlv_value) {
CHECK_SNPRINTF(buffer, sizeof(buffer), ret,
config_cmds[i].cmd_fmt, tlv->value);
} else {
CHECK_SNPRINTF(buffer, sizeof(buffer), ret,
config_cmds[i].cmd_fmt,
config_cmds[i].default_val);
}
ret = run_qt_command(buffer);
CHECK_RET();
}
}

CHECK_SNPRINTF(buffer, sizeof(buffer),
ret, "SET_NETWORK 0 private_key_passwd \"whatever\"");
ret = run_qt_command(buffer);
CHECK_RET();
ret = run_qt_command("SET_NETWORK 0 ieee80211w 1");
CHECK_RET();
}
#else
}
#endif
}

tlv = find_wrapper_tlv_by_id(req, TLV_PROTO);
Expand Down
3 changes: 3 additions & 0 deletions samples/wifi/wfa_qt_app/overlay-enterprise.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
CONFIG_NRF_WIFI_DATA_HEAP_SIZE=80000
CONFIG_WIFI_CREDENTIALS=n
CONFIG_NRF70_RX_NUM_BUFS=16
13 changes: 13 additions & 0 deletions samples/wifi/wfa_qt_app/sample.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,19 @@ tests:
- ci_build
- sysbuild
- ci_samples_wifi
sample.nrf7002.enterprise_mode.wfa_qt_app:
sysbuild: true
build_only: true
extra_args:
- EXTRA_CONF_FILE:STRING="overlay-netusb.conf;overlay-enterprise.conf"
- wfa_qt_app_SNIPPET="wifi-enterprise"
integration_platforms:
- nrf7002dk/nrf5340/cpuapp
platform_allow: nrf7002dk/nrf5340/cpuapp
tags:
- ci_build
- sysbuild
- ci_samples_wifi
sample.nrf7002_eks.wfa_qt_app:
sysbuild: true
build_only: true
Expand Down
2 changes: 1 addition & 1 deletion west.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ manifest:
# https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/zephyr/guides/modules.html
- name: zephyr
repo-path: sdk-zephyr
revision: bc6d4d7b667e68d807901fcd31413cf6aa3c0b19
revision: 331f27b4aa44c555882267c531c71e6d2e4b96a4
import:
# In addition to the zephyr repository itself, NCS also
# imports the contents of zephyr/west.yml at the above
Expand Down
Loading