qcacmn: Add peer isolation support per vap
Configure the client as isolated peer if part of isolation list while creating/associating the node or adding the peer to the isolation list. Do not forward the packets to and from clients in isolation list instead accelerate to upper stack. CRs-Fixed: 2689868 Change-Id: I67fd4dee0fb76c993746cdd66c70c241d407239a
This commit is contained in:

committed by
nshrivas

parent
30f07a9dc1
commit
a497ea80aa
@@ -495,6 +495,13 @@ dp_rx_intrabss_fwd(struct dp_soc *soc,
|
||||
is_frag = qdf_nbuf_is_frag(nbuf);
|
||||
memset(nbuf->cb, 0x0, sizeof(nbuf->cb));
|
||||
|
||||
/* If the source or destination peer in the isolation
|
||||
* list then dont forward instead push to bridge stack.
|
||||
*/
|
||||
if (dp_get_peer_isolation(ta_peer) ||
|
||||
dp_get_peer_isolation(da_peer))
|
||||
return false;
|
||||
|
||||
/* linearize the nbuf just before we send to
|
||||
* dp_tx_send()
|
||||
*/
|
||||
@@ -544,6 +551,12 @@ dp_rx_intrabss_fwd(struct dp_soc *soc,
|
||||
if (!dp_rx_check_ndi_mdns_fwding(ta_peer, nbuf))
|
||||
goto end;
|
||||
|
||||
/* If the source peer in the isolation list
|
||||
* then dont forward instead push to bridge stack
|
||||
*/
|
||||
if (dp_get_peer_isolation(ta_peer))
|
||||
goto end;
|
||||
|
||||
nbuf_copy = qdf_nbuf_copy(nbuf);
|
||||
if (!nbuf_copy)
|
||||
goto end;
|
||||
|
Reference in New Issue
Block a user