aboutsummaryrefslogtreecommitdiffstats
path: root/src/drivers
diff options
context:
space:
mode:
authorDmitry Shmidt <dimitrysh@google.com>2015-04-15 13:47:09 -0700
committerDmitry Shmidt <dimitrysh@google.com>2015-04-15 13:50:03 -0700
commit8347444e0bfb85e4550817fc99903f38ce8f5bcc (patch)
tree6ca7e30a6f5bfd444afa4199e98f15d5a342983b /src/drivers
parentaf9da3180dc20f57df1fc1e1811f3df9fa9e6ab5 (diff)
downloadandroid_external_wpa_supplicant_8-8347444e0bfb85e4550817fc99903f38ce8f5bcc.tar.gz
android_external_wpa_supplicant_8-8347444e0bfb85e4550817fc99903f38ce8f5bcc.tar.bz2
android_external_wpa_supplicant_8-8347444e0bfb85e4550817fc99903f38ce8f5bcc.zip
Cumulative patch from commit 1acf38f1a5aa19169035de9b611fc76440729c0b
1acf38f Add ifname to vlan_remove_dynamic() debug print 2e192bd Print debug entry on STA pruning from other interfaces c8e6bea Remove VLAN interface on STA free de31fb0 vlan: Ignore multiple NEWLINK messages 371205d vlan: Ignore DELLINK on interfaces that exists a5e81ba Fix STA VLAN bind for RSN pre-authentication case 3ffdeb7 Fix RSN preauthentication with dynamic_vlan enabled but unused 8e2c5f1 dbus: Fix WPS property of fi.w1.wpa_supplicant1.BSS interface d447cd5 Updates for stricter automatic memcpy bounds checking 60eb9e1 AP: Enable multicast snooping on bridge if ProxyARP IPv6 is in use b799118 Fix CONFIG_AP=y build without CONFIG_CTRL_IFACE 954f03a Fix compilation issues with CONFIG_NO_CONFIG_WRITE=y da3db68 Fix INTERFACE_ADD parsing Change-Id: If25ebad847bc2a1b5d9386cbaa80c6fd8ce4e226 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Diffstat (limited to 'src/drivers')
-rw-r--r--src/drivers/driver.h1
-rw-r--r--src/drivers/driver_nl80211.c12
2 files changed, 11 insertions, 2 deletions
diff --git a/src/drivers/driver.h b/src/drivers/driver.h
index 6a9cd74a..a52328c5 100644
--- a/src/drivers/driver.h
+++ b/src/drivers/driver.h
@@ -1577,6 +1577,7 @@ enum drv_br_port_attr {
enum drv_br_net_param {
DRV_BR_NET_PARAM_GARP_ACCEPT,
+ DRV_BR_MULTICAST_SNOOPING,
};
struct drv_acs_params {
diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c
index 7b3dc515..be0e7c5d 100644
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -8307,9 +8307,9 @@ static const char * drv_br_net_param_str(enum drv_br_net_param param)
switch (param) {
case DRV_BR_NET_PARAM_GARP_ACCEPT:
return "arp_accept";
+ default:
+ return NULL;
}
-
- return NULL;
}
@@ -8321,6 +8321,13 @@ static int wpa_driver_br_set_net_param(void *priv, enum drv_br_net_param param,
const char *param_txt;
int ip_version = 4;
+ if (param == DRV_BR_MULTICAST_SNOOPING) {
+ os_snprintf(path, sizeof(path),
+ "/sys/devices/virtual/net/%s/bridge/multicast_snooping",
+ bss->brname);
+ goto set_val;
+ }
+
param_txt = drv_br_net_param_str(param);
if (param_txt == NULL)
return -EINVAL;
@@ -8336,6 +8343,7 @@ static int wpa_driver_br_set_net_param(void *priv, enum drv_br_net_param param,
os_snprintf(path, sizeof(path), "/proc/sys/net/ipv%d/conf/%s/%s",
ip_version, bss->brname, param_txt);
+set_val:
if (linux_write_system_file(path, val))
return -1;