Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 1 | # Example hostapd build time configuration |
| 2 | # |
| 3 | # This file lists the configuration options that are used when building the |
| 4 | # hostapd binary. All lines starting with # are ignored. Configuration option |
| 5 | # lines must be commented out complete, if they are not to be included, i.e., |
| 6 | # just setting VARIABLE=n is not disabling that variable. |
| 7 | # |
| 8 | # This file is included in Makefile, so variables like CFLAGS and LIBS can also |
| 9 | # be modified from here. In most cass, these lines should use += in order not |
| 10 | # to override previous values of the variables. |
| 11 | |
| 12 | # Driver interface for Host AP driver |
Dmitry Shmidt | e61a2d6 | 2011-06-27 10:59:51 -0700 | [diff] [blame] | 13 | #CONFIG_DRIVER_HOSTAP=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 14 | |
| 15 | # Driver interface for wired authenticator |
| 16 | #CONFIG_DRIVER_WIRED=y |
| 17 | |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 18 | # Driver interface for drivers using the nl80211 kernel interface |
| 19 | #CONFIG_DRIVER_NL80211=y |
| 20 | # driver_nl80211.c requires a rather new libnl (version 1.1) which may not be |
| 21 | # shipped with your distribution yet. If that is the case, you need to build |
| 22 | # newer libnl version and point the hostapd build to use it. |
| 23 | #LIBNL=/usr/src/libnl |
| 24 | #CFLAGS += -I$(LIBNL)/include |
| 25 | #LIBS += -L$(LIBNL)/lib |
| 26 | CONFIG_LIBNL20=y |
| 27 | |
Hai Shalom | c1a2144 | 2022-02-04 13:43:00 -0800 | [diff] [blame] | 28 | # Broadcom vendor extensions to nl80211 |
Ajay Davanageri | b921bb8 | 2020-09-16 12:49:08 +0530 | [diff] [blame] | 29 | ifeq ($(BOARD_WLAN_DEVICE),bcmdhd) |
| 30 | CONFIG_DRIVER_NL80211_BRCM=y |
Andy Kuo | aba17c1 | 2022-04-14 16:05:31 +0800 | [diff] [blame] | 31 | # Synaptics vendor extensions to nl80211 |
| 32 | else ifeq ($(BOARD_WLAN_DEVICE),synadhd) |
| 33 | CONFIG_DRIVER_NL80211_SYNA=y |
Ajay Davanageri | b921bb8 | 2020-09-16 12:49:08 +0530 | [diff] [blame] | 34 | else |
Dmitry Shmidt | d80a401 | 2015-11-05 16:35:40 -0800 | [diff] [blame] | 35 | # QCA vendor extensions to nl80211 |
| 36 | CONFIG_DRIVER_NL80211_QCA=y |
Ajay Davanageri | b921bb8 | 2020-09-16 12:49:08 +0530 | [diff] [blame] | 37 | endif |
Hai Shalom | c1a2144 | 2022-02-04 13:43:00 -0800 | [diff] [blame] | 38 | |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 39 | # Driver interface for FreeBSD net80211 layer (e.g., Atheros driver) |
| 40 | #CONFIG_DRIVER_BSD=y |
| 41 | #CFLAGS += -I/usr/local/include |
| 42 | #LIBS += -L/usr/local/lib |
| 43 | #LIBS_p += -L/usr/local/lib |
| 44 | #LIBS_c += -L/usr/local/lib |
| 45 | |
| 46 | # Driver interface for no driver (e.g., RADIUS server only) |
| 47 | #CONFIG_DRIVER_NONE=y |
| 48 | |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 49 | # WPA2/IEEE 802.11i RSN pre-authentication |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 50 | #CONFIG_RSN_PREAUTH=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 51 | |
Hai Shalom | 74f70d4 | 2019-02-11 14:42:39 -0800 | [diff] [blame] | 52 | # Support Operating Channel Validation |
| 53 | #CONFIG_OCV=y |
| 54 | |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 55 | # Integrated EAP server |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 56 | #CONFIG_EAP=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 57 | |
| 58 | # EAP-MD5 for the integrated EAP server |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 59 | #CONFIG_EAP_MD5=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 60 | |
| 61 | # EAP-TLS for the integrated EAP server |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 62 | #CONFIG_EAP_TLS=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 63 | |
| 64 | # EAP-MSCHAPv2 for the integrated EAP server |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 65 | #CONFIG_EAP_MSCHAPV2=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 66 | |
| 67 | # EAP-PEAP for the integrated EAP server |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 68 | #CONFIG_EAP_PEAP=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 69 | |
| 70 | # EAP-GTC for the integrated EAP server |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 71 | #CONFIG_EAP_GTC=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 72 | |
| 73 | # EAP-TTLS for the integrated EAP server |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 74 | #CONFIG_EAP_TTLS=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 75 | |
| 76 | # EAP-SIM for the integrated EAP server |
| 77 | #CONFIG_EAP_SIM=y |
| 78 | |
| 79 | # EAP-AKA for the integrated EAP server |
| 80 | #CONFIG_EAP_AKA=y |
| 81 | |
| 82 | # EAP-AKA' for the integrated EAP server |
| 83 | # This requires CONFIG_EAP_AKA to be enabled, too. |
| 84 | #CONFIG_EAP_AKA_PRIME=y |
| 85 | |
| 86 | # EAP-PAX for the integrated EAP server |
| 87 | #CONFIG_EAP_PAX=y |
| 88 | |
| 89 | # EAP-PSK for the integrated EAP server (this is _not_ needed for WPA-PSK) |
| 90 | #CONFIG_EAP_PSK=y |
| 91 | |
| 92 | # EAP-SAKE for the integrated EAP server |
| 93 | #CONFIG_EAP_SAKE=y |
| 94 | |
| 95 | # EAP-GPSK for the integrated EAP server |
| 96 | #CONFIG_EAP_GPSK=y |
| 97 | # Include support for optional SHA256 cipher suite in EAP-GPSK |
| 98 | #CONFIG_EAP_GPSK_SHA256=y |
| 99 | |
| 100 | # EAP-FAST for the integrated EAP server |
| 101 | # Note: Default OpenSSL package does not include support for all the |
| 102 | # functionality needed for EAP-FAST. If EAP-FAST is enabled with OpenSSL, |
| 103 | # the OpenSSL library must be patched (openssl-0.9.9-session-ticket.patch) |
| 104 | # to add the needed functions. |
| 105 | #CONFIG_EAP_FAST=y |
| 106 | |
| 107 | # Wi-Fi Protected Setup (WPS) |
| 108 | CONFIG_WPS=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 109 | # Enable UPnP support for external WPS Registrars |
| 110 | #CONFIG_WPS_UPNP=y |
| 111 | |
| 112 | # EAP-IKEv2 |
| 113 | #CONFIG_EAP_IKEV2=y |
| 114 | |
| 115 | # Trusted Network Connect (EAP-TNC) |
| 116 | #CONFIG_EAP_TNC=y |
| 117 | |
| 118 | # PKCS#12 (PFX) support (used to read private key and certificate file from |
| 119 | # a file that usually has extension .p12 or .pfx) |
| 120 | CONFIG_PKCS12=y |
| 121 | |
| 122 | # RADIUS authentication server. This provides access to the integrated EAP |
| 123 | # server from external hosts using RADIUS. |
| 124 | #CONFIG_RADIUS_SERVER=y |
| 125 | |
| 126 | # Build IPv6 support for RADIUS operations |
| 127 | CONFIG_IPV6=y |
| 128 | |
| 129 | # IEEE Std 802.11r-2008 (Fast BSS Transition) |
| 130 | #CONFIG_IEEE80211R=y |
| 131 | |
| 132 | # Use the hostapd's IEEE 802.11 authentication (ACL), but without |
Dmitry Shmidt | fb45fd5 | 2015-01-05 13:08:17 -0800 | [diff] [blame] | 133 | # the IEEE 802.11 Management capability (e.g., FreeBSD/net80211) |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 134 | #CONFIG_DRIVER_RADIUS_ACL=y |
| 135 | |
Hai Shalom | 2aa93c5 | 2020-04-28 10:28:08 -0700 | [diff] [blame] | 136 | # IEEE 802.11ac (Very High Throughput) support |
| 137 | CONFIG_IEEE80211AC=y |
| 138 | |
Kai Shi | 35d8ea4 | 2020-10-07 15:24:01 -0700 | [diff] [blame] | 139 | # IEEE 802.11ax (High Efficiency) support |
| 140 | ifeq ($(WIFI_FEATURE_HOSTAPD_11AX), true) |
| 141 | CONFIG_IEEE80211AX=y |
| 142 | endif |
| 143 | |
Mahesh KKV | 153f22e | 2023-12-27 10:54:59 -0800 | [diff] [blame] | 144 | # IEEE 802.11be EHT (Extremely High Throughput) support |
| 145 | # Note: Enabling CONFIG_IEEE80211BE requires CONFIG_IEEE80211AX to be enabled as well. Therefore, |
| 146 | # the hostapd/Android.mk file automatically enables CONFIG_IEEE80211AX when CONFIG_IEEE80211BE is |
| 147 | # enabled here. |
| 148 | ifeq ($(WIFI_FEATURE_HOSTAPD_11BE), true) |
| 149 | CONFIG_IEEE80211BE=y |
| 150 | endif |
| 151 | |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 152 | # Remove debugging code that is printing out debug messages to stdout. |
| 153 | # This can be used to reduce the size of the hostapd considerably if debugging |
| 154 | # code is not needed. |
| 155 | #CONFIG_NO_STDOUT_DEBUG=y |
| 156 | |
| 157 | # Add support for writing debug log to Android logcat instead of standard output |
| 158 | CONFIG_ANDROID_LOG=y |
| 159 | |
| 160 | # Remove support for RADIUS accounting |
| 161 | #CONFIG_NO_ACCOUNTING=y |
| 162 | |
| 163 | # Remove support for RADIUS |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 164 | CONFIG_NO_RADIUS=y |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 165 | |
| 166 | # Remove support for VLANs |
| 167 | #CONFIG_NO_VLAN=y |
| 168 | |
Dmitry Shmidt | fb79edc | 2014-01-10 10:45:54 -0800 | [diff] [blame] | 169 | # Remove support for dumping internal state through control interface commands |
Dmitry Shmidt | 8d520ff | 2011-05-09 14:06:53 -0700 | [diff] [blame] | 170 | # This can be used to reduce binary size at the cost of disabling a debugging |
| 171 | # option. |
| 172 | #CONFIG_NO_DUMP_STATE=y |
| 173 | |
| 174 | # Select wrapper for operatins system and C library specific functions |
| 175 | # unix = UNIX/POSIX like systems (default) |
| 176 | # win32 = Windows systems |
| 177 | # none = Empty template |
| 178 | CONFIG_OS=unix |
| 179 | |
| 180 | # Enable tracing code for developer debugging |
| 181 | # This tracks use of memory allocations and other registrations and reports |
| 182 | # incorrect use with a backtrace of call (or allocation) location. |
| 183 | #CONFIG_WPA_TRACE=y |
| 184 | # For BSD, comment out these. |
| 185 | #LIBS += -lexecinfo |
| 186 | #LIBS_p += -lexecinfo |
| 187 | #LIBS_c += -lexecinfo |
| 188 | |
| 189 | # Use libbfd to get more details for developer debugging |
| 190 | # This enables use of libbfd to get more detailed symbols for the backtraces |
| 191 | # generated by CONFIG_WPA_TRACE=y. |
| 192 | #CONFIG_WPA_TRACE_BFD=y |
| 193 | # For BSD, comment out these. |
| 194 | #LIBS += -lbfd -liberty -lz |
| 195 | #LIBS_p += -lbfd -liberty -lz |
| 196 | #LIBS_c += -lbfd -liberty -lz |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 197 | |
Dmitry Shmidt | d80a401 | 2015-11-05 16:35:40 -0800 | [diff] [blame] | 198 | # Should we use poll instead of select? Select is used by default. |
| 199 | #CONFIG_ELOOP_POLL=y |
| 200 | |
| 201 | # Should we use epoll instead of select? Select is used by default. |
| 202 | #CONFIG_ELOOP_EPOLL=y |
| 203 | |
Dmitry Shmidt | 497c1d5 | 2011-07-21 15:19:46 -0700 | [diff] [blame] | 204 | # Enable AP |
| 205 | CONFIG_AP=y |
Dmitry Shmidt | d80a401 | 2015-11-05 16:35:40 -0800 | [diff] [blame] | 206 | |
| 207 | # Enable Fast Session Transfer (FST) |
| 208 | #CONFIG_FST=y |
Dmitry Shmidt | 57c2d39 | 2016-02-23 13:40:19 -0800 | [diff] [blame] | 209 | |
| 210 | # Multiband Operation support |
Hai Shalom | 899fcc7 | 2020-10-19 14:38:18 -0700 | [diff] [blame] | 211 | # These extensions facilitate efficient use of multiple frequency bands |
Dmitry Shmidt | 57c2d39 | 2016-02-23 13:40:19 -0800 | [diff] [blame] | 212 | # available to the AP and the devices that may associate with it. |
| 213 | #CONFIG_MBO=y |
Dmitry Shmidt | 9839ecd | 2016-11-07 11:05:47 -0800 | [diff] [blame] | 214 | |
| 215 | # Include internal line edit mode in hostapd_cli. |
| 216 | CONFIG_WPA_CLI_EDIT=y |
Dmitry Shmidt | d2986c2 | 2017-10-23 14:22:09 -0700 | [diff] [blame] | 217 | |
| 218 | # Opportunistic Wireless Encryption (OWE) |
| 219 | # Experimental implementation of draft-harkins-owe-07.txt |
| 220 | #CONFIG_OWE=y |
Jeff Vander Stoep | c88b752 | 2017-11-30 11:13:52 -0800 | [diff] [blame] | 221 | |
Jimmy Chen | caaac07 | 2019-09-16 16:36:06 +0800 | [diff] [blame] | 222 | # WLAN Authentication and Privacy Infrastructure (WAPI): interface only. |
| 223 | # Configure the building of the interface which allows WAPI configuration. |
| 224 | # Note: does not configure WAPI implementation itself. |
| 225 | #CONFIG_WAPI_INTERFACE=y |
| 226 | |
Jeff Vander Stoep | c88b752 | 2017-11-30 11:13:52 -0800 | [diff] [blame] | 227 | # Wpa_supplicant's random pool is not necessary on Android. Randomness is |
| 228 | # already provided by the entropymixer service which ensures sufficient |
| 229 | # entropy is maintained across reboots. Commit b410eb1913 'Initialize |
| 230 | # /dev/urandom earlier in boot' seeds /dev/urandom with that entropy before |
| 231 | # either wpa_supplicant or hostapd are run. |
| 232 | CONFIG_NO_RANDOM_POOL=y |
Roshan Pius | cc81756 | 2017-12-22 14:45:05 -0800 | [diff] [blame] | 233 | |
Gabriel Biren | 72cf9a5 | 2021-06-25 23:29:26 +0000 | [diff] [blame] | 234 | # Add support for Aidl control interface |
Roshan Pius | cc81756 | 2017-12-22 14:45:05 -0800 | [diff] [blame] | 235 | # Only applicable for Android platforms. |
Gabriel Biren | 72cf9a5 | 2021-06-25 23:29:26 +0000 | [diff] [blame] | 236 | CONFIG_CTRL_IFACE_AIDL=y |
Ningyuan Wang | 065218c | 2017-12-19 14:07:29 -0800 | [diff] [blame] | 237 | |
| 238 | # Enable support of Automatic Channel Selection |
| 239 | CONFIG_ACS=y |
Hai Shalom | 749644d | 2018-09-06 11:50:46 -0700 | [diff] [blame] | 240 | |
| 241 | # Easy Connect (Device Provisioning Protocol - DPP) |
| 242 | CONFIG_DPP=y |
| 243 | |
| 244 | # WPA3-Personal (SAE) |
| 245 | CONFIG_SAE=y |
Hai Shalom | fdcde76 | 2020-04-02 11:19:20 -0700 | [diff] [blame] | 246 | |
| 247 | # Wired equivalent privacy (WEP) |
| 248 | # WEP is an obsolete cryptographic data confidentiality algorithm that is not |
| 249 | # considered secure. It should not be used for anything anymore. The |
| 250 | # functionality needed to use WEP is available in the current hostapd |
| 251 | # release under this optional build parameter. This functionality is subject to |
| 252 | # be completely removed in a future release. |
| 253 | CONFIG_WEP=y |
| 254 | |
lesl | b0f4d54 | 2020-09-16 23:06:03 +0800 | [diff] [blame] | 255 | # Interworking (IEEE 802.11u) |
| 256 | # This can be used to enable functionality to improve interworking with |
| 257 | # external networks. |
| 258 | CONFIG_INTERWORKING=y |
Kai Shi | e75b065 | 2020-11-24 20:31:29 -0800 | [diff] [blame] | 259 | |
| 260 | # Testing options |
| 261 | # This can be used to enable some testing options (see also the example |
| 262 | # configuration file) that are useful for testing clients that |
| 263 | # connect to this hostapd. These options allow, for example, to drop a |
| 264 | # certain percentage of probe requests or auth/(re)assoc frames. |
| 265 | # Each test case requires a flag set in hostapd.conf or through hostapd_cli |
| 266 | #CONFIG_TESTING_OPTIONS=y |