18d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CC
28d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCC=gcc
38d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
48d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
58d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CFLAGS
68d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS = -MMD -O2 -Wall -g
78d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
88d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
98d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -I../src
108d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -I../src/utils
118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# Uncomment following line and set the path to your kernel tree include
138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# directory if your C library does not include all header files.
148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# CFLAGS += -DUSE_KERNEL_HEADERS -I/usr/src/linux/include
158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt-include .config
178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CONFIG_OS
198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NATIVE_WINDOWS
208d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_OS=win32
218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse
228d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_OS=unix
238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_OS), internal)
278d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DOS_NO_C_LIB_DEFINES
288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NATIVE_WINDOWS
318d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_NATIVE_WINDOWS
328d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lws2_32
338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
358d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += main.o
368d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += config_file.o
378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
388d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/hostapd.o
398d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/wpa_auth_glue.o
408d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/drv_callbacks.o
418d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/ap_drv_ops.o
428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/utils.o
438d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/authsrv.o
448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/ieee802_1x.o
458d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/ap_config.o
46d5e4923d04122f81300fa68fb07d64ede28fd44dDmitry ShmidtOBJS += ../src/ap/eap_user_db.o
478d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/ieee802_11_auth.o
488d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/sta_info.o
498d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/wpa_auth.o
508d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/tkip_countermeasures.o
518d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/ap_mlme.o
528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/wpa_auth_ie.o
538d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/preauth_auth.o
548d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/pmksa_cache_auth.o
551f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS += ../src/ap/ieee802_11_shared.o
561f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS += ../src/ap/beacon.o
571f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidt
581f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS_c = hostapd_cli.o ../src/common/wpa_ctrl.o ../src/utils/os_$(CONFIG_OS).o
598d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
608d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_RC4=y
618d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES=y
628d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_MD5=y
638d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA1=y
648d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
658d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/drivers/drivers.o
668d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DHOSTAPD
678d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
688d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPA_TRACE
698d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DWPA_TRACE
708d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/utils/trace.o
718d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += ../src/utils/trace.o
728d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLDFLAGS += -rdynamic
738d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -funwind-tables
748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPA_TRACE_BFD
758d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DWPA_TRACE_BFD
768d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lbfd
778d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_c += -lbfd
788d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -lbfd
798d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
808d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
818d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
821f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtifndef CONFIG_ELOOP
831f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtCONFIG_ELOOP=eloop
841f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtendif
851f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS += ../src/utils/$(CONFIG_ELOOP).o
861f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS_c += ../src/utils/$(CONFIG_ELOOP).o
878d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/utils/common.o
888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/utils/wpa_debug.o
891f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS_c += ../src/utils/wpa_debug.o
908d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/utils/wpabuf.o
918d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/utils/os_$(CONFIG_OS).o
928d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/utils/ip_addr.o
938d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/common/ieee802_11_common.o
958d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/common/wpa_common.o
968d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eapol_auth/eapol_auth_sm.o
988d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
998d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1008d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CONFIG_NO_DUMP_STATE
1018d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# define HOSTAPD_DUMP_STATE to include SIGUSR1 handler for dumping state to
1028d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# a file (undefine it, if you want to save in binary size)
1038d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DHOSTAPD_DUMP_STATE
1048d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += dump_state.o
1058d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eapol_auth/eapol_auth_dump.o
1068d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1078d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1088d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_RADIUS
1098d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_NO_RADIUS
1108d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_NO_ACCOUNTING=y
1118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse
1128d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/radius/radius.o
1138d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/radius/radius_client.o
11404949598a23f501be6eec21697465fd46a28840aDmitry ShmidtOBJS += ../src/radius/radius_das.o
1158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_ACCOUNTING
1188d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_NO_ACCOUNTING
1198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse
1208d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/accounting.o
1218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_VLAN
1248d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_NO_VLAN
1258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse
1268d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/vlan_init.o
12761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_VLAN_NETLINK
12861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_FULL_DYNAMIC_VLAN
12961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += ../src/ap/vlan_util.o
13061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif
13161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtCFLAGS += -DCONFIG_VLAN_NETLINK
13261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif
1338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_CTRL_IFACE
1368d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_NO_CTRL_IFACE
1378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse
1388d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ctrl_iface.o
1398d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/ctrl_iface_ap.o
1408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1418d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/md5.o
1438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX
1458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IAPP
1478d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_IAPP
1488d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/iapp.o
1498d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1508d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1518d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_RSN_PREAUTH
1528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_RSN_PREAUTH
1538d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_L2_PACKET=y
1548d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1558d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_PEERKEY
1578d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_PEERKEY
1588d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/peerkey_auth.o
1598d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1608d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1618d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IEEE80211W
1628d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_IEEE80211W
1638d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y
1648d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_OMAC1=y
1658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1668d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
1678d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IEEE80211R
1688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_IEEE80211R
1698d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/wpa_auth_ft.o
1708d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y
1718d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_OMAC1=y
1728d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_UNWRAP=y
1738d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
175d5e4923d04122f81300fa68fb07d64ede28fd44dDmitry Shmidtifdef CONFIG_SAE
176d5e4923d04122f81300fa68fb07d64ede28fd44dDmitry ShmidtCFLAGS += -DCONFIG_SAE
177a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry ShmidtOBJS += ../src/common/sae.o
178a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry ShmidtNEED_ECC=y
179a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry ShmidtNEED_DH_GROUPS=y
180d5e4923d04122f81300fa68fb07d64ede28fd44dDmitry Shmidtendif
181d5e4923d04122f81300fa68fb07d64ede28fd44dDmitry Shmidt
182a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry Shmidtifdef CONFIG_WNM
183a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry ShmidtCFLAGS += -DCONFIG_WNM
18461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += ../src/ap/wnm_ap.o
18561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif
18661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt
1878d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IEEE80211N
1888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_IEEE80211N
1898d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
1908d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
19104949598a23f501be6eec21697465fd46a28840aDmitry Shmidtifdef CONFIG_IEEE80211AC
19204949598a23f501be6eec21697465fd46a28840aDmitry ShmidtCFLAGS += -DCONFIG_IEEE80211AC
19304949598a23f501be6eec21697465fd46a28840aDmitry Shmidtendif
19404949598a23f501be6eec21697465fd46a28840aDmitry Shmidt
1958d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtinclude ../src/drivers/drivers.mak
1968d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += $(DRV_AP_OBJS)
1978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += $(DRV_AP_CFLAGS)
1988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLDFLAGS += $(DRV_AP_LDFLAGS)
1998d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += $(DRV_AP_LIBS)
2008d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2018d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_L2_PACKET
2028d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_DNET_PCAP
2038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_L2_FREEBSD
2048d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lpcap
2058d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/l2_packet/l2_packet_freebsd.o
2068d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse
2078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -ldnet -lpcap
2088d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/l2_packet/l2_packet_pcap.o
2098d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse
2118d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/l2_packet/l2_packet_linux.o
2128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse
2148d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/l2_packet/l2_packet_none.o
2158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_MD5
2198d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_MD5
2208d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_md5.o
2218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCHAP=y
2228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_TLS
2258d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_TLS
2268d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_tls.o
2278d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtTLS_FUNCS=y
2288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
23061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_EAP_UNAUTH_TLS
23161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtCFLAGS += -DEAP_SERVER_UNAUTH_TLS
23261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifndef CONFIG_EAP_TLS
23361d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += ../src/eap_server/eap_server_tls.o
23461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtTLS_FUNCS=y
23561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif
23661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif
23761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt
2388d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_PEAP
2398d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_PEAP
2408d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_peap.o
2418d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_common/eap_peap_common.o
2428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtTLS_FUNCS=y
2438d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_EAP_MSCHAPV2=y
2448d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_TTLS
2478d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_TTLS
2488d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_ttls.o
2498d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtTLS_FUNCS=y
2508d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCHAP=y
2518d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2528d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2538d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_MSCHAPV2
2548d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_MSCHAPV2
2558d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_mschapv2.o
2568d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtMS_FUNCS=y
2578d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2588d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2598d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_GTC
2608d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_GTC
2618d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_gtc.o
2628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2638d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2648d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_SIM
2658d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_SIM
2668d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_sim.o
2678d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_EAP_SIM_COMMON=y
2688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_CBC=y
2698d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2708d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2718d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_AKA
2728d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_AKA
2738d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_aka.o
2748d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_EAP_SIM_COMMON=y
2758d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y
2768d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_CBC=y
2778d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2788d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2798d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_AKA_PRIME
2808d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_AKA_PRIME
2818d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2828d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2838d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_SIM_COMMON
2848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_common/eap_sim_common.o
2858d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# Example EAP-SIM/AKA interface for GSM/UMTS authentication. This can be
2868d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# replaced with another file implementating the interface specified in
2878d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# eap_sim_db.h.
2888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_sim_db.o
2898d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_FIPS186_2_PRF=y
2908d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2918d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2928d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_PAX
2938d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_PAX
2948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_pax.o ../src/eap_common/eap_pax_common.o
2958d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
2968d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
2978d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_PSK
2988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_PSK
2998d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_psk.o ../src/eap_common/eap_psk_common.o
3008d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_OMAC1=y
3018d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_ENCBLOCK=y
3028d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_EAX=y
3038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3048d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3058d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_SAKE
3068d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_SAKE
3078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_sake.o ../src/eap_common/eap_sake_common.o
3088d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3098d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_GPSK
3118d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_GPSK
3128d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_gpsk.o ../src/eap_common/eap_gpsk_common.o
3138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_GPSK_SHA256
3148d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_GPSK_SHA256
3158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3168d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y
3178d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_OMAC1=y
3188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_PWD
3218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_PWD
3228d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_pwd.o ../src/eap_common/eap_pwd_common.o
3238d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y
3248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
32634af306c42b7ccf956508e7cd23f0ba90606e360Dmitry Shmidtifdef CONFIG_EAP_EKE
32734af306c42b7ccf956508e7cd23f0ba90606e360Dmitry ShmidtCFLAGS += -DEAP_SERVER_EKE
32834af306c42b7ccf956508e7cd23f0ba90606e360Dmitry ShmidtOBJS += ../src/eap_server/eap_server_eke.o ../src/eap_common/eap_eke_common.o
32934af306c42b7ccf956508e7cd23f0ba90606e360Dmitry ShmidtNEED_DH_GROUPS=y
33034af306c42b7ccf956508e7cd23f0ba90606e360Dmitry ShmidtNEED_DH_GROUPS_ALL=y
33134af306c42b7ccf956508e7cd23f0ba90606e360Dmitry Shmidtendif
33234af306c42b7ccf956508e7cd23f0ba90606e360Dmitry Shmidt
3338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_VENDOR_TEST
3348d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_VENDOR_TEST
3358d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_vendor_test.o
3368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3388d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_FAST
3398d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_FAST
3408d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_fast.o
3418d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_common/eap_fast_common.o
3428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtTLS_FUNCS=y
3438d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_T_PRF=y
3448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_UNWRAP=y
3458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3478d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS
3488d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS2
3498d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_WPS2
3508d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3518d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_WPS -DEAP_SERVER_WSC
3538d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/utils/uuid.o
3548d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/wps_hostapd.o
3558d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_wsc.o ../src/eap_common/eap_wsc_common.o
3568d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps.o
3578d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_common.o
3588d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_attr_parse.o
3598d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_attr_build.o
3608d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_attr_process.o
3618d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_dev_attr.o
3628d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_enrollee.o
3638d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_registrar.o
3648d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DH_GROUPS=y
3658d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y
3668d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_BASE64=y
3678d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_CBC=y
3688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_MODEXP=y
3698d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_EAP=y
3708d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3718d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS_NFC
3728d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_WPS_NFC
3738d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/ndef.o
3748d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_WPS_OOB=y
3758d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3768d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3778d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_WPS_OOB
3788d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_WPS_OOB
3798d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3808d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3818d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS_UPNP
3828d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_WPS_UPNP
3838d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_upnp.o
3848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_upnp_ssdp.o
3858d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_upnp_web.o
3868d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_upnp_event.o
3878d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_upnp_ap.o
3888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/upnp_xml.o
3898d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/httpread.o
3908d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/http_client.o
3918d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/http_server.o
3928d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3938d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3948d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS_STRICT
3958d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_WPS_STRICT
3968d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/wps/wps_validate.o
3978d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
3988d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3998d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPS_TESTING
4008d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_WPS_TESTING
4018d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4028d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4048d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4058d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_IKEV2
4068d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_IKEV2
4078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_ikev2.o ../src/eap_server/ikev2.o
4088d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_common/eap_ikev2_common.o ../src/eap_common/ikev2_common.o
4098d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DH_GROUPS=y
4108d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DH_GROUPS_ALL=y
4118d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_MODEXP=y
4128d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_CIPHER=y
4138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP_TNC
4168d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_TNC
4178d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_tnc.o
4188d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/tncs.o
4198d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_BASE64=y
4208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CONFIG_DRIVER_BSD
4218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -ldl
4228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# Basic EAP functionality is needed for EAPOL
4268d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += eap_register.o
4278d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server.o
4288d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_common/eap_common.o
4298d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_methods.o
4308d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_identity.o
4318d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER_IDENTITY
4328d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_EAP
4348d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_SERVER
4358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_PKCS12
4388d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DPKCS12_FUNCS
4398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4418d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef MS_FUNCS
4428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/ms_funcs.o
4438d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DES=y
4448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_MD4=y
4458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4478d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CHAP
4488d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_common/chap.o
4498d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4508d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4518d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS
4528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DES=y
4538d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# Shared TLS functions (needed for EAP_TLS, EAP_PEAP, and EAP_TTLS)
4548d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_TLS_FUNCS
4558d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/eap_server/eap_server_tls_common.o
4568d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_TLS_PRF=y
4578d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4588d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4598d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CONFIG_TLS
4608d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_TLS=openssl
4618d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4631f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtifdef CONFIG_TLSV11
4641f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtCFLAGS += -DCONFIG_TLSV11
4651f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtendif
4661f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidt
4671f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtifdef CONFIG_TLSV12
4681f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtCFLAGS += -DCONFIG_TLSV12
4691f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtNEED_SHA256=y
4701f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtendif
4711f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidt
4728d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), openssl)
4738d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS
4748d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/tls_openssl.o
4758d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lssl
4768d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4778d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_openssl.o
4788d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += ../src/crypto/crypto_openssl.o
4798d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_FIPS186_2_PRF
4808d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/fips_prf_openssl.o
4818d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4828d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lcrypto
4838d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -lcrypto
4848d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4858d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
4868d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), gnutls)
4878d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS
4888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/tls_gnutls.o
4898d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lgnutls -lgpg-error
4908d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4918d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_gnutls.o
4928d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += ../src/crypto/crypto_gnutls.o
4938d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_FIPS186_2_PRF
4948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/fips_prf_gnutls.o
4958d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
4968d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lgcrypt
4978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -lgcrypt
4988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y
4998d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y
5008d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DH_GROUP5=y
5018d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5028d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
5038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), schannel)
5048d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS
5058d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/tls_schannel.o
5068d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_cryptoapi.o
5088d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_p += ../src/crypto/crypto_cryptoapi.o
5098d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y
5108d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y
5118d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DH_GROUP5=y
5128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
5148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), nss)
5158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS
5168d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/tls_nss.o
5178d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lssl3
5188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5198d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_nss.o
5208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_FIPS186_2_PRF
5218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/fips_prf_nss.o
5228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5238d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -lnss3
5248d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -lnss3
5258d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_MD4=y
5268d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DH_GROUP5=y
5278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
5298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), internal)
5308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef CONFIG_CRYPTO
5318d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_CRYPTO=internal
5328d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS
5348d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_internal-rsa.o
5358d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/tls_internal.o
5368d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/tlsv1_common.o
5378d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/tlsv1_record.o
5388d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/tlsv1_cred.o
5398d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/tlsv1_server.o
5408d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/tlsv1_server_write.o
5418d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/tlsv1_server_read.o
5428d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/asn1.o
5438d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/rsa.o
5448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/x509v3.o
5458d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/pkcs1.o
5468d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/pkcs5.o
5478d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/pkcs8.o
5488d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_SHA256=y
5498d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_BASE64=y
5508d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_TLS_PRF=y
5511f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtifdef CONFIG_TLSV12
5521f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtNEED_TLS_PRF_SHA256=y
5531f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtendif
5548d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_MODEXP=y
5558d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_CIPHER=y
5568d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_TLS_INTERNAL
5578d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_TLS_INTERNAL_SERVER
5588d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5598d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_CIPHER
5608d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_DES=y
5618d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_internal-cipher.o
5628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5638d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_MODEXP
5648d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_internal-modexp.o
5658d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/tls/bignum.o
5668d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5678d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_CRYPTO), libtomcrypt)
5688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_libtomcrypt.o
5698d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -ltomcrypt -ltfm
5708d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -ltomcrypt -ltfm
5718d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y
5728d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y
5738d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DH_GROUP5=y
5748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5758d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_CRYPTO), internal)
5768d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_internal.o
5778d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_DEC=y
5788d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_CRYPTO_INTERNAL
5798d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_LIBTOMMATH
5808d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_INTERNAL_LIBTOMMATH
5818d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_LIBTOMMATH_FAST
5828d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DLTM_FAST
5838d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5848d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse
5858d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS += -ltommath
5868d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_h += -ltommath
5878d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_AES=y
5898d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DES=y
5908d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA1=y
5918d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_MD4=y
5928d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_MD5=y
5938d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y
5948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y
5958d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_DH_GROUP5=y
5968d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
5978d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_CRYPTO), cryptoapi)
5988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_cryptoapi.o
5998d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_p += ../src/crypto/crypto_cryptoapi.o
6008d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_CRYPTO_CRYPTOAPI
6018d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y
6028d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y
6038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6048d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6058d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
6068d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), none)
6078d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS
6088d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/tls_none.o
6098d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DEAP_TLS_NONE
6108d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_AES=y
6118d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA1=y
6128d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_MD5=y
6138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6148d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/crypto_none.o
6158d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_p += ../src/crypto/crypto_none.o
6168d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA256=y
6178d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y
6188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
6208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifndef TLS_FUNCS
6218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/tls_none.o
6228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(CONFIG_TLS), internal)
6238d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_AES=y
6248d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_SHA1=y
6258d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_MD5=y
6268d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCONFIG_INTERNAL_RC4=y
6278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
6308d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS = # none so far
6318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_AES
6328d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += ../src/crypto/aes-internal.o ../src/crypto/aes-internal-enc.o
6338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
6358d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += ../src/crypto/aes-wrap.o
6368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_EAX
6378d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += ../src/crypto/aes-eax.o
6388d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_CTR=y
6398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_CTR
6418d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += ../src/crypto/aes-ctr.o
6428d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_ENCBLOCK
6448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += ../src/crypto/aes-encblock.o
6458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_OMAC1
6478d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += ../src/crypto/aes-omac1.o
6488d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6498d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_UNWRAP
6508d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_DEC=y
6518d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += ../src/crypto/aes-unwrap.o
6528d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6538d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_CBC
6548d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNEED_AES_DEC=y
6558d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += ../src/crypto/aes-cbc.o
6568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6578d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES_DEC
6588d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_AES
6598d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtAESOBJS += ../src/crypto/aes-internal-dec.o
6608d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6618d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AES
6638d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += $(AESOBJS)
6648d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
6668d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_SHA1
66761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifneq ($(CONFIG_TLS), openssl)
6688d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += ../src/crypto/sha1.o
66961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif
67061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtSHA1OBJS += ../src/crypto/sha1-prf.o
6718d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_SHA1
6728d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += ../src/crypto/sha1-internal.o
6738d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_FIPS186_2_PRF
6748d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += ../src/crypto/fips_prf_internal.o
6758d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6768d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
67761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifneq ($(CONFIG_TLS), openssl)
6788d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += ../src/crypto/sha1-pbkdf2.o
67961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif
6808d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_T_PRF
6818d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += ../src/crypto/sha1-tprf.o
6828d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6838d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_TLS_PRF
6848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtSHA1OBJS += ../src/crypto/sha1-tlsprf.o
6858d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6868d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6878d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
6888d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_SHA1
6898d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += $(SHA1OBJS)
6908d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6918d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
6928d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_MD5
6938d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_MD5
6948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/md5-internal.o
6958d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += ../src/crypto/md5-internal.o
6968d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6978d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
6988d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
6998d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_MD4
7008d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_MD4
7018d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/md4-internal.o
7028d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7048d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
7058d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_DES
7068d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_DES
7078d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/des-internal.o
7088d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7098d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
7118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_RC4
7128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_RC4
7138d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/rc4.o
7148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
7178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_SHA256
7181f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtCFLAGS += -DCONFIG_SHA256
71961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifneq ($(CONFIG_TLS), openssl)
7208d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/sha256.o
72161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif
72261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += ../src/crypto/sha256-prf.o
7238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_SHA256
7248d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/sha256-internal.o
7258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7261f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtifdef NEED_TLS_PRF_SHA256
7271f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS += ../src/crypto/sha256-tlsprf.o
7281f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtendif
7298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
7318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_DH_GROUPS
7328d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/dh_groups.o
7338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_DH_GROUPS_ALL
7358d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DALL_DH_GROUPS
7368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_DH_GROUP5
7388d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_DH_GROUPS
7398d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/dh_group5.o
7408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7418d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7428d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
743a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry Shmidtifdef NEED_ECC
744a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry ShmidtCFLAGS += -DCONFIG_ECC
745a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry Shmidtendif
746a54fa5fb807eaeff45464139b5a7759f060cec68Dmitry Shmidt
7478d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_RANDOM_POOL
7488d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_NO_RANDOM_POOL
7498d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtelse
7508d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/crypto/random.o
7518d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += ../src/crypto/random.o
7521f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtHOBJS += ../src/utils/eloop.o
7538d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += $(SHA1OBJS)
7548d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += ../src/crypto/md5.o
7558d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
7578d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_RADIUS_SERVER
7588d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DRADIUS_SERVER
7598d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/radius/radius_server.o
7608d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7618d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
7628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IPV6
7638d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_IPV6
7648d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
7668d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_DRIVER_RADIUS_ACL
7678d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_DRIVER_RADIUS_ACL
7688d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7698d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
7708d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_FULL_DYNAMIC_VLAN
7718d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# define CONFIG_FULL_DYNAMIC_VLAN to have hostapd manipulate bridges
7728d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt# and vlan interfaces for the vlan feature.
7738d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_FULL_DYNAMIC_VLAN
7748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7758d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
7768d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_BASE64
7778d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/utils/base64.o
7788d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7798d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
7808d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_AP_MLME
7818d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/wmm.o
7828d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/ap_list.o
7838d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/ieee802_11.o
7848d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/hw_features.o
7858d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DNEED_AP_MLME
7868d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7878d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_IEEE80211N
7888d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/ieee802_11_ht.o
7898d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7908d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
79104949598a23f501be6eec21697465fd46a28840aDmitry Shmidtifdef CONFIG_IEEE80211AC
79204949598a23f501be6eec21697465fd46a28840aDmitry ShmidtOBJS += ../src/ap/ieee802_11_vht.o
79304949598a23f501be6eec21697465fd46a28840aDmitry Shmidtendif
79404949598a23f501be6eec21697465fd46a28840aDmitry Shmidt
7958d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_P2P_MANAGER
7968d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_P2P_MANAGER
7978d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS += ../src/ap/p2p_hostapd.o
7988d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
7998d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
80061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtifdef CONFIG_HS20
80161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtCFLAGS += -DCONFIG_HS20
80261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtOBJS += ../src/ap/hs20.o
80361d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry ShmidtCONFIG_INTERWORKING=y
80461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtendif
80561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt
8061f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtifdef CONFIG_INTERWORKING
8071f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtCFLAGS += -DCONFIG_INTERWORKING
80804949598a23f501be6eec21697465fd46a28840aDmitry ShmidtOBJS += ../src/common/gas.o
80904949598a23f501be6eec21697465fd46a28840aDmitry ShmidtOBJS += ../src/ap/gas_serv.o
8101f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtendif
8111f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidt
8121f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS += ../src/drivers/driver_common.o
8131f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidt
8141f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtifdef CONFIG_WPA_CLI_EDIT
8151f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS_c += ../src/utils/edit.o
8161f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtelse
8171f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry ShmidtOBJS_c += ../src/utils/edit_simple.o
8181f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidtendif
8191f69aa52ea2e0a73ac502565df8c666ee49cab6aDmitry Shmidt
820391c59f0632df8db1c325da1d31d479b2eedce45Dmitry Shmidtifdef CONFIG_ACS
821391c59f0632df8db1c325da1d31d479b2eedce45Dmitry ShmidtCFLAGS += -DCONFIG_ACS
822391c59f0632df8db1c325da1d31d479b2eedce45Dmitry ShmidtOBJS += ../src/ap/acs.o
823391c59f0632df8db1c325da1d31d479b2eedce45Dmitry ShmidtLIBS += -lm
824391c59f0632df8db1c325da1d31d479b2eedce45Dmitry Shmidtendif
825391c59f0632df8db1c325da1d31d479b2eedce45Dmitry Shmidt
8268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_NO_STDOUT_DEBUG
8278d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_NO_STDOUT_DEBUG
8288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
8298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_DEBUG_FILE
8318d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtCFLAGS += -DCONFIG_DEBUG_FILE
8328d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
8338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8344530cfd4d14a77c58e35393b91e40f8dd9d62697Dmitry Shmidtifdef CONFIG_SQLITE
8354530cfd4d14a77c58e35393b91e40f8dd9d62697Dmitry ShmidtCFLAGS += -DCONFIG_SQLITE
8364530cfd4d14a77c58e35393b91e40f8dd9d62697Dmitry ShmidtLIBS += -lsqlite3
8374530cfd4d14a77c58e35393b91e40f8dd9d62697Dmitry ShmidtLIBS_h += -lsqlite3
8384530cfd4d14a77c58e35393b91e40f8dd9d62697Dmitry Shmidtendif
8394530cfd4d14a77c58e35393b91e40f8dd9d62697Dmitry Shmidt
8408da800a193fb6f8832218715f82a7b4e2d2ad338Dmitry Shmidtifdef CONFIG_TESTING_OPTIONS
8418da800a193fb6f8832218715f82a7b4e2d2ad338Dmitry ShmidtCFLAGS += -DCONFIG_TESTING_OPTIONS
8428da800a193fb6f8832218715f82a7b4e2d2ad338Dmitry Shmidtendif
8438da800a193fb6f8832218715f82a7b4e2d2ad338Dmitry Shmidt
8448d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtALL=hostapd hostapd_cli
8458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtall: verify_config $(ALL)
8478d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8488d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtQ=@
8498d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtE=echo
8508d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifeq ($(V), 1)
8518d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtQ=
8528d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtE=true
8538d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
8548d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8558d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt%.o: %.c
8568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	$(Q)$(CC) -c -o $@ $(CFLAGS) $<
8578d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	@$(E) "  CC " $<
8588d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8598d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtverify_config:
8608d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	@if [ ! -r .config ]; then \
8618d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt		echo 'Building hostapd requires a configuration file'; \
8628d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt		echo '(.config). See README for more instructions. You can'; \
8638d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt		echo 'run "cp defconfig .config" to create an example'; \
8648d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt		echo 'configuration.'; \
8658d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt		exit 1; \
8668d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	fi
8678d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8688d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtinstall: all
8698d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	mkdir -p $(DESTDIR)/usr/local/bin
8708d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	for i in $(ALL); do cp -f $$i $(DESTDIR)/usr/local/bin/$$i; done
8718d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8728d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt../src/drivers/build.hostapd:
8738d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	@if [ -f ../src/drivers/build.wpa_supplicant ]; then \
8748d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt		$(MAKE) -C ../src/drivers clean; \
8758d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	fi
8768d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	@touch ../src/drivers/build.hostapd
8778d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8788d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtBCHECK=../src/drivers/build.hostapd
8798d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8808d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidthostapd: $(BCHECK) $(OBJS)
8818d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	$(Q)$(CC) $(LDFLAGS) -o hostapd $(OBJS) $(LIBS)
8828d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	@$(E) "  LD " $@
8838d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8848d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPA_TRACE
8858d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtOBJS_c += ../src/utils/trace.o
8868d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
8878d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidthostapd_cli: $(OBJS_c)
8888d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	$(Q)$(CC) $(LDFLAGS) -o hostapd_cli $(OBJS_c) $(LIBS_c)
8898d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	@$(E) "  LD " $@
8908d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
8918d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNOBJS = nt_password_hash.o ../src/crypto/ms_funcs.o $(SHA1OBJS) ../src/crypto/md5.o
8928d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef NEED_RC4
8938d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_RC4
8948d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNOBJS += ../src/crypto/rc4.o
8958d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
8968d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
8978d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_MD5
8988d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNOBJS += ../src/crypto/md5-internal.o
8998d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
9008d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNOBJS += ../src/crypto/crypto_openssl.o ../src/utils/os_$(CONFIG_OS).o
9018d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNOBJS += ../src/utils/wpa_debug.o
9028d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNOBJS += ../src/utils/wpabuf.o
9038d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_WPA_TRACE
9048d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtNOBJS += ../src/utils/trace.o
9058d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_n += -lbfd
9068d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
9078d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef TLS_FUNCS
9088d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtLIBS_n += -lcrypto
9098d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
9108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
9118d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += hlr_auc_gw.o ../src/utils/common.o ../src/utils/wpa_debug.o ../src/utils/os_$(CONFIG_OS).o ../src/utils/wpabuf.o ../src/crypto/milenage.o
9128d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += ../src/crypto/aes-encblock.o
9138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtifdef CONFIG_INTERNAL_AES
9148d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += ../src/crypto/aes-internal.o
9158d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtHOBJS += ../src/crypto/aes-internal-enc.o
9168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtendif
9178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
9188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtnt_password_hash: $(NOBJS)
9198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	$(Q)$(CC) $(LDFLAGS) -o nt_password_hash $(NOBJS) $(LIBS_n)
9208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	@$(E) "  LD " $@
9218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
9228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidthlr_auc_gw: $(HOBJS)
9238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	$(Q)$(CC) $(LDFLAGS) -o hlr_auc_gw $(HOBJS) $(LIBS_h)
9248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	@$(E) "  LD " $@
9258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
9268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtclean:
9278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	$(MAKE) -C ../src clean
9288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	rm -f core *~ *.o hostapd hostapd_cli nt_password_hash hlr_auc_gw
9298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	rm -f *.d
9308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
9318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt-include $(OBJS:%.o=%.d)
932