AP: Add support for multicast-to-unicast conversion for DGAF Disable
When DGAF Disable is on, perform multicast-to-unicast for DHCP packets and Router Advertisement packets. This is a requirement for Hotspot 2.0. Signed-off-by: Kyeyoon Park <kyeyoonp@qca.qualcomm.com>
This commit is contained in:
parent
bd00c4311c
commit
47261405d7
2 changed files with 11 additions and 0 deletions
|
@ -128,6 +128,12 @@ static void handle_dhcp(void *ctx, const u8 *src_addr, const u8 *buf,
|
||||||
}
|
}
|
||||||
sta->ipaddr = b->your_ip;
|
sta->ipaddr = b->your_ip;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (hapd->conf->disable_dgaf && is_broadcast_ether_addr(buf)) {
|
||||||
|
for (sta = hapd->sta_list; sta; sta = sta->next)
|
||||||
|
x_snoop_mcast_to_ucast_convert_send(hapd, sta,
|
||||||
|
(u8 *) buf, len);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -32,6 +32,7 @@ struct icmpv6_ndmsg {
|
||||||
u8 opt_lladdr[0];
|
u8 opt_lladdr[0];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#define ROUTER_ADVERTISEMENT 134
|
||||||
#define NEIGHBOR_SOLICITATION 135
|
#define NEIGHBOR_SOLICITATION 135
|
||||||
#define NEIGHBOR_ADVERTISEMENT 136
|
#define NEIGHBOR_ADVERTISEMENT 136
|
||||||
#define SOURCE_LL_ADDR 1
|
#define SOURCE_LL_ADDR 1
|
||||||
|
@ -123,6 +124,10 @@ static void handle_ndisc(void *ctx, const u8 *src_addr, const u8 *buf,
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case ROUTER_ADVERTISEMENT:
|
||||||
|
if (!hapd->conf->disable_dgaf)
|
||||||
|
return;
|
||||||
|
/* fall through */
|
||||||
case NEIGHBOR_ADVERTISEMENT:
|
case NEIGHBOR_ADVERTISEMENT:
|
||||||
for (sta = hapd->sta_list; sta; sta = sta->next) {
|
for (sta = hapd->sta_list; sta; sta = sta->next) {
|
||||||
x_snoop_mcast_to_ucast_convert_send(hapd, sta,
|
x_snoop_mcast_to_ucast_convert_send(hapd, sta,
|
||||||
|
|
Loading…
Reference in a new issue