From 0a07fe11e53b0acd8f06e38b4bbab7f5c7d90528 Mon Sep 17 00:00:00 2001 From: Our Air Quality Date: Tue, 12 Dec 2017 11:36:40 +1100 Subject: [PATCH] softap: allow output of multicast frames. Multicast frames were being dropped by ieee80211_output_pbuf. It appears to look up the destination address using cnx_node_search which only has an entry for the broadcast address (all ones). This patch modifies cnx_node_search to return the broadcast cnx_node for the multicast addresses too. This is needed to support services such as mDNS on the softap interface. --- open_esplibs/libnet80211/wl_cnx.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/open_esplibs/libnet80211/wl_cnx.c b/open_esplibs/libnet80211/wl_cnx.c index 3b49c5d..2d29960 100644 --- a/open_esplibs/libnet80211/wl_cnx.c +++ b/open_esplibs/libnet80211/wl_cnx.c @@ -192,6 +192,11 @@ struct sdk_cnx_node *sdk_cnx_node_search(uint8_t mac[6]) struct sdk_cnx_node **cnx_nodes = sdk_g_ic.v.softap_netif_info->cnx_nodes; + /* Multicast addresses */ + if (mac[0] & 0x01) { + return cnx_nodes[0]; + } + int i = 0; do { struct sdk_cnx_node *cnx_node = cnx_nodes[i];