blob: 1c4dab291bbbacafc740a415902aa4061f6c0f9f [file] [log] [blame]
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -07001# 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 Shmidte61a2d62011-06-27 10:59:51 -070013#CONFIG_DRIVER_HOSTAP=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070014
15# Driver interface for wired authenticator
16#CONFIG_DRIVER_WIRED=y
17
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070018# 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
26CONFIG_LIBNL20=y
27
Hai Shalomc1a21442022-02-04 13:43:00 -080028# Broadcom vendor extensions to nl80211
Ajay Davanagerib921bb82020-09-16 12:49:08 +053029ifeq ($(BOARD_WLAN_DEVICE),bcmdhd)
30CONFIG_DRIVER_NL80211_BRCM=y
Andy Kuoaba17c12022-04-14 16:05:31 +080031# Synaptics vendor extensions to nl80211
32else ifeq ($(BOARD_WLAN_DEVICE),synadhd)
33CONFIG_DRIVER_NL80211_SYNA=y
Ajay Davanagerib921bb82020-09-16 12:49:08 +053034else
Dmitry Shmidtd80a4012015-11-05 16:35:40 -080035# QCA vendor extensions to nl80211
36CONFIG_DRIVER_NL80211_QCA=y
Ajay Davanagerib921bb82020-09-16 12:49:08 +053037endif
Hai Shalomc1a21442022-02-04 13:43:00 -080038
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070039# 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 Shmidt8d520ff2011-05-09 14:06:53 -070049# WPA2/IEEE 802.11i RSN pre-authentication
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070050#CONFIG_RSN_PREAUTH=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070051
Hai Shalom74f70d42019-02-11 14:42:39 -080052# Support Operating Channel Validation
53#CONFIG_OCV=y
54
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070055# Integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070056#CONFIG_EAP=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070057
58# EAP-MD5 for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070059#CONFIG_EAP_MD5=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070060
61# EAP-TLS for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070062#CONFIG_EAP_TLS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070063
64# EAP-MSCHAPv2 for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070065#CONFIG_EAP_MSCHAPV2=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070066
67# EAP-PEAP for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070068#CONFIG_EAP_PEAP=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070069
70# EAP-GTC for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070071#CONFIG_EAP_GTC=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070072
73# EAP-TTLS for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070074#CONFIG_EAP_TTLS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070075
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)
108CONFIG_WPS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700109# 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)
120CONFIG_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
127CONFIG_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 Shmidtfb45fd52015-01-05 13:08:17 -0800133# the IEEE 802.11 Management capability (e.g., FreeBSD/net80211)
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700134#CONFIG_DRIVER_RADIUS_ACL=y
135
Hai Shalom2aa93c52020-04-28 10:28:08 -0700136# IEEE 802.11ac (Very High Throughput) support
137CONFIG_IEEE80211AC=y
138
Kai Shi35d8ea42020-10-07 15:24:01 -0700139# IEEE 802.11ax (High Efficiency) support
140ifeq ($(WIFI_FEATURE_HOSTAPD_11AX), true)
141CONFIG_IEEE80211AX=y
142endif
143
Mahesh KKV153f22e2023-12-27 10:54:59 -0800144# 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.
148ifeq ($(WIFI_FEATURE_HOSTAPD_11BE), true)
149CONFIG_IEEE80211BE=y
150endif
151
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700152# 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
158CONFIG_ANDROID_LOG=y
159
160# Remove support for RADIUS accounting
161#CONFIG_NO_ACCOUNTING=y
162
163# Remove support for RADIUS
Dmitry Shmidt497c1d52011-07-21 15:19:46 -0700164CONFIG_NO_RADIUS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700165
166# Remove support for VLANs
167#CONFIG_NO_VLAN=y
168
Dmitry Shmidtfb79edc2014-01-10 10:45:54 -0800169# Remove support for dumping internal state through control interface commands
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700170# 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
178CONFIG_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 Shmidt497c1d52011-07-21 15:19:46 -0700197
Dmitry Shmidtd80a4012015-11-05 16:35:40 -0800198# 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 Shmidt497c1d52011-07-21 15:19:46 -0700204# Enable AP
205CONFIG_AP=y
Dmitry Shmidtd80a4012015-11-05 16:35:40 -0800206
207# Enable Fast Session Transfer (FST)
208#CONFIG_FST=y
Dmitry Shmidt57c2d392016-02-23 13:40:19 -0800209
210# Multiband Operation support
Hai Shalom899fcc72020-10-19 14:38:18 -0700211# These extensions facilitate efficient use of multiple frequency bands
Dmitry Shmidt57c2d392016-02-23 13:40:19 -0800212# available to the AP and the devices that may associate with it.
213#CONFIG_MBO=y
Dmitry Shmidt9839ecd2016-11-07 11:05:47 -0800214
215# Include internal line edit mode in hostapd_cli.
216CONFIG_WPA_CLI_EDIT=y
Dmitry Shmidtd2986c22017-10-23 14:22:09 -0700217
218# Opportunistic Wireless Encryption (OWE)
219# Experimental implementation of draft-harkins-owe-07.txt
220#CONFIG_OWE=y
Jeff Vander Stoepc88b7522017-11-30 11:13:52 -0800221
Jimmy Chencaaac072019-09-16 16:36:06 +0800222# 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 Stoepc88b7522017-11-30 11:13:52 -0800227# 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.
232CONFIG_NO_RANDOM_POOL=y
Roshan Piuscc817562017-12-22 14:45:05 -0800233
Gabriel Biren72cf9a52021-06-25 23:29:26 +0000234# Add support for Aidl control interface
Roshan Piuscc817562017-12-22 14:45:05 -0800235# Only applicable for Android platforms.
Gabriel Biren72cf9a52021-06-25 23:29:26 +0000236CONFIG_CTRL_IFACE_AIDL=y
Ningyuan Wang065218c2017-12-19 14:07:29 -0800237
238# Enable support of Automatic Channel Selection
239CONFIG_ACS=y
Hai Shalom749644d2018-09-06 11:50:46 -0700240
241# Easy Connect (Device Provisioning Protocol - DPP)
242CONFIG_DPP=y
243
244# WPA3-Personal (SAE)
245CONFIG_SAE=y
Hai Shalomfdcde762020-04-02 11:19:20 -0700246
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.
253CONFIG_WEP=y
254
leslb0f4d542020-09-16 23:06:03 +0800255# Interworking (IEEE 802.11u)
256# This can be used to enable functionality to improve interworking with
257# external networks.
258CONFIG_INTERWORKING=y
Kai Shie75b0652020-11-24 20:31:29 -0800259
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