aboutsummaryrefslogtreecommitdiffstats
path: root/hostapd
diff options
context:
space:
mode:
authorMichael Braun <michael-dev@fami-braun.de>2016-10-31 13:58:08 (GMT)
committerJouni Malinen <j@w1.fi>2016-12-04 19:00:06 (GMT)
commit34f7c699a6bcb5c45f82ceb6743354ad79296078 (patch)
tree82c02c11eec389578bbabce8dd90e653c68bd80c /hostapd
parent5f2c0a22a92b33d69322cd2ff1d7530b717f1be6 (diff)
downloadhostap-34f7c699a6bcb5c45f82ceb6743354ad79296078.zip
hostap-34f7c699a6bcb5c45f82ceb6743354ad79296078.tar.gz
hostap-34f7c699a6bcb5c45f82ceb6743354ad79296078.tar.bz2
Add multicast to unicast support
This adds support for nl80211 NL80211_CMD_SET_MULTICAST_TO_UNICAST command. By setting the new hostapd configuration option multicast_to_unicast=1, hostapd configures this AP to perform multicast to unicast conversion. When enabled, all multicast packets with ethertype ARP, IPv4, or IPv6 (possibly within an 802.1Q header) will be sent out to each station once with the destination (multicast) MAC address replaced by the station's MAC address. Note that this may break certain expectations of the receiver, e.g., the ability to drop unicast IP packets encapsulated in multicast L2 frames, or the ability to not send destination unreachable messages in such cases. This also does not implement Directed Multicast Service (DMS). Signed-off-by: Michael Braun <michael-dev@fami-braun.de>
Diffstat (limited to 'hostapd')
-rw-r--r--hostapd/config_file.c2
-rw-r--r--hostapd/hostapd.conf16
2 files changed, 18 insertions, 0 deletions
diff --git a/hostapd/config_file.c b/hostapd/config_file.c
index 65f1eb9..832ff55 100644
--- a/hostapd/config_file.c
+++ b/hostapd/config_file.c
@@ -3560,6 +3560,8 @@ static int hostapd_config_fill(struct hostapd_config *conf,
}
bss->fils_cache_id_set = 1;
#endif /* CONFIG_FILS */
+ } else if (os_strcmp(buf, "multicast_to_unicast") == 0) {
+ bss->multicast_to_unicast = atoi(pos);
} else {
wpa_printf(MSG_ERROR,
"Line %d: unknown configuration item '%s'",
diff --git a/hostapd/hostapd.conf b/hostapd/hostapd.conf
index 9ea3d6c..1fd4fcc 100644
--- a/hostapd/hostapd.conf
+++ b/hostapd/hostapd.conf
@@ -495,6 +495,22 @@ wmm_ac_vo_acm=0
# <station count>:<channel utilization>:<available admission capacity>
#bss_load_test=12:80:20000
+# Multicast to unicast conversion
+# Request that the AP will do multicast-to-unicast conversion for ARP, IPv4, and
+# IPv6 frames (possibly within 802.1Q). If enabled, such frames are to be sent
+# to each station separately, with the DA replaced by their own MAC address
+# rather than the group address.
+#
+# Note that this may break certain expectations of the receiver, such as the
+# ability to drop unicast IP packets received within multicast L2 frames, or the
+# ability to not send ICMP destination unreachable messages for packets received
+# in L2 multicast (which is required, but the receiver can't tell the difference
+# if this new option is enabled).
+#
+# This also doesn't implement the 802.11 DMS (directed multicast service).
+#
+#multicast_to_unicast=0
+
##### IEEE 802.11n related configuration ######################################
# ieee80211n: Whether IEEE 802.11n (HT) is enabled