| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- From: Felix Fietkau <[email protected]>
- Date: Tue, 18 May 2021 12:50:17 +0200
- Subject: [PATCH] hostapd: add patch for disabling automatic bridging of vlan
- interfaces
- netifd is responsible for handling that, except if the vlan bridge
- was provided by the config
- --- a/hostapd/config_file.c
- +++ b/hostapd/config_file.c
- @@ -3415,6 +3415,8 @@ static int hostapd_config_fill(struct ho
- #ifndef CONFIG_NO_VLAN
- } else if (os_strcmp(buf, "dynamic_vlan") == 0) {
- bss->ssid.dynamic_vlan = atoi(pos);
- + } else if (os_strcmp(buf, "vlan_no_bridge") == 0) {
- + bss->ssid.vlan_no_bridge = atoi(pos);
- } else if (os_strcmp(buf, "per_sta_vif") == 0) {
- bss->ssid.per_sta_vif = atoi(pos);
- } else if (os_strcmp(buf, "vlan_file") == 0) {
- --- a/src/ap/ap_config.h
- +++ b/src/ap/ap_config.h
- @@ -120,6 +120,7 @@ struct hostapd_ssid {
- #define DYNAMIC_VLAN_OPTIONAL 1
- #define DYNAMIC_VLAN_REQUIRED 2
- int dynamic_vlan;
- + int vlan_no_bridge;
- #define DYNAMIC_VLAN_NAMING_WITHOUT_DEVICE 0
- #define DYNAMIC_VLAN_NAMING_WITH_DEVICE 1
- #define DYNAMIC_VLAN_NAMING_END 2
- --- a/src/ap/vlan_full.c
- +++ b/src/ap/vlan_full.c
- @@ -475,6 +475,9 @@ void vlan_newlink(const char *ifname, st
- if (!vlan)
- return;
-
- + if (hapd->conf->ssid.vlan_no_bridge)
- + goto out;
- +
- vlan->configured = 1;
-
- notempty = vlan->vlan_desc.notempty;
- @@ -506,6 +509,7 @@ void vlan_newlink(const char *ifname, st
- ifname, br_name, tagged[i], hapd);
- }
-
- +out:
- ifconfig_up(ifname);
- }
-
|