1c81d5b6205bf762093632de2cd7125de3d10eed5Dmitry Shmidt# Copyright (C) 2008 The Android Open Source Project 2c81d5b6205bf762093632de2cd7125de3d10eed5Dmitry Shmidt# 3c81d5b6205bf762093632de2cd7125de3d10eed5Dmitry Shmidt# This software may be distributed under the terms of the BSD license. 4c81d5b6205bf762093632de2cd7125de3d10eed5Dmitry Shmidt# See README for more details. 5c81d5b6205bf762093632de2cd7125de3d10eed5Dmitry Shmidt# 6c81d5b6205bf762093632de2cd7125de3d10eed5Dmitry Shmidt 78d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_PATH := $(call my-dir) 88d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 98d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtWPA_BUILD_HOSTAPD := false 10bbda627478b0e9a312fea4662cd7cd8d6bdf82bfJeff Brownifneq ($(BOARD_HOSTAPD_DRIVER),) 11bbda627478b0e9a312fea4662cd7cd8d6bdf82bfJeff Brown WPA_BUILD_HOSTAPD := true 12bbda627478b0e9a312fea4662cd7cd8d6bdf82bfJeff Brown CONFIG_DRIVER_$(BOARD_HOSTAPD_DRIVER) := y 138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 15e61a2d6db6113da5fad91660764afdb0596dbc46Dmitry Shmidtifeq ($(WPA_BUILD_HOSTAPD),true) 16e61a2d6db6113da5fad91660764afdb0596dbc46Dmitry Shmidt 177dd0f2072342a04eeead17ed975b639d89eb4589Dmitry Shmidtinclude $(LOCAL_PATH)/android.config 188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# To ignore possible wrong network configurations 208d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS = -DWPA_IGNORE_CONFIG_ERRORS 218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 2295613e49a5d2b830b45757efdb7144fd668f23aeDmitry ShmidtL_CFLAGS += -DVERSION_STR_POSTFIX=\"-$(PLATFORM_VERSION)\" 2395613e49a5d2b830b45757efdb7144fd668f23aeDmitry Shmidt 24648b7492d15bb4efaeebdfdd8bd261563a5f6227Dmitry Shmidt# Set Android log name 25648b7492d15bb4efaeebdfdd8bd261563a5f6227Dmitry ShmidtL_CFLAGS += -DANDROID_LOG_NAME=\"hostapd\" 26648b7492d15bb4efaeebdfdd8bd261563a5f6227Dmitry Shmidt 27f9bdef99ce3b2858f2812c745a3d6bb093fb0e5dDmitry Shmidt# Disable unused parameter warnings 28f9bdef99ce3b2858f2812c745a3d6bb093fb0e5dDmitry ShmidtL_CFLAGS += -Wno-unused-parameter 29f9bdef99ce3b2858f2812c745a3d6bb093fb0e5dDmitry Shmidt 30b58836ed5520bf4b769f76ef7dcb802af8c900b8Dmitry Shmidt# Set Android extended P2P functionality 310cc49e8db007f71888bf706420edfc530cf4fbffMike J. ChenL_CFLAGS += -DANDROID_P2P 32b58836ed5520bf4b769f76ef7dcb802af8c900b8Dmitry Shmidtifeq ($(BOARD_HOSTAPD_PRIVATE_LIB),) 33b58836ed5520bf4b769f76ef7dcb802af8c900b8Dmitry ShmidtL_CFLAGS += -DANDROID_P2P_STUB 340cc49e8db007f71888bf706420edfc530cf4fbffMike J. Chenendif 350cc49e8db007f71888bf706420edfc530cf4fbffMike J. Chen 36205f2142134d2f3475fe1f893575df8f809eede4Jeff Johnson# Use Android specific directory for control interface sockets 37205f2142134d2f3475fe1f893575df8f809eede4Jeff JohnsonL_CFLAGS += -DCONFIG_CTRL_IFACE_CLIENT_DIR=\"/data/misc/wifi/sockets\" 38205f2142134d2f3475fe1f893575df8f809eede4Jeff JohnsonL_CFLAGS += -DCONFIG_CTRL_IFACE_DIR=\"/data/system/hostapd\" 39205f2142134d2f3475fe1f893575df8f809eede4Jeff Johnson 408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# To force sizeof(enum) = 4 418d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(TARGET_ARCH),arm) 428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -mabi=aapcs-linux 438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 448d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 458d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtINCLUDES = $(LOCAL_PATH) 468d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtINCLUDES += $(LOCAL_PATH)/src 478d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtINCLUDES += $(LOCAL_PATH)/src/utils 488d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtINCLUDES += external/openssl/include 49f1396b4ebf0d67866b9fba2655c3f9f3327fb0a2Stephen SmalleyINCLUDES += system/security/keystore/include 508d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_DRIVER_NL80211 51cd44645b48dc2161fa6c018235aaf4b6a804d576Dmitry Shmidtifneq ($(wildcard external/libnl),) 52d620e6d0ba63c86303e656e844f89102588ffdb6Dmitry ShmidtINCLUDES += external/libnl/include 53cd44645b48dc2161fa6c018235aaf4b6a804d576Dmitry Shmidtelse 54cd44645b48dc2161fa6c018235aaf4b6a804d576Dmitry ShmidtINCLUDES += external/libnl-headers 55cd44645b48dc2161fa6c018235aaf4b6a804d576Dmitry Shmidtendif 568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 578d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 588d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 598d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CONFIG_OS 608d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NATIVE_WINDOWS 618d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_OS=win32 628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse 638d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_OS=unix 648d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 668d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 678d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_OS), internal) 688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DOS_NO_C_LIB_DEFINES 698d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 708d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 718d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NATIVE_WINDOWS 728d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_NATIVE_WINDOWS 738d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lws2_32 748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 758d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 768d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS = main.c 778d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += config_file.c 788d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 798d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/hostapd.c 808d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/wpa_auth_glue.c 818d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/drv_callbacks.c 828d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/ap_drv_ops.c 838d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/utils.c 848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/authsrv.c 858d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/ieee802_1x.c 868d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/ap_config.c 87d5e4923d04122f81300fa68fb07d64ede28fd44dDmitry ShmidtOBJS += src/ap/eap_user_db.c 888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/ieee802_11_auth.c 898d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/sta_info.c 908d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/wpa_auth.c 918d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/tkip_countermeasures.c 928d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/ap_mlme.c 938d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/wpa_auth_ie.c 948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/preauth_auth.c 958d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/pmksa_cache_auth.c 961f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS += src/ap/ieee802_11_shared.c 971f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS += src/ap/beacon.c 988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_d = 998d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_p = 1008d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS = 1018d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_c = 1028d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS = 1038d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h = 1048d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1058d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_RC4=y 1068d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES=y 1078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_MD5=y 1088d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA1=y 1098d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1108d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/drivers/drivers.c 1118d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DHOSTAPD 1128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPA_TRACE 1148d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DWPA_TRACE 1158d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/utils/trace.c 1168d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += src/utils/trace.c 1178d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLDFLAGS += -rdynamic 1188d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -funwind-tables 1198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPA_TRACE_BFD 1208d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DWPA_TRACE_BFD 1218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lbfd 1228d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_c += -lbfd 1238d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -lbfd 1248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 1258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 1268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1278d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/utils/eloop.c 1288d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/utils/common.c 1298d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/utils/wpa_debug.c 1308d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/utils/wpabuf.c 1318d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/utils/os_$(CONFIG_OS).c 1328d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/utils/ip_addr.c 1338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1348d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/common/ieee802_11_common.c 1358d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/common/wpa_common.c 1368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1378d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eapol_auth/eapol_auth_sm.c 1388d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CONFIG_NO_DUMP_STATE 141fb79edc9df1f20461e90e478363d207348213d35Dmitry Shmidt# define HOSTAPD_DUMP_STATE to include support for dumping internal state 142fb79edc9df1f20461e90e478363d207348213d35Dmitry Shmidt# through control interface commands (undefine it, if you want to save in 143fb79edc9df1f20461e90e478363d207348213d35Dmitry Shmidt# binary size) 1448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DHOSTAPD_DUMP_STATE 1458d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eapol_auth/eapol_auth_dump.c 1468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 1478d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1488d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_RADIUS 1498d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_NO_RADIUS 1508d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_NO_ACCOUNTING=y 1518d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse 1528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/radius/radius.c 1538d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/radius/radius_client.c 15461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += src/radius/radius_das.c 1558d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 1568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1578d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_ACCOUNTING 1588d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_NO_ACCOUNTING 1598d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse 1608d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/accounting.c 1618d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 1628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1638d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_VLAN 1648d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_NO_VLAN 1658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse 1668d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/vlan_init.c 16761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_VLAN_NETLINK 16861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_FULL_DYNAMIC_VLAN 16961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += src/ap/vlan_util.c 17061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 17161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtL_CFLAGS += -DCONFIG_VLAN_NETLINK 17261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 1738d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 1748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1758d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_CTRL_IFACE 1768d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_NO_CTRL_IFACE 1778d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse 1788d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ctrl_iface.c 1798d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/ctrl_iface_ap.c 1808d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 1818d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1828d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/md5.c 1838d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX 1858d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1868d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IAPP 1878d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_IAPP 1888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/iapp.c 1898d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 1908d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1918d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_RSN_PREAUTH 1928d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_RSN_PREAUTH 1938d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_L2_PACKET=y 1948d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 1958d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 1968d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_PEERKEY 1978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_PEERKEY 1988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/peerkey_auth.c 1998d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2008d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 201f21452aea786ac056eb01f1cbba4f553bd502747Dmitry Shmidtifdef CONFIG_HS20 202f21452aea786ac056eb01f1cbba4f553bd502747Dmitry ShmidtNEED_AES_OMAC1=y 203f21452aea786ac056eb01f1cbba4f553bd502747Dmitry Shmidtendif 204f21452aea786ac056eb01f1cbba4f553bd502747Dmitry Shmidt 2058d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IEEE80211W 2068d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_IEEE80211W 2078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y 2088d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_OMAC1=y 2098d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 2118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IEEE80211R 2128d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_IEEE80211R 2138d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/wpa_auth_ft.c 2148d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y 2158d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_OMAC1=y 2168d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_UNWRAP=y 2178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 219d5e4923d04122f81300fa68fb07d64ede28fd44dDmitry Shmidtifdef CONFIG_SAE 220d5e4923d04122f81300fa68fb07d64ede28fd44dDmitry ShmidtL_CFLAGS += -DCONFIG_SAE 221a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry ShmidtOBJS += src/common/sae.c 222a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry ShmidtNEED_ECC=y 223a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry ShmidtNEED_DH_GROUPS=y 224d5e4923d04122f81300fa68fb07d64ede28fd44dDmitry Shmidtendif 225d5e4923d04122f81300fa68fb07d64ede28fd44dDmitry Shmidt 226a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry Shmidtifdef CONFIG_WNM 227a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry ShmidtL_CFLAGS += -DCONFIG_WNM 22861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += src/ap/wnm_ap.c 22961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 23061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt 2318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IEEE80211N 2328d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_IEEE80211N 2338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 23561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_IEEE80211AC 23661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtL_CFLAGS += -DCONFIG_IEEE80211AC 23761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 23861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt 2398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtinclude $(LOCAL_PATH)/src/drivers/drivers.mk 2408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 2418d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += $(DRV_AP_OBJS) 2428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += $(DRV_AP_CFLAGS) 2438d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLDFLAGS += $(DRV_AP_LDFLAGS) 2448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += $(DRV_AP_LIBS) 2458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 2468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_L2_PACKET 2478d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_DNET_PCAP 2488d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_L2_FREEBSD 2498d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lpcap 2508d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/l2_packet/l2_packet_freebsd.c 2518d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse 2528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -ldnet -lpcap 2538d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/l2_packet/l2_packet_pcap.c 2548d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2558d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse 2568d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/l2_packet/l2_packet_linux.c 2578d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2588d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse 2598d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/l2_packet/l2_packet_none.c 2608d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2618d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 2628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 2638d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_MD5 2648d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_MD5 2658d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_md5.c 2668d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCHAP=y 2678d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2688d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 2698d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_TLS 2708d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_TLS 2718d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_tls.c 2728d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtTLS_FUNCS=y 2738d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 27561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_EAP_UNAUTH_TLS 27661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_UNAUTH_TLS 27761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifndef CONFIG_EAP_TLS 27861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += src/eap_server/eap_server_tls.c 27961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtTLS_FUNCS=y 28061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 28161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 28261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt 2838d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_PEAP 2848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_PEAP 2858d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_peap.c 2868d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_common/eap_peap_common.c 2878d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtTLS_FUNCS=y 2888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_EAP_MSCHAPV2=y 2898d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2908d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 2918d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_TTLS 2928d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_TTLS 2938d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_ttls.c 2948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtTLS_FUNCS=y 2958d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCHAP=y 2968d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 2978d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 2988d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_MSCHAPV2 2998d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_MSCHAPV2 3008d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_mschapv2.c 3018d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtMS_FUNCS=y 3028d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3048d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_GTC 3058d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_GTC 3068d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_gtc.c 3078d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3088d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3098d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_SIM 3108d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_SIM 3118d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_sim.c 3128d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_EAP_SIM_COMMON=y 3138d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_CBC=y 3148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_AKA 3178d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_AKA 3188d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_aka.c 3198d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_EAP_SIM_COMMON=y 3208d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y 3218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_CBC=y 3228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_AKA_PRIME 3258d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_AKA_PRIME 3268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_SIM_COMMON 3298d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_common/eap_sim_common.c 3308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# Example EAP-SIM/AKA interface for GSM/UMTS authentication. This can be 3318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# replaced with another file implementating the interface specified in 3328d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# eap_sim_db.h. 3338d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_sim_db.c 3348d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_FIPS186_2_PRF=y 3358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_PAX 3388d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_PAX 3398d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_pax.c src/eap_common/eap_pax_common.c 3408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3418d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3428d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_PSK 3438d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_PSK 3448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_psk.c src/eap_common/eap_psk_common.c 3458d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_OMAC1=y 3468d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_ENCBLOCK=y 3478d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_EAX=y 3488d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3498d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3508d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_SAKE 3518d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_SAKE 3528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_sake.c src/eap_common/eap_sake_common.c 3538d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3548d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3558d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_GPSK 3568d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_GPSK 3578d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_gpsk.c src/eap_common/eap_gpsk_common.c 3588d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_GPSK_SHA256 359fb79edc9df1f20461e90e478363d207348213d35Dmitry ShmidtL_CFLAGS += -DEAP_GPSK_SHA256 3608d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3618d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y 3628d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_OMAC1=y 3638d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3648d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_PWD 3668d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_PWD 3678d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_pwd.c src/eap_common/eap_pwd_common.c 3688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y 3698d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3708d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 37134af306c42b7ccf956508e7cd23f0ba90606e360Dmitry Shmidtifdef CONFIG_EAP_EKE 37234af306c42b7ccf956508e7cd23f0ba90606e360Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_EKE 37334af306c42b7ccf956508e7cd23f0ba90606e360Dmitry ShmidtOBJS += src/eap_server/eap_server_eke.c src/eap_common/eap_eke_common.c 37434af306c42b7ccf956508e7cd23f0ba90606e360Dmitry ShmidtNEED_DH_GROUPS=y 37534af306c42b7ccf956508e7cd23f0ba90606e360Dmitry ShmidtNEED_DH_GROUPS_ALL=y 37634af306c42b7ccf956508e7cd23f0ba90606e360Dmitry Shmidtendif 37734af306c42b7ccf956508e7cd23f0ba90606e360Dmitry Shmidt 3788d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_VENDOR_TEST 3798d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_VENDOR_TEST 3808d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_vendor_test.c 3818d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3828d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3838d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_FAST 3848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_FAST 3858d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_fast.c 3868d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_common/eap_fast_common.c 3878d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtTLS_FUNCS=y 3888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_T_PRF=y 3898d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_UNWRAP=y 3908d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 3918d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 3928d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS 3938d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_WPS -DEAP_SERVER_WSC 3948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/utils/uuid.c 3958d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/wps_hostapd.c 3968d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_wsc.c src/eap_common/eap_wsc_common.c 3978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps.c 3988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_common.c 3998d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_attr_parse.c 4008d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_attr_build.c 4018d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_attr_process.c 4028d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_dev_attr.c 4038d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_enrollee.c 4048d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_registrar.c 4058d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DH_GROUPS=y 4068d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y 4078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_BASE64=y 4088d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_CBC=y 4098d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_MODEXP=y 4108d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_EAP=y 4118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS_NFC 4138d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_WPS_NFC 4148d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/ndef.c 4158d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_WPS_OOB=y 4168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_WPS_OOB 4198d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_WPS_OOB 4208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS_UPNP 4238d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_WPS_UPNP 4248d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_upnp.c 4258d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_upnp_ssdp.c 4268d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_upnp_web.c 4278d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_upnp_event.c 4288d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_upnp_ap.c 4298d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/upnp_xml.c 4308d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/httpread.c 4318d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/http_client.c 4328d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/http_server.c 4338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS_STRICT 4368d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_WPS_STRICT 4378d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/wps/wps_validate.c 4388d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS_TESTING 4418d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_WPS_TESTING 4428d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4448d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_IKEV2 4478d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_IKEV2 4488d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_ikev2.c src/eap_server/ikev2.c 4498d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_common/eap_ikev2_common.c src/eap_common/ikev2_common.c 4508d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DH_GROUPS=y 4518d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DH_GROUPS_ALL=y 4528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_MODEXP=y 4538d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_CIPHER=y 4548d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4558d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_TNC 4578d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_TNC 4588d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_tnc.c 4598d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/tncs.c 4608d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_BASE64=y 4618d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CONFIG_DRIVER_BSD 4628d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -ldl 4638d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4648d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4668d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# Basic EAP functionality is needed for EAPOL 4678d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += eap_register.c 4688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server.c 4698d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_common/eap_common.c 4708d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_methods.c 4718d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_identity.c 4728d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER_IDENTITY 4738d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP 4758d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_SERVER 4768d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4778d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4788d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_PKCS12 4798d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DPKCS12_FUNCS 4808d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4818d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4828d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef MS_FUNCS 4838d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/ms_funcs.c 4848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DES=y 4858d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_MD4=y 4868d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4878d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4888d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CHAP 4898d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_common/chap.c 4908d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4918d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 4928d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS 4938d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DES=y 4948d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# Shared TLS functions (needed for EAP_TLS, EAP_PEAP, and EAP_TTLS) 4958d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_TLS_FUNCS 4968d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/eap_server/eap_server_tls_common.c 4978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_TLS_PRF=y 4988d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 4998d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 5008d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CONFIG_TLS 5018d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_TLS=openssl 5028d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 50461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_TLSV11 50561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtL_CFLAGS += -DCONFIG_TLSV11 50661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 50761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt 50861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_TLSV12 50961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtL_CFLAGS += -DCONFIG_TLSV12 51061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtNEED_SHA256=y 51161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 51261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt 5138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), openssl) 5148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS 5158d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/tls_openssl.c 5168d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lssl 5178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5188d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_openssl.c 5198d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += src/crypto/crypto_openssl.c 5208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_FIPS186_2_PRF 5218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/fips_prf_openssl.c 5228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5238d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lcrypto 5248d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -lcrypto 5258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 5278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), gnutls) 5288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS 5298d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/tls_gnutls.c 5308d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lgnutls -lgpg-error 5318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5328d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_gnutls.c 5338d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += src/crypto/crypto_gnutls.c 5348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_FIPS186_2_PRF 5359866086a955d00e237cc8df3722e7dff75c02532Dmitry ShmidtOBJS += src/crypto/fips_prf_internal.c 5369866086a955d00e237cc8df3722e7dff75c02532Dmitry ShmidtOBJS += src/crypto/sha1-internal.c 5378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5388d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lgcrypt 5398d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -lgcrypt 5408d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y 5418d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y 5428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DH_GROUP5=y 5438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5448d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 5458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), schannel) 5468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS 5478d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/tls_schannel.c 5488d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5498d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_cryptoapi.c 5508d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_p += src/crypto/crypto_cryptoapi.c 5518d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y 5528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y 5538d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DH_GROUP5=y 5548d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5558d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 5568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), nss) 5578d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS 5588d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/tls_nss.c 5598d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lssl3 5608d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5618d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_nss.c 5628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_FIPS186_2_PRF 5639866086a955d00e237cc8df3722e7dff75c02532Dmitry ShmidtOBJS += src/crypto/fips_prf_internal.c 5649866086a955d00e237cc8df3722e7dff75c02532Dmitry ShmidtOBJS += src/crypto/sha1-internal.c 5658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5668d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lnss3 5678d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -lnss3 5688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_MD4=y 5698d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DH_GROUP5=y 5708d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5718d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 5728d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), internal) 5738d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CONFIG_CRYPTO 5748d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_CRYPTO=internal 5758d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 5768d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS 5778d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_internal-rsa.c 5788d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/tls_internal.c 5798d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/tlsv1_common.c 5808d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/tlsv1_record.c 5818d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/tlsv1_cred.c 5828d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/tlsv1_server.c 5838d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/tlsv1_server_write.c 5848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/tlsv1_server_read.c 5858d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/asn1.c 5868d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/rsa.c 5878d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/x509v3.c 5888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/pkcs1.c 5898d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/pkcs5.c 5908d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/pkcs8.c 5918d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y 5928d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_BASE64=y 5938d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_TLS_PRF=y 59461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_TLSV12 59561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtNEED_TLS_PRF_SHA256=y 59661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 5978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_MODEXP=y 5988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_CIPHER=y 5998d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_TLS_INTERNAL 6008d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_TLS_INTERNAL_SERVER 6018d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6028d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_CIPHER 6038d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DES=y 6048d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_internal-cipher.c 6058d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6068d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_MODEXP 6078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_internal-modexp.c 6088d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/tls/bignum.c 6098d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_CRYPTO), libtomcrypt) 6118d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_libtomcrypt.c 6128d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -ltomcrypt -ltfm 6138d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -ltomcrypt -ltfm 6148d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y 6158d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y 6168d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DH_GROUP5=y 6178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_CRYPTO), internal) 6198d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_internal.c 6208d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_DEC=y 6218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_CRYPTO_INTERNAL 6228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_LIBTOMMATH 6238d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_INTERNAL_LIBTOMMATH 6248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_LIBTOMMATH_FAST 6258d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DLTM_FAST 6268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse 6288d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -ltommath 6298d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -ltommath 6308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6318d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_AES=y 6328d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DES=y 6338d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA1=y 6348d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_MD4=y 6358d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_MD5=y 6368d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y 6378d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y 6388d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DH_GROUP5=y 6398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_CRYPTO), cryptoapi) 6418d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_cryptoapi.c 6428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_p += src/crypto/crypto_cryptoapi.c 6438d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_CRYPTO_CRYPTOAPI 6448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y 6458d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y 6468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6478d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6488d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 6498d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), none) 6508d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS 6518d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/tls_none.c 6528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DEAP_TLS_NONE 6538d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_AES=y 6548d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA1=y 6558d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_MD5=y 6568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6578d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/crypto_none.c 6588d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_p += src/crypto/crypto_none.c 6598d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y 6608d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y 6618d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 6638d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef TLS_FUNCS 6648d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/tls_none.c 6658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), internal) 6668d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_AES=y 6678d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA1=y 6688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_MD5=y 6698d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y 6708d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6718d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6728d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 6738d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS = # none so far 6748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_AES 6758d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += src/crypto/aes-internal.c src/crypto/aes-internal-enc.c 6768d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6778d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 6788d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += src/crypto/aes-wrap.c 6798d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_EAX 6808d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += src/crypto/aes-eax.c 6818d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_CTR=y 6828d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6838d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_CTR 6848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += src/crypto/aes-ctr.c 6858d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6868d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_ENCBLOCK 6878d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += src/crypto/aes-encblock.c 6888d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6898d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_OMAC1 6908d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += src/crypto/aes-omac1.c 6918d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6928d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_UNWRAP 6938d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_DEC=y 6948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += src/crypto/aes-unwrap.c 6958d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 6968d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_CBC 6978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_DEC=y 6988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += src/crypto/aes-cbc.c 6998d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7008d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_DEC 7018d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_AES 7028d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += src/crypto/aes-internal-dec.c 7038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7048d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7058d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES 7068d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += $(AESOBJS) 7078d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7088d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 7098d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS = 7108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_SHA1 71161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifneq ($(CONFIG_TLS), openssl) 7128d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += src/crypto/sha1.c 71361d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 71461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtSHA1OBJS += src/crypto/sha1-prf.c 7158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_SHA1 7168d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += src/crypto/sha1-internal.c 7178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_FIPS186_2_PRF 7188d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += src/crypto/fips_prf_internal.c 7198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 72161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifneq ($(CONFIG_TLS), openssl) 7228d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += src/crypto/sha1-pbkdf2.c 72361d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 7248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_T_PRF 7258d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += src/crypto/sha1-tprf.c 7268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_TLS_PRF 7288d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += src/crypto/sha1-tlsprf.c 7298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 7328d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_SHA1 7338d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += $(SHA1OBJS) 7348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 7368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_MD5 7378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_MD5 7388d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/md5-internal.c 7398d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += src/crypto/md5-internal.c 7408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7418d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7428d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 7438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_MD4 7448d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_MD4 7458d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/md4-internal.c 7468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7478d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7488d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 7498d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_DES 7508d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_DES 7518d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/des-internal.c 7528d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7538d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7548d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 7558d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_RC4 7568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_RC4 7578d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/rc4.c 7588d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7598d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7608d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 7618d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_SHA256 76261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtL_CFLAGS += -DCONFIG_SHA256 76361d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifneq ($(CONFIG_TLS), openssl) 7648d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/sha256.c 76561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 76661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += src/crypto/sha256-prf.c 7678d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_SHA256 7688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/sha256-internal.c 7698d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 77061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef NEED_TLS_PRF_SHA256 77161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += src/crypto/sha256-tlsprf.c 77261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 7738d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 7758d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_DH_GROUPS 7768d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/dh_groups.c 7778d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7788d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_DH_GROUPS_ALL 7798d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DALL_DH_GROUPS 7808d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7818d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_DH_GROUP5 7828d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_DH_GROUPS 7838d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/dh_group5.c 7848d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7858d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 7868d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 787a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry Shmidtifdef NEED_ECC 788a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry ShmidtL_CFLAGS += -DCONFIG_ECC 789a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry Shmidtendif 790a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry Shmidt 7918d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_RANDOM_POOL 7928d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_NO_RANDOM_POOL 7938d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse 7948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/crypto/random.c 7958d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += src/crypto/random.c 79661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtHOBJS += src/utils/eloop.c 7978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += $(SHA1OBJS) 7988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += src/crypto/md5.c 7998d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8008d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8018d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_RADIUS_SERVER 8028d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DRADIUS_SERVER 8038d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/radius/radius_server.c 8048d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8058d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8068d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IPV6 8078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_IPV6 8088d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8098d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_DRIVER_RADIUS_ACL 8118d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_DRIVER_RADIUS_ACL 8128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_FULL_DYNAMIC_VLAN 8158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# define CONFIG_FULL_DYNAMIC_VLAN to have hostapd manipulate bridges 8168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# and vlan interfaces for the vlan feature. 8178d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_FULL_DYNAMIC_VLAN 8188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_BASE64 8218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/utils/base64.c 8228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AP_MLME 8258d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/wmm.c 8268d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/ap_list.c 8278d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/ieee802_11.c 8288d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/hw_features.c 829051af73b8f8014eff33330aead0f36944b3403e6Dmitry ShmidtOBJS += src/ap/dfs.c 8308d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DNEED_AP_MLME 8318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8328d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IEEE80211N 8338d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/ieee802_11_ht.c 8348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 83661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_IEEE80211AC 83761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += src/ap/ieee802_11_vht.c 83861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 83961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt 8408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_P2P_MANAGER 8418d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_P2P_MANAGER 8428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += src/ap/p2p_hostapd.c 8438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8448d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 84561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_HS20 84661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtL_CFLAGS += -DCONFIG_HS20 84761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += src/ap/hs20.c 84861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtCONFIG_INTERWORKING=y 84961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 85061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt 85161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_INTERWORKING 85261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtL_CFLAGS += -DCONFIG_INTERWORKING 85361d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += src/common/gas.c 85461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += src/ap/gas_serv.c 85561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif 85661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt 8571f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS += src/drivers/driver_common.c 8581f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidt 8595460547a121207cf7a99eac45e05fcdd83be3161Dmitry Shmidtifdef CONFIG_ACS 8605460547a121207cf7a99eac45e05fcdd83be3161Dmitry ShmidtL_CFLAGS += -DCONFIG_ACS 8615460547a121207cf7a99eac45e05fcdd83be3161Dmitry ShmidtOBJS += src/ap/acs.c 8625460547a121207cf7a99eac45e05fcdd83be3161Dmitry ShmidtLIBS += -lm 8635460547a121207cf7a99eac45e05fcdd83be3161Dmitry Shmidtendif 8645460547a121207cf7a99eac45e05fcdd83be3161Dmitry Shmidt 8658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_STDOUT_DEBUG 8668d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_NO_STDOUT_DEBUG 8678d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8688d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8695460547a121207cf7a99eac45e05fcdd83be3161Dmitry Shmidtifdef CONFIG_DEBUG_LINUX_TRACING 8705460547a121207cf7a99eac45e05fcdd83be3161Dmitry ShmidtL_CFLAGS += -DCONFIG_DEBUG_LINUX_TRACING 8715460547a121207cf7a99eac45e05fcdd83be3161Dmitry Shmidtendif 8725460547a121207cf7a99eac45e05fcdd83be3161Dmitry Shmidt 8738d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_DEBUG_FILE 8748d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_DEBUG_FILE 8758d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8768d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8778d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_ANDROID_LOG 8788d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtL_CFLAGS += -DCONFIG_ANDROID_LOG 8798d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8808d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8818d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_c = hostapd_cli.c src/common/wpa_ctrl.c src/utils/os_$(CONFIG_OS).c 8821f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS_c += src/utils/eloop.c 8838d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPA_TRACE 8848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_c += src/utils/trace.c 8851f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtendif 8868d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_c += src/utils/wpa_debug.c 8871f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtifdef CONFIG_WPA_CLI_EDIT 8881f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS_c += src/utils/edit.c 8891f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtelse 8901f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS_c += src/utils/edit_simple.c 8918d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 8928d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8938d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt######################## 8948d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 8958d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtinclude $(CLEAR_VARS) 8968d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_MODULE := hostapd_cli 8978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_MODULE_TAGS := debug 898e93dd11e00aa3a511406648774f01db31304323aYing WangLOCAL_SHARED_LIBRARIES := libc libcutils liblog 8998d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_CFLAGS := $(L_CFLAGS) 9008d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_SRC_FILES := $(OBJS_c) 9018d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_C_INCLUDES := $(INCLUDES) 9028d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtinclude $(BUILD_EXECUTABLE) 9038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 9048d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt######################## 9058d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtinclude $(CLEAR_VARS) 9068d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_MODULE := hostapd 9078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_MODULE_TAGS := optional 9088d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_DRIVER_CUSTOM 9098d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_STATIC_LIBRARIES := libCustomWifi 9108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 9118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifneq ($(BOARD_HOSTAPD_PRIVATE_LIB),) 9128d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_STATIC_LIBRARIES += $(BOARD_HOSTAPD_PRIVATE_LIB) 9138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 914e93dd11e00aa3a511406648774f01db31304323aYing WangLOCAL_SHARED_LIBRARIES := libc libcutils liblog libcrypto libssl 9158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_DRIVER_NL80211 916cd44645b48dc2161fa6c018235aaf4b6a804d576Dmitry Shmidtifneq ($(wildcard external/libnl),) 917d620e6d0ba63c86303e656e844f89102588ffdb6Dmitry ShmidtLOCAL_SHARED_LIBRARIES += libnl 918cd44645b48dc2161fa6c018235aaf4b6a804d576Dmitry Shmidtelse 919cd44645b48dc2161fa6c018235aaf4b6a804d576Dmitry ShmidtLOCAL_STATIC_LIBRARIES += libnl_2 920cd44645b48dc2161fa6c018235aaf4b6a804d576Dmitry Shmidtendif 9218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif 9228d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_CFLAGS := $(L_CFLAGS) 9238d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_SRC_FILES := $(OBJS) 9248d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLOCAL_C_INCLUDES := $(INCLUDES) 9258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtinclude $(BUILD_EXECUTABLE) 9268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 9278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif # ifeq ($(WPA_BUILD_HOSTAPD),true) 928