Initial bring-up support

Change-Id: I125963d69c3a24fa17829f8fb7bbc80a9954c094
Revert "Initial bring-up support"

This reverts commit fc4fba5e675ad905990f53f674101a9d746acbbf

Change-Id: I32cb8b886ceb147e1ed83628e6db13b6e269ff3b
Extend EAPOL frames processing workaround for roaming cases

Commit 1ff733383f3d5c73233ef452a738765667021609 added a mechanism to
work around issues due to association events and EAPOL RX events being
getting reordered. However, this applied only for the case where
wpa_supplicant is not in associated state. The same issue can happen in
roaming case with drivers that perform BSS selection internally (or in
firmware). Handle that case similarly by delaying received EAPOL frame
processing if the source address of the EAPOL frame does not match the
current BSSID.

Since wired IEEE 802.1X do not have BSSID, make this additional
workaround conditional on BSSID match having been observed during the
previous association.

This fixes issues where the initial EAPOL frame after reassociation was
either dropped (e.g., due to replay counter not increasing) or replied
to with incorrect destination address (the BSSID of the old AP). This
can result in significantly more robust roaming behavior with drivers
that do not use wpa_supplicant for BSS selection.

Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
wpa_supplicant_8:Support to pass Access Control lists for softap.

Added new IEs to set_beacon to pass black list and white lists
from userspace to the driver.

Change-Id: I28fbbb94a06f72600df57d44ceec8b87c31c5d57
Merge "wpa_supplicant_8:Support to pass Access Control lists for softap."
P2P: make p2p_stop_find_for_freq to send EVENT P2P_FIND_STOPPED.

sending p2p_find_stopped event when p2p->state is either in
search state or in waiting to search or waiting to continue search state.
CRs-fixed: 434560

Change-Id: Id1a868cdbac93f3f1ab16f5f1ec00bd9dae2eb20
P2P: Share a single function for GO channel selection.

The exact same mechanism was used for determining the operating channel
at the device that becomes the GO regardless of whether this was
triggered by reception of GO Negotiation Request of Response frame. Use
a shared function to avoid duplicated implementation and potential
differences in the future.

Change-Id: Idf367dc3fbbf5e0f828f53f272ee2f24c14ecd7b
Signed-hostap: Jouni Malinen <j@w1.fi>
P2P: Allow all channels with multi-channel concurrency.

If the driver indicates support for multi-channel concurrency, change
the p2p_connect behavior to not force the current operating channel, but
instead, just mark it as preferred for GO Negotiation. This change
applies only for the case when the freq parameter is not used with the
p2p_connect command.

Change-Id: I9db61b0bc03eb1aeedec8a4d76274791f050e51f
Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
P2P: Set FORCE_FREQ flag as part of p2p_prepare_channel().

Both p2p_connect and p2p_authorize use the same functionality to select
the channel preferences for GO Negotiation. The part of setting this
device flag was copied to each function, but it can also be handled by
the shared function after some reordering of code.

Change-Id: I89ec2d68dca8f143b4826887c673d486d435aa45
Signed-hostap: Jouni Malinen <j@w1.fi>
P2P: Do not allow re-selection of GO channel if forced_freq in use.

Even if the peer does not accept the forced channel, we should not allow
the forced_freq parameter to be be overridden, i.e., such a case needs
to result in GO Negotiation failure.

Change-Id: Ib72a1763c5d0deb3e04e509ae67f0227d0dbf31f
Signed-hostap: Jouni Malinen <j@w1.fi>
P2P: Always re-select operating channel if not hard coded.

Since the operating channel is randomly set to 1/6/11 on init, which is
commonly included in the channel intersection, we were effectively
ignoring the set of P2P preferred channels when trying to improve
channel selection after having received peer information. Fix this by
trying to get the best channel we can, unless the user hard coded the
operating channel in the configuration file or p2p_connect command. Fall
back to the initial randomly selected channel if a better one cannot be
chosen.

Change-Id: I330621d9b15afd4a2a033bbf82d97df8cd4b16f3
Signed-hostap: Arik Nemtsov <arik@wizery.com>
P2P: Document operating channel selection functions.

Change-Id: Ibcca26cf0aed5b86a6e1761d7cb80b07f74888cf
Signed-hostap: Jouni Malinen <j@w1.fi>
Merge "P2P: make p2p_stop_find_for_freq to send EVENT P2P_FIND_STOPPED."
Merge "P2P: Share a single function for GO channel selection."
Merge "P2P: Allow all channels with multi-channel concurrency."
Merge "P2P: Set FORCE_FREQ flag as part of p2p_prepare_channel()."
Merge "P2P: Do not allow re-selection of GO channel if forced_freq in use."
Merge "P2P: Always re-select operating channel if not hard coded."
Merge "P2P: Document operating channel selection functions."
wpa_supplicant_8: Don't expire peers when in P2P_PENDING_PD.

A p2p_expiration_timeout during Provisional Discovery (when PD
request is sent before p2p_connect) shall result in the device
entry getting removed.Blocking the same from getting removed .

Change-Id: I077d4e03a756c5cca0f2e05152aca7fe400e6cb6
(cherry picked from commit 5a5ea05885457412de6f1dabce73d92865c5a75e)