blob: 6ed6f6a52370526b56dd4a42ea626cb2add78a6a [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
31else
Dmitry Shmidtd80a4012015-11-05 16:35:40 -080032# QCA vendor extensions to nl80211
33CONFIG_DRIVER_NL80211_QCA=y
Ajay Davanagerib921bb82020-09-16 12:49:08 +053034endif
Hai Shalomc1a21442022-02-04 13:43:00 -080035
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070036# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver)
37#CONFIG_DRIVER_BSD=y
38#CFLAGS += -I/usr/local/include
39#LIBS += -L/usr/local/lib
40#LIBS_p += -L/usr/local/lib
41#LIBS_c += -L/usr/local/lib
42
43# Driver interface for no driver (e.g., RADIUS server only)
44#CONFIG_DRIVER_NONE=y
45
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070046# WPA2/IEEE 802.11i RSN pre-authentication
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070047#CONFIG_RSN_PREAUTH=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070048
Hai Shalom74f70d42019-02-11 14:42:39 -080049# Support Operating Channel Validation
50#CONFIG_OCV=y
51
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070052# Integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070053#CONFIG_EAP=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070054
55# EAP-MD5 for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070056#CONFIG_EAP_MD5=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070057
58# EAP-TLS for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070059#CONFIG_EAP_TLS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070060
61# EAP-MSCHAPv2 for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070062#CONFIG_EAP_MSCHAPV2=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070063
64# EAP-PEAP for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070065#CONFIG_EAP_PEAP=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070066
67# EAP-GTC for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070068#CONFIG_EAP_GTC=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070069
70# EAP-TTLS for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070071#CONFIG_EAP_TTLS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070072
73# EAP-SIM for the integrated EAP server
74#CONFIG_EAP_SIM=y
75
76# EAP-AKA for the integrated EAP server
77#CONFIG_EAP_AKA=y
78
79# EAP-AKA' for the integrated EAP server
80# This requires CONFIG_EAP_AKA to be enabled, too.
81#CONFIG_EAP_AKA_PRIME=y
82
83# EAP-PAX for the integrated EAP server
84#CONFIG_EAP_PAX=y
85
86# EAP-PSK for the integrated EAP server (this is _not_ needed for WPA-PSK)
87#CONFIG_EAP_PSK=y
88
89# EAP-SAKE for the integrated EAP server
90#CONFIG_EAP_SAKE=y
91
92# EAP-GPSK for the integrated EAP server
93#CONFIG_EAP_GPSK=y
94# Include support for optional SHA256 cipher suite in EAP-GPSK
95#CONFIG_EAP_GPSK_SHA256=y
96
97# EAP-FAST for the integrated EAP server
98# Note: Default OpenSSL package does not include support for all the
99# functionality needed for EAP-FAST. If EAP-FAST is enabled with OpenSSL,
100# the OpenSSL library must be patched (openssl-0.9.9-session-ticket.patch)
101# to add the needed functions.
102#CONFIG_EAP_FAST=y
103
104# Wi-Fi Protected Setup (WPS)
105CONFIG_WPS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700106# Enable UPnP support for external WPS Registrars
107#CONFIG_WPS_UPNP=y
108
109# EAP-IKEv2
110#CONFIG_EAP_IKEV2=y
111
112# Trusted Network Connect (EAP-TNC)
113#CONFIG_EAP_TNC=y
114
115# PKCS#12 (PFX) support (used to read private key and certificate file from
116# a file that usually has extension .p12 or .pfx)
117CONFIG_PKCS12=y
118
119# RADIUS authentication server. This provides access to the integrated EAP
120# server from external hosts using RADIUS.
121#CONFIG_RADIUS_SERVER=y
122
123# Build IPv6 support for RADIUS operations
124CONFIG_IPV6=y
125
126# IEEE Std 802.11r-2008 (Fast BSS Transition)
127#CONFIG_IEEE80211R=y
128
129# Use the hostapd's IEEE 802.11 authentication (ACL), but without
Dmitry Shmidtfb45fd52015-01-05 13:08:17 -0800130# the IEEE 802.11 Management capability (e.g., FreeBSD/net80211)
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700131#CONFIG_DRIVER_RADIUS_ACL=y
132
Hai Shalom2aa93c52020-04-28 10:28:08 -0700133# IEEE 802.11ac (Very High Throughput) support
134CONFIG_IEEE80211AC=y
135
Kai Shi35d8ea42020-10-07 15:24:01 -0700136# IEEE 802.11ax (High Efficiency) support
137ifeq ($(WIFI_FEATURE_HOSTAPD_11AX), true)
138CONFIG_IEEE80211AX=y
139endif
140
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700141# Remove debugging code that is printing out debug messages to stdout.
142# This can be used to reduce the size of the hostapd considerably if debugging
143# code is not needed.
144#CONFIG_NO_STDOUT_DEBUG=y
145
146# Add support for writing debug log to Android logcat instead of standard output
147CONFIG_ANDROID_LOG=y
148
149# Remove support for RADIUS accounting
150#CONFIG_NO_ACCOUNTING=y
151
152# Remove support for RADIUS
Dmitry Shmidt497c1d52011-07-21 15:19:46 -0700153CONFIG_NO_RADIUS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700154
155# Remove support for VLANs
156#CONFIG_NO_VLAN=y
157
Dmitry Shmidtfb79edc2014-01-10 10:45:54 -0800158# Remove support for dumping internal state through control interface commands
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700159# This can be used to reduce binary size at the cost of disabling a debugging
160# option.
161#CONFIG_NO_DUMP_STATE=y
162
163# Select wrapper for operatins system and C library specific functions
164# unix = UNIX/POSIX like systems (default)
165# win32 = Windows systems
166# none = Empty template
167CONFIG_OS=unix
168
169# Enable tracing code for developer debugging
170# This tracks use of memory allocations and other registrations and reports
171# incorrect use with a backtrace of call (or allocation) location.
172#CONFIG_WPA_TRACE=y
173# For BSD, comment out these.
174#LIBS += -lexecinfo
175#LIBS_p += -lexecinfo
176#LIBS_c += -lexecinfo
177
178# Use libbfd to get more details for developer debugging
179# This enables use of libbfd to get more detailed symbols for the backtraces
180# generated by CONFIG_WPA_TRACE=y.
181#CONFIG_WPA_TRACE_BFD=y
182# For BSD, comment out these.
183#LIBS += -lbfd -liberty -lz
184#LIBS_p += -lbfd -liberty -lz
185#LIBS_c += -lbfd -liberty -lz
Dmitry Shmidt497c1d52011-07-21 15:19:46 -0700186
Dmitry Shmidtd80a4012015-11-05 16:35:40 -0800187# Should we use poll instead of select? Select is used by default.
188#CONFIG_ELOOP_POLL=y
189
190# Should we use epoll instead of select? Select is used by default.
191#CONFIG_ELOOP_EPOLL=y
192
Dmitry Shmidt497c1d52011-07-21 15:19:46 -0700193# Enable AP
194CONFIG_AP=y
Dmitry Shmidtd80a4012015-11-05 16:35:40 -0800195
196# Enable Fast Session Transfer (FST)
197#CONFIG_FST=y
Dmitry Shmidt57c2d392016-02-23 13:40:19 -0800198
199# Multiband Operation support
Hai Shalom899fcc72020-10-19 14:38:18 -0700200# These extensions facilitate efficient use of multiple frequency bands
Dmitry Shmidt57c2d392016-02-23 13:40:19 -0800201# available to the AP and the devices that may associate with it.
202#CONFIG_MBO=y
Dmitry Shmidt9839ecd2016-11-07 11:05:47 -0800203
204# Include internal line edit mode in hostapd_cli.
205CONFIG_WPA_CLI_EDIT=y
Dmitry Shmidtd2986c22017-10-23 14:22:09 -0700206
207# Opportunistic Wireless Encryption (OWE)
208# Experimental implementation of draft-harkins-owe-07.txt
209#CONFIG_OWE=y
Jeff Vander Stoepc88b7522017-11-30 11:13:52 -0800210
Jimmy Chencaaac072019-09-16 16:36:06 +0800211# WLAN Authentication and Privacy Infrastructure (WAPI): interface only.
212# Configure the building of the interface which allows WAPI configuration.
213# Note: does not configure WAPI implementation itself.
214#CONFIG_WAPI_INTERFACE=y
215
Jeff Vander Stoepc88b7522017-11-30 11:13:52 -0800216# Wpa_supplicant's random pool is not necessary on Android. Randomness is
217# already provided by the entropymixer service which ensures sufficient
218# entropy is maintained across reboots. Commit b410eb1913 'Initialize
219# /dev/urandom earlier in boot' seeds /dev/urandom with that entropy before
220# either wpa_supplicant or hostapd are run.
221CONFIG_NO_RANDOM_POOL=y
Roshan Piuscc817562017-12-22 14:45:05 -0800222
Gabriel Biren72cf9a52021-06-25 23:29:26 +0000223# Add support for Aidl control interface
Roshan Piuscc817562017-12-22 14:45:05 -0800224# Only applicable for Android platforms.
Gabriel Biren72cf9a52021-06-25 23:29:26 +0000225CONFIG_CTRL_IFACE_AIDL=y
Ningyuan Wang065218c2017-12-19 14:07:29 -0800226
227# Enable support of Automatic Channel Selection
228CONFIG_ACS=y
Hai Shalom749644d2018-09-06 11:50:46 -0700229
230# Easy Connect (Device Provisioning Protocol - DPP)
231CONFIG_DPP=y
232
233# WPA3-Personal (SAE)
234CONFIG_SAE=y
Hai Shalomfdcde762020-04-02 11:19:20 -0700235
236# Wired equivalent privacy (WEP)
237# WEP is an obsolete cryptographic data confidentiality algorithm that is not
238# considered secure. It should not be used for anything anymore. The
239# functionality needed to use WEP is available in the current hostapd
240# release under this optional build parameter. This functionality is subject to
241# be completely removed in a future release.
242CONFIG_WEP=y
243
leslb0f4d542020-09-16 23:06:03 +0800244# Interworking (IEEE 802.11u)
245# This can be used to enable functionality to improve interworking with
246# external networks.
247CONFIG_INTERWORKING=y
Kai Shie75b0652020-11-24 20:31:29 -0800248
249# Testing options
250# This can be used to enable some testing options (see also the example
251# configuration file) that are useful for testing clients that
252# connect to this hostapd. These options allow, for example, to drop a
253# certain percentage of probe requests or auth/(re)assoc frames.
254# Each test case requires a flag set in hostapd.conf or through hostapd_cli
255#CONFIG_TESTING_OPTIONS=y