blob: bf21fc65c99b764649217ab13a2a47837a5f0b05 [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
Ajay Davanagerib921bb82020-09-16 12:49:08 +053028# BCM vendor extensions to nl80211
29ifeq ($(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
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070035# 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 Shmidt8d520ff2011-05-09 14:06:53 -070045# WPA2/IEEE 802.11i RSN pre-authentication
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070046#CONFIG_RSN_PREAUTH=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070047
Hai Shalom74f70d42019-02-11 14:42:39 -080048# Support Operating Channel Validation
49#CONFIG_OCV=y
50
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070051# Integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070052#CONFIG_EAP=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070053
54# EAP-MD5 for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070055#CONFIG_EAP_MD5=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070056
57# EAP-TLS for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070058#CONFIG_EAP_TLS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070059
60# EAP-MSCHAPv2 for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070061#CONFIG_EAP_MSCHAPV2=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070062
63# EAP-PEAP for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070064#CONFIG_EAP_PEAP=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070065
66# EAP-GTC for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070067#CONFIG_EAP_GTC=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070068
69# EAP-TTLS for the integrated EAP server
Dmitry Shmidt497c1d52011-07-21 15:19:46 -070070#CONFIG_EAP_TTLS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070071
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)
104CONFIG_WPS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700105# 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)
116CONFIG_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
123CONFIG_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 Shmidtfb45fd52015-01-05 13:08:17 -0800129# the IEEE 802.11 Management capability (e.g., FreeBSD/net80211)
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700130#CONFIG_DRIVER_RADIUS_ACL=y
131
Hai Shalom2aa93c52020-04-28 10:28:08 -0700132# IEEE 802.11ac (Very High Throughput) support
133CONFIG_IEEE80211AC=y
134
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700135# Remove debugging code that is printing out debug messages to stdout.
136# This can be used to reduce the size of the hostapd considerably if debugging
137# code is not needed.
138#CONFIG_NO_STDOUT_DEBUG=y
139
140# Add support for writing debug log to Android logcat instead of standard output
141CONFIG_ANDROID_LOG=y
142
143# Remove support for RADIUS accounting
144#CONFIG_NO_ACCOUNTING=y
145
146# Remove support for RADIUS
Dmitry Shmidt497c1d52011-07-21 15:19:46 -0700147CONFIG_NO_RADIUS=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700148
149# Remove support for VLANs
150#CONFIG_NO_VLAN=y
151
Dmitry Shmidtfb79edc2014-01-10 10:45:54 -0800152# Remove support for dumping internal state through control interface commands
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700153# This can be used to reduce binary size at the cost of disabling a debugging
154# option.
155#CONFIG_NO_DUMP_STATE=y
156
157# Select wrapper for operatins system and C library specific functions
158# unix = UNIX/POSIX like systems (default)
159# win32 = Windows systems
160# none = Empty template
161CONFIG_OS=unix
162
163# Enable tracing code for developer debugging
164# This tracks use of memory allocations and other registrations and reports
165# incorrect use with a backtrace of call (or allocation) location.
166#CONFIG_WPA_TRACE=y
167# For BSD, comment out these.
168#LIBS += -lexecinfo
169#LIBS_p += -lexecinfo
170#LIBS_c += -lexecinfo
171
172# Use libbfd to get more details for developer debugging
173# This enables use of libbfd to get more detailed symbols for the backtraces
174# generated by CONFIG_WPA_TRACE=y.
175#CONFIG_WPA_TRACE_BFD=y
176# For BSD, comment out these.
177#LIBS += -lbfd -liberty -lz
178#LIBS_p += -lbfd -liberty -lz
179#LIBS_c += -lbfd -liberty -lz
Dmitry Shmidt497c1d52011-07-21 15:19:46 -0700180
Dmitry Shmidtd80a4012015-11-05 16:35:40 -0800181# Should we use poll instead of select? Select is used by default.
182#CONFIG_ELOOP_POLL=y
183
184# Should we use epoll instead of select? Select is used by default.
185#CONFIG_ELOOP_EPOLL=y
186
Dmitry Shmidt497c1d52011-07-21 15:19:46 -0700187# Enable AP
188CONFIG_AP=y
Dmitry Shmidtd80a4012015-11-05 16:35:40 -0800189
190# Enable Fast Session Transfer (FST)
191#CONFIG_FST=y
Dmitry Shmidt57c2d392016-02-23 13:40:19 -0800192
193# Multiband Operation support
194# These extentions facilitate efficient use of multiple frequency bands
195# available to the AP and the devices that may associate with it.
196#CONFIG_MBO=y
Dmitry Shmidt9839ecd2016-11-07 11:05:47 -0800197
198# Include internal line edit mode in hostapd_cli.
199CONFIG_WPA_CLI_EDIT=y
Dmitry Shmidtd2986c22017-10-23 14:22:09 -0700200
201# Opportunistic Wireless Encryption (OWE)
202# Experimental implementation of draft-harkins-owe-07.txt
203#CONFIG_OWE=y
Jeff Vander Stoepc88b7522017-11-30 11:13:52 -0800204
Jimmy Chencaaac072019-09-16 16:36:06 +0800205# WLAN Authentication and Privacy Infrastructure (WAPI): interface only.
206# Configure the building of the interface which allows WAPI configuration.
207# Note: does not configure WAPI implementation itself.
208#CONFIG_WAPI_INTERFACE=y
209
Jeff Vander Stoepc88b7522017-11-30 11:13:52 -0800210# Wpa_supplicant's random pool is not necessary on Android. Randomness is
211# already provided by the entropymixer service which ensures sufficient
212# entropy is maintained across reboots. Commit b410eb1913 'Initialize
213# /dev/urandom earlier in boot' seeds /dev/urandom with that entropy before
214# either wpa_supplicant or hostapd are run.
215CONFIG_NO_RANDOM_POOL=y
Roshan Piuscc817562017-12-22 14:45:05 -0800216
217# Add support for Hidl control interface
218# Only applicable for Android platforms.
Roshan Pius30b452e2017-12-27 13:36:21 -0800219CONFIG_CTRL_IFACE_HIDL=y
Ningyuan Wang065218c2017-12-19 14:07:29 -0800220
221# Enable support of Automatic Channel Selection
222CONFIG_ACS=y
Hai Shalom749644d2018-09-06 11:50:46 -0700223
224# Easy Connect (Device Provisioning Protocol - DPP)
225CONFIG_DPP=y
226
227# WPA3-Personal (SAE)
228CONFIG_SAE=y
Hai Shalomfdcde762020-04-02 11:19:20 -0700229
230# Wired equivalent privacy (WEP)
231# WEP is an obsolete cryptographic data confidentiality algorithm that is not
232# considered secure. It should not be used for anything anymore. The
233# functionality needed to use WEP is available in the current hostapd
234# release under this optional build parameter. This functionality is subject to
235# be completely removed in a future release.
236CONFIG_WEP=y
237
leslb0f4d542020-09-16 23:06:03 +0800238# Interworking (IEEE 802.11u)
239# This can be used to enable functionality to improve interworking with
240# external networks.
241CONFIG_INTERWORKING=y