IBSS RSN: Do not start multiple Auth/Supp for same peer
This avoids an issue when a received EAPOL-Key frame from a peer is initiating IBSS RSN Authenticator and Supplicant for the peer and the following new-STA-in-IBSS event from the driver is adding yet another instance of Authenticator/Supplicant. The EAPOL-Key RX case was already checking whether an instance had been started; the driver new-STA event needs to do same.
This commit is contained in:
parent
50b05780c2
commit
6c9a98a20d
1 changed files with 9 additions and 0 deletions
|
@ -361,6 +361,15 @@ int ibss_rsn_start(struct ibss_rsn *ibss_rsn, const u8 *addr)
|
|||
{
|
||||
struct ibss_rsn_peer *peer;
|
||||
|
||||
for (peer = ibss_rsn->peers; peer; peer = peer->next) {
|
||||
if (os_memcmp(addr, peer->addr, ETH_ALEN) == 0) {
|
||||
wpa_printf(MSG_DEBUG, "RSN: IBSS Authenticator and "
|
||||
"Supplicant for peer " MACSTR " already "
|
||||
"running", MAC2STR(addr));
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
wpa_printf(MSG_DEBUG, "RSN: Starting IBSS Authenticator and "
|
||||
"Supplicant for peer " MACSTR, MAC2STR(addr));
|
||||
|
||||
|
|
Loading…
Reference in a new issue