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