The AP mode was broken some time ago by this code in include/dry_types.h
In file "/home/brent/git/rtl8723bu/872452_drv_types.h":
#ifndef STATION_INFO_SIGNAL
#define STATION_INFO_SIGNAL BIT(NL80211_STA_INFO_SIGNAL)
#endif
#ifndef STATION_INFO_TX_PACKETS
#define STATION_INFO_TX_PACKETS BIT(NL80211_STA_INFO_TX_PACKETS)
#endif
#ifndef STATION_INFO_RX_PACKETS
#define STATION_INFO_RX_PACKETS BIT(NL80211_STA_INFO_RX_PACKETS)
#endif
#ifndef STATION_INFO_TX_BITRATE
#define STATION_INFO_TX_BITRATE BIT(NL80211_STA_INFO_TX_BITRATE)
#endif
#ifndef STATION_INFO_ASSOC_REQ_IES
#define STATION_INFO_ASSOC_REQ_IES 0
#endif
That was attempting to define missing symbols for the kernel API.
This attempt broke when the kernel defined STATION_INFO_* in an enum rather than in the preprocessor. In particular, this causes STATION_INFO_ASSOC_REQ_IES to be assigned 0, which prevents any security IEs from passing from the driver to userspace, preventing wpa_supplicant and hostapd from processing them.
The "fix" is to remove this entire code block, thus allowing the compilation fail if the required kernel symbols are missing.
The AP mode was broken some time ago by this code in include/dry_types.h
In file "/home/brent/git/rtl8723bu/872452_drv_types.h":
That was attempting to define missing symbols for the kernel API.
This attempt broke when the kernel defined STATION_INFO_* in an enum rather than in the preprocessor. In particular, this causes STATION_INFO_ASSOC_REQ_IES to be assigned 0, which prevents any security IEs from passing from the driver to userspace, preventing wpa_supplicant and hostapd from processing them.
The "fix" is to remove this entire code block, thus allowing the compilation fail if the required kernel symbols are missing.