diff --git a/src/config.c b/src/config.c index d77f565a243f8e9151ae40894750f72ff1ce50c3..0f753393caf227e8518620de400c64f7048e128a 100644 --- a/src/config.c +++ b/src/config.c @@ -745,6 +745,7 @@ static int cntlr_config_get_credentials(struct controller_config *c, }; struct uci_option *tb[NUM_CREDS]; struct iface_credential *cred; + bool use_default_security = false; if (c->num_bss >= 32) return -1; @@ -802,6 +803,8 @@ static int cntlr_config_get_credentials(struct controller_config *c, } //TODO: ciphers (if any) + } else { + use_default_security = true; } if (tb[CRED_KEY]) @@ -831,6 +834,12 @@ static int cntlr_config_get_credentials(struct controller_config *c, cred->mode = AP_WIFI_FBSS; } + if (use_default_security) { + cred->sec |= WIFI_SECURITY_WPA3PSK; + if (!!(cred->multi_ap & 2)) + cred->sec |= WIFI_SECURITY_WPA3PSK_T; + } + if (tb[CRED_D_BSTA]) { struct uci_element *x;