endif
OBJS = hostapd.o ieee802_1x.o eapol_sm.o \
- ieee802_11.o config.o ieee802_11_auth.o accounting.o \
- sta_info.o wpa.o ctrl_iface.o \
- drivers.o preauth.o pmksa_cache.o beacon.o \
- hw_features.o wme.o ap_list.o \
- mlme.o vlan_init.o wpa_auth_ie.o
+ config.o ieee802_11_auth.o \
+ sta_info.o wpa.o \
+ drivers.o preauth.o pmksa_cache.o \
+ drv_callbacks.o \
+ tkip_countermeasures.o \
+ mlme.o wpa_auth_ie.o
OBJS += ../src/utils/eloop.o
OBJS += ../src/utils/common.o
OBJS += ../src/common/ieee802_11_common.o
OBJS += ../src/common/wpa_common.o
+ifdef CONFIG_NO_RADIUS
+CFLAGS += -DCONFIG_NO_RADIUS
+CONFIG_NO_ACCOUNTING=y
+else
OBJS += ../src/radius/radius.o
OBJS += ../src/radius/radius_client.o
+endif
+
+ifdef CONFIG_NO_ACCOUNTING
+CFLAGS += -DCONFIG_NO_ACCOUNTING
+else
+OBJS += accounting.o
+endif
+
+ifdef CONFIG_NO_VLAN
+CFLAGS += -DCONFIG_NO_VLAN
+else
+OBJS += vlan_init.o
+endif
+
+ifdef CONFIG_NO_CTRL_IFACE
+CFLAGS += -DCONFIG_NO_CTRL_IFACE
+else
+OBJS += ctrl_iface.o
+endif
OBJS += ../src/crypto/md5.o
OBJS += ../src/crypto/rc4.o
endif
ifdef CONFIG_DRIVER_HOSTAP
+NEED_MLME=y
CFLAGS += -DCONFIG_DRIVER_HOSTAP
OBJS += driver_hostap.o
endif
endif
ifdef CONFIG_DRIVER_NL80211
+NEED_MLME=y
CFLAGS += -DCONFIG_DRIVER_NL80211
-OBJS += driver_nl80211.o radiotap.o
+OBJS += driver_nl80211.o
+OBJS += ../src/utils/radiotap.o
LIBS += -lnl
ifdef CONFIG_LIBNL20
LIBS += -lnl-genl
endif
ifdef CONFIG_DRIVER_TEST
+NEED_MLME=y
CFLAGS += -DCONFIG_DRIVER_TEST
OBJS += driver_test.o
endif
NEED_SHA256=y
NEED_CRYPTO=y
NEED_BASE64=y
+
+ifdef CONFIG_WPS_UPNP
+CFLAGS += -DCONFIG_WPS_UPNP
+OBJS += ../src/wps/wps_upnp.o
+OBJS += ../src/wps/wps_upnp_ssdp.o
+OBJS += ../src/wps/wps_upnp_web.o
+OBJS += ../src/wps/wps_upnp_event.o
+OBJS += ../src/wps/httpread.o
+endif
+
endif
ifdef CONFIG_EAP_IKEV2
OBJS += ../src/eap_server/eap_tnc.o
OBJS += ../src/eap_server/tncs.o
NEED_BASE64=y
+LIBS += -ldl
endif
# Basic EAP functionality is needed for EAPOL
# Shared TLS functions (needed for EAP_TLS, EAP_PEAP, and EAP_TTLS)
CFLAGS += -DEAP_TLS_FUNCS
OBJS += ../src/eap_server/eap_tls_common.o
+NEED_TLS_PRF=y
ifeq ($(CONFIG_TLS), openssl)
OBJS += ../src/crypto/tls_openssl.o
LIBS += -lssl -lcrypto
CFLAGS += -DCONFIG_NO_T_PRF
endif
+ifndef NEED_TLS_PRF
+CFLAGS += -DCONFIG_NO_TLS_PRF
+endif
+
ifdef CONFIG_RADIUS_SERVER
CFLAGS += -DRADIUS_SERVER
OBJS += ../src/radius/radius_server.o
OBJS += ../src/utils/base64.o
endif
+ifdef NEED_MLME
+OBJS += beacon.o wme.o ap_list.o ieee802_11.o
+OBJS += hw_features.o
+CFLAGS += -DNEED_MLME
+endif
+
ifdef CONFIG_NO_STDOUT_DEBUG
CFLAGS += -DCONFIG_NO_STDOUT_DEBUG
endif
+ifdef CONFIG_NO_AES_EXTRAS
+CFLAGS += -DCONFIG_NO_AES_UNWRAP
+CFLAGS += -DCONFIG_NO_AES_CTR -DCONFIG_NO_AES_OMAC1
+CFLAGS += -DCONFIG_NO_AES_EAX -DCONFIG_NO_AES_CBC
+CFLAGS += -DCONFIG_NO_AES_DECRYPT
+CFLAGS += -DCONFIG_NO_AES_ENCRYPT_BLOCK
+endif
+
ALL=hostapd hostapd_cli
all: verify_config $(ALL)