Allow hostapd wep_key# parameters to be cleared
Setting wep_key# to an empty string will now clear a previously configured key. This is needed to be able to change WEP configured AP to using WPA/WPA2 through the hostapd control interface SET commands. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
609be6f7c0
commit
20b1a9e238
1 changed files with 19 additions and 1 deletions
|
@ -768,7 +768,25 @@ static int hostapd_config_read_wep(struct hostapd_wep_keys *wep, int keyidx,
|
|||
{
|
||||
size_t len = os_strlen(val);
|
||||
|
||||
if (keyidx < 0 || keyidx > 3 || wep->key[keyidx] != NULL)
|
||||
if (keyidx < 0 || keyidx > 3)
|
||||
return -1;
|
||||
|
||||
if (len == 0) {
|
||||
int i, set = 0;
|
||||
|
||||
bin_clear_free(wep->key[keyidx], wep->len[keyidx]);
|
||||
wep->key[keyidx] = NULL;
|
||||
wep->len[keyidx] = 0;
|
||||
for (i = 0; i < NUM_WEP_KEYS; i++) {
|
||||
if (wep->key[i])
|
||||
set++;
|
||||
}
|
||||
if (!set)
|
||||
wep->keys_set = 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (wep->key[keyidx] != NULL)
|
||||
return -1;
|
||||
|
||||
if (val[0] == '"') {
|
||||
|
|
Loading…
Reference in a new issue