hostapd(hidl): Check for psk length only for psk network config
Bug: 72386820
Test: a) mmm -j128 hardware/interfaces/wifi/hostapd/1.0/vts/functional/
b) adb push
out/target/product/taimen/data/nativetest/VtsHalWifiHostapdV1_0TargetTest/
VtsHalWifiHostapdV1_0TargetTest /data/
c) adb shell /data/VtsHalWifiHostapdV1_0TargetTest
Change-Id: I71c83cc82da7a3cda66787cc15618b4b8d3ec172
diff --git a/hostapd/hidl/1.0/hostapd.cpp b/hostapd/hidl/1.0/hostapd.cpp
index abd4f3b..04e2840 100644
--- a/hostapd/hidl/1.0/hostapd.cpp
+++ b/hostapd/hidl/1.0/hostapd.cpp
@@ -71,14 +71,15 @@
MSG_ERROR, "Invalid SSID size: %zu", nw_params.ssid.size());
return "";
}
- if (nw_params.pskPassphrase.size() <
- static_cast<uint32_t>(
- IHostapd::ParamSizeLimits::
- WPA2_PSK_PASSPHRASE_MIN_LEN_IN_BYTES) ||
- nw_params.pskPassphrase.size() >
- static_cast<uint32_t>(
- IHostapd::ParamSizeLimits::
- WPA2_PSK_PASSPHRASE_MAX_LEN_IN_BYTES)) {
+ if ((nw_params.encryptionType != IHostapd::EncryptionType::NONE) &&
+ (nw_params.pskPassphrase.size() <
+ static_cast<uint32_t>(
+ IHostapd::ParamSizeLimits::
+ WPA2_PSK_PASSPHRASE_MIN_LEN_IN_BYTES) ||
+ nw_params.pskPassphrase.size() >
+ static_cast<uint32_t>(
+ IHostapd::ParamSizeLimits::
+ WPA2_PSK_PASSPHRASE_MAX_LEN_IN_BYTES))) {
wpa_printf(
MSG_ERROR, "Invalid psk passphrase size: %zu",
nw_params.pskPassphrase.size());