xref: /aosp_15_r20/external/wpa_supplicant_8/hostapd/android.config (revision 03f9172ca588f91df233974f4258bab95191f931)
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
13#CONFIG_DRIVER_HOSTAP=y
14
15# Driver interface for wired authenticator
16#CONFIG_DRIVER_WIRED=y
17
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
26CONFIG_LIBNL20=y
27
28# Broadcom vendor extensions to nl80211
29ifeq ($(BOARD_WLAN_DEVICE),bcmdhd)
30CONFIG_DRIVER_NL80211_BRCM=y
31# Synaptics vendor extensions to nl80211
32else ifeq ($(BOARD_WLAN_DEVICE),synadhd)
33CONFIG_DRIVER_NL80211_SYNA=y
34else
35# QCA vendor extensions to nl80211
36CONFIG_DRIVER_NL80211_QCA=y
37endif
38
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
49# WPA2/IEEE 802.11i RSN pre-authentication
50#CONFIG_RSN_PREAUTH=y
51
52# Support Operating Channel Validation
53#CONFIG_OCV=y
54
55# Integrated EAP server
56#CONFIG_EAP=y
57
58# EAP-MD5 for the integrated EAP server
59#CONFIG_EAP_MD5=y
60
61# EAP-TLS for the integrated EAP server
62#CONFIG_EAP_TLS=y
63
64# EAP-MSCHAPv2 for the integrated EAP server
65#CONFIG_EAP_MSCHAPV2=y
66
67# EAP-PEAP for the integrated EAP server
68#CONFIG_EAP_PEAP=y
69
70# EAP-GTC for the integrated EAP server
71#CONFIG_EAP_GTC=y
72
73# EAP-TTLS for the integrated EAP server
74#CONFIG_EAP_TTLS=y
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)
108CONFIG_WPS=y
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)
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# Include support fo RADIUS/TLS into the RADIUS client
130#CONFIG_RADIUS_TLS=y
131
132# IEEE Std 802.11r-2008 (Fast BSS Transition)
133#CONFIG_IEEE80211R=y
134
135# Use the hostapd's IEEE 802.11 authentication (ACL), but without
136# the IEEE 802.11 Management capability (e.g., FreeBSD/net80211)
137#CONFIG_DRIVER_RADIUS_ACL=y
138
139# IEEE 802.11ac (Very High Throughput) support
140CONFIG_IEEE80211AC=y
141
142# IEEE 802.11ax (High Efficiency) support
143ifeq ($(WIFI_FEATURE_HOSTAPD_11AX), true)
144CONFIG_IEEE80211AX=y
145endif
146
147# IEEE 802.11be EHT (Extremely High Throughput) support
148# Note: Enabling CONFIG_IEEE80211BE requires CONFIG_IEEE80211AX to be enabled as well. Therefore,
149# the hostapd/Android.mk file automatically enables CONFIG_IEEE80211AX when CONFIG_IEEE80211BE is
150# enabled here.
151ifeq ($(WIFI_FEATURE_HOSTAPD_11BE), true)
152CONFIG_IEEE80211BE=y
153endif
154
155# Remove debugging code that is printing out debug messages to stdout.
156# This can be used to reduce the size of the hostapd considerably if debugging
157# code is not needed.
158#CONFIG_NO_STDOUT_DEBUG=y
159
160# Add support for writing debug log to Android logcat instead of standard output
161CONFIG_ANDROID_LOG=y
162
163# Remove support for RADIUS accounting
164#CONFIG_NO_ACCOUNTING=y
165
166# Remove support for RADIUS
167CONFIG_NO_RADIUS=y
168
169# Remove support for VLANs
170#CONFIG_NO_VLAN=y
171
172# Remove support for dumping internal state through control interface commands
173# This can be used to reduce binary size at the cost of disabling a debugging
174# option.
175#CONFIG_NO_DUMP_STATE=y
176
177# Select wrapper for operatins system and C library specific functions
178# unix = UNIX/POSIX like systems (default)
179# win32 = Windows systems
180# none = Empty template
181CONFIG_OS=unix
182
183# Enable tracing code for developer debugging
184# This tracks use of memory allocations and other registrations and reports
185# incorrect use with a backtrace of call (or allocation) location.
186#CONFIG_WPA_TRACE=y
187# For BSD, comment out these.
188#LIBS += -lexecinfo
189#LIBS_p += -lexecinfo
190#LIBS_c += -lexecinfo
191
192# Use libbfd to get more details for developer debugging
193# This enables use of libbfd to get more detailed symbols for the backtraces
194# generated by CONFIG_WPA_TRACE=y.
195#CONFIG_WPA_TRACE_BFD=y
196# For BSD, comment out these.
197#LIBS += -lbfd -liberty -lz
198#LIBS_p += -lbfd -liberty -lz
199#LIBS_c += -lbfd -liberty -lz
200
201# Should we use poll instead of select? Select is used by default.
202#CONFIG_ELOOP_POLL=y
203
204# Should we use epoll instead of select? Select is used by default.
205#CONFIG_ELOOP_EPOLL=y
206
207# Enable AP
208CONFIG_AP=y
209
210# Enable Fast Session Transfer (FST)
211#CONFIG_FST=y
212
213# Multiband Operation support
214# These extensions facilitate efficient use of multiple frequency bands
215# available to the AP and the devices that may associate with it.
216#CONFIG_MBO=y
217
218# Include internal line edit mode in hostapd_cli.
219CONFIG_WPA_CLI_EDIT=y
220
221# Opportunistic Wireless Encryption (OWE)
222# Experimental implementation of draft-harkins-owe-07.txt
223#CONFIG_OWE=y
224
225# WLAN Authentication and Privacy Infrastructure (WAPI): interface only.
226# Configure the building of the interface which allows WAPI configuration.
227# Note: does not configure WAPI implementation itself.
228#CONFIG_WAPI_INTERFACE=y
229
230# Wpa_supplicant's random pool is not necessary on Android. Randomness is
231# already provided by the entropymixer service which ensures sufficient
232# entropy is maintained across reboots. Commit b410eb1913 'Initialize
233# /dev/urandom earlier in boot' seeds /dev/urandom with that entropy before
234# either wpa_supplicant or hostapd are run.
235CONFIG_NO_RANDOM_POOL=y
236
237# Add support for Aidl control interface
238# Only applicable for Android platforms.
239CONFIG_CTRL_IFACE_AIDL=y
240
241# Enable support of Automatic Channel Selection
242CONFIG_ACS=y
243
244# Easy Connect (Device Provisioning Protocol - DPP)
245CONFIG_DPP=y
246
247# WPA3-Personal (SAE)
248CONFIG_SAE=y
249
250# Wired equivalent privacy (WEP)
251# WEP is an obsolete cryptographic data confidentiality algorithm that is not
252# considered secure. It should not be used for anything anymore. The
253# functionality needed to use WEP is available in the current hostapd
254# release under this optional build parameter. This functionality is subject to
255# be completely removed in a future release.
256CONFIG_WEP=y
257
258# Interworking (IEEE 802.11u)
259# This can be used to enable functionality to improve interworking with
260# external networks.
261CONFIG_INTERWORKING=y
262
263# Testing options
264# This can be used to enable some testing options (see also the example
265# configuration file) that are useful for testing clients that
266# connect to this hostapd. These options allow, for example, to drop a
267# certain percentage of probe requests or auth/(re)assoc frames.
268# Each test case requires a flag set in hostapd.conf or through hostapd_cli
269#CONFIG_TESTING_OPTIONS=y
270
271# Wi-Fi Aware unsynchronized service discovery (NAN USD)
272#CONFIG_NAN_USD=y
273