fragattacks/src/drivers
Michal Kazior 8e111157e7 nl80211: Relax bridge setup
Normally nl80211 driver will attempt to strictly control what bridge
given interface is put in. It'll attempt to remove it from an existing
bridge if it doesn't match the configured one. If it's not in a bridge
it'll try to put it into one. If any of this fails then hostapd will
bail out and not set up the BSS at all.

Arguably that's reasonable since it allows to set the BSS up coherently
with regard to EAPOL handling as well as allows extra interactions with
things like FDB. However, not all hostapd drivers interact with bridge=
the same way. One example is atheros. Therefore it's not clear what the
desired behavior should be if consistency across drivers is considered.

There's a case where one might want to use a non-native Linux bridge,
e.g., openvswitch, in which case regular ioctls won't work to put an
interface into a bridge, or figure out what bridge an interface is in.
The underlying wireless driver can still be an ordinary nl80211 driver.

This change relaxes the bridge setup failure so that hostapd still
starts even if it fails to add an interface into a configured bridge
name. It still sets up all the necessary sockets (including the
configured bridge=) so EAPOL handling should work fine. This then leaves
it to the system integrator to manage wireless interface as bridge ports
and possibly fdb hints too.

Signed-off-by: Michal Kazior <michal@plume.com>
2019-12-24 21:16:23 +02:00
..
.gitignore Force rebuilding of src/drivers between hostapd and wpa_supplicant 2009-08-14 20:40:37 +03:00
android_drv.h Remove obsolete license notifications 2013-12-24 22:59:52 +02:00
driver_atheros.c Remove CONFIG_IEEE80211W build parameter 2019-09-08 17:33:40 +03:00
driver_bsd.c BSD: Add support for route(4) message filtering 2019-09-19 12:16:49 +03:00
driver_common.c nl80211: Introduce the interface to update new DH IE 2019-06-14 23:10:51 +03:00
driver_hostap.c Replace int status/reason_code with u16 variable 2019-04-22 22:08:07 +03:00
driver_hostap.h Use SSID_MAX_LEN define instead of value 32 when comparing SSID length 2015-04-22 11:44:18 +03:00
driver_macsec_linux.c macsec_linux: Hook QCA driver wrapper for hostapd MACsec 2019-06-03 20:27:44 +03:00
driver_macsec_qca.c macsec_qca: Hook QCA driver wrapper for hostapd MACsec 2019-06-03 20:27:44 +03:00
driver_ndis_.c Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
driver_ndis.c Replace int status/reason_code with u16 variable 2019-04-22 22:08:07 +03:00
driver_ndis.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
driver_nl80211_android.c Android: Rename ANDROID_P2P_STUB to ANDROID_LIB_STUB 2015-06-26 22:46:16 +03:00
driver_nl80211_capa.c nl80211: Initialize full channel info struct even if channel is not known 2019-12-23 00:01:02 +02:00
driver_nl80211_event.c ACS: Use frequency params in ACS (offload) completed event interface 2019-12-20 12:31:01 +02:00
driver_nl80211_monitor.c nl80211: Warn about interface name truncations 2018-10-16 12:53:15 +03:00
driver_nl80211_scan.c nl80211: Use wpa_ssid_txt() for debug messages more consistently 2019-02-10 01:43:50 +02:00
driver_nl80211.c nl80211: Relax bridge setup 2019-12-24 21:16:23 +02:00
driver_nl80211.h nl80211: Add STA node details in AP through QCA vendor subcommand 2019-10-25 19:29:53 +03:00
driver_none.c Remove unused send_eapol() driver op 2014-12-11 15:40:07 +02:00
driver_openbsd.c drivers: Add separate driver flags for 802.1X and PSK 4-way HS offloads 2019-01-08 01:12:02 +02:00
driver_privsep.c Replace int status/reason_code with u16 variable 2019-04-22 22:08:07 +03:00
driver_roboswitch.c roboswitch: Check some read operation results 2019-03-09 18:56:48 +02:00
driver_wext.c Remove CONFIG_IEEE80211W build parameter 2019-09-08 17:33:40 +03:00
driver_wext.h Android: Remove old WEXT extensions 2013-12-24 22:52:18 +02:00
driver_wired_common.c wired: Mark some common helper functions static 2016-11-30 20:08:39 +02:00
driver_wired_common.h wired: Mark some common helper functions static 2016-11-30 20:08:39 +02:00
driver_wired.c Fix indentation level 2018-11-30 21:28:19 +02:00
driver.h ACS: Use frequency params in ACS (offload) completed event interface 2019-12-20 12:31:01 +02:00
drivers.c macsec_linux: Add a driver for macsec on Linux kernels 2016-11-30 20:08:36 +02:00
drivers.mak drivers: Set CONFIG_LIBNL32=y automatically based on pkg-config 2019-01-08 13:31:55 +02:00
drivers.mk drivers: Move libnl related build flags to separate ifdef block 2019-01-08 13:24:22 +02:00
linux_defines.h nl80211: Move definitions into separate header files 2014-10-26 17:03:24 +02:00
linux_ioctl.c vlan: Use new bridge ioctl() 2019-01-02 00:23:43 +02:00
linux_ioctl.h nl80211: Generic Linux master interface support for hostapd 2015-07-16 12:33:29 +03:00
linux_wext.h wext: Fix musl build error 2014-12-14 18:05:32 +02:00
Makefile Add CONFIG_CODE_COVERAGE=y option for gcov 2013-11-24 19:16:12 +02:00
ndis_events.c Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
netlink.c netlink: Fix RTM_SETLINK padding at the end of the message 2014-10-12 19:27:16 +03:00
netlink.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
nl80211_copy.h Sync with mac80211-next.git include/uapi/linux/nl80211.h 2019-12-05 12:36:09 +02:00
priv_netlink.h netlink: Fix RTM_SETLINK padding at the end of the message 2014-10-12 19:27:16 +03:00
rfkill.c rfkill: Fix a memory leak 2016-02-16 00:14:47 +02:00
rfkill.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00