1# $NetBSD: Makefile,v 1.17 2023/06/03 08:52:54 lukem Exp $ 2 3.include "${.CURDIR}/../Makefile.inc" 4 5 6PROG= hostapd 7CPPFLAGS+= -Diphdr=ip 8 9# ap 10SRCS+= \ 11accounting.c \ 12ap_config.c \ 13ap_drv_ops.c \ 14ap_mlme.c \ 15authsrv.c \ 16beacon.c \ 17bss_load.c \ 18ctrl_iface_ap.c \ 19dpp.c \ 20dpp_hostapd.c \ 21drv_callbacks.c \ 22eap_user_db.c \ 23gas.c \ 24gas_query_ap.c \ 25gas_serv.c \ 26hostapd.c \ 27ieee802_11_auth.c \ 28ieee802_11_shared.c \ 29ieee802_1x.c \ 30mbo_ap.c \ 31neighbor_db.c \ 32pmksa_cache_auth.c \ 33preauth_auth.c \ 34rrm.c \ 35sta_info.c \ 36tkip_countermeasures.c \ 37utils.c \ 38vlan_ifconfig.c \ 39vlan_init.c \ 40vlan.c \ 41wpa_auth.c \ 42wpa_auth_glue.c \ 43wpa_auth_ie.c 44 45# common 46SRCS+= \ 47ctrl_iface_common.c \ 48hw_features_common.c \ 49ieee802_11_common.c \ 50wpa_common.c \ 51wpa_ctrl.c 52 53# drivers 54SRCS+= \ 55driver_bsd.c \ 56driver_none.c \ 57driver_wired.c \ 58driver_wired_common.c \ 59driver_common.c \ 60drivers.c 61 62# radius 63SRCS+= \ 64radius.c \ 65radius_das.c \ 66radius_client.c \ 67radius_server.c 68 69# utils 70SRCS+= \ 71base64.c \ 72common.c \ 73eloop.c \ 74json.c \ 75ip_addr.c \ 76os_unix.c \ 77wpa_debug.c \ 78wpabuf.c 79 80# main 81SRCS+= \ 82main.c \ 83config_file.c \ 84ctrl_iface.c \ 85eap_register.c 86 87# l2_packet 88SRCS+= \ 89l2_packet_freebsd.c 90 91# eapol_auth 92SRCS+= \ 93eapol_auth_dump.c \ 94eapol_auth_sm.c 95 96# eap_server 97SRCS+= \ 98eap_common.c \ 99eap_server.c \ 100eap_server_methods.c 101 102# crypto 103SRCS+= \ 104aes-siv.c \ 105random.c \ 106sha1-prf.c \ 107sha256-kdf.c \ 108sha256-prf.c \ 109sha384-kdf.c \ 110sha384-prf.c \ 111sha512-kdf.c \ 112sha512-prf.c \ 113 114# crypto for non-openssl 115NO_SRCS+= \ 116aes-cbc.c \ 117aes-wrap.c \ 118md5.c 119 120.PATH.c: \ 121 ${HOSTAPD_DISTDIR} \ 122 ${WPA_DISTDIR}/src/eap_server \ 123 ${WPA_DISTDIR}/src/eapol_auth \ 124 ${WPA_DISTDIR}/src/drivers \ 125 ${WPA_DISTDIR}/src/radius \ 126 ${COMMON_PATH} 127 128MAN= hostapd.8 hostapd.conf.5 129 130CPPFLAGS+= -I${.CURDIR} -I${HOSTAPD_DISTDIR} 131CPPFLAGS+= -DHOSTAPD 132CPPFLAGS+= -DHOSTAPD_DUMP_STATE 133CPPFLAGS+= -DALL_DH_GROUPS 134CPPFLAGS+= -DRADIUS_SERVER 135CPPFLAGS+= -DCONFIG_CTRL_IFACE 136CPPFLAGS+= -DCONFIG_CTRL_IFACE_UNIX 137CPPFLAGS+= -DCONFIG_DEBUG_SYSLOG 138CPPFLAGS+= -DCONFIG_DRIVER_BSD 139CPPFLAGS+= -DCONFIG_DRIVER_NONE 140CPPFLAGS+= -DCONFIG_DRIVER_WIRED 141CPPFLAGS+= -DCONFIG_DRIVER_WPA 142 143.if ${MKINET6} != "no" 144CPPFLAGS+= -DCONFIG_IPV6 145.endif 146CPPFLAGS+= -DCONFIG_PEERKEY 147CPPFLAGS+= -DCONFIG_RSN_PREAUTH 148CPPFLAGS+= -DCONFIG_DPP 149CPPFLAGS+= -DCONFIG_DPP2 150CPPFLAGS+= -DCONFIG_ECC 151#CPPFLAGS+= -DCONFIG_OWE 152#CPPFLAGS+= -DCONFIG_SAE 153#CPPFLAGS+= -DCONFIG_AIRTIME_POLICY 154#CPPFLAGS+= -DCONFIG_FILS 155#CPPFLAGS+= -DCONFIG_OCV 156#CPPFLAGS+= -DCONFIG_IEEE80211AX 157CPPFLAGS+= -DCONFIG_IEEE80211W 158#CPPFLAGS+= -DCONFIG_IEEE80211R_AP 159CPPFLAGS+= -DCONFIG_MBO 160#CPPFLAGS+= -DCONFIG_NO_VLAN 161#CPPFLAGS+= -DCONFIG_SQLITE 162#CPPFLAGS+= -DCONFIG_SHA256 -DCONFIG_SHA484 -DCONFIG_SHA512 163 164DPADD+= ${LIBPCAP} 165LDADD+= -lpcap 166 167.if !defined(NO_CRYPT) && !defined(NO_OPENSSL) && !defined(RELEASE_CRUNCH) 168CPPFLAGS+= -DEAP_SERVER 169CPPFLAGS+= -DEAP_SERVER_AKA 170CPPFLAGS+= -DEAP_SERVER_AKA_PRIME 171CPPFLAGS+= -DEAP_SERVER_GPSK 172CPPFLAGS+= -DEAP_SERVER_GPSK_SHA256 173CPPFLAGS+= -DEAP_SERVER_GTC 174CPPFLAGS+= -DEAP_SERVER_IDENTITY 175CPPFLAGS+= -DEAP_SERVER_IKEV2 176CPPFLAGS+= -DEAP_SERVER_MD5 177CPPFLAGS+= -DEAP_SERVER_MSCHAPV2 178CPPFLAGS+= -DEAP_SERVER_PAX 179CPPFLAGS+= -DEAP_SERVER_PEAP 180CPPFLAGS+= -DEAP_SERVER_PSK 181CPPFLAGS+= -DEAP_SERVER_SAKE 182CPPFLAGS+= -DEAP_SERVER_SIM 183CPPFLAGS+= -DEAP_SERVER_TLS 184CPPFLAGS+= -DEAP_SERVER_TNC 185CPPFLAGS+= -DEAP_SERVER_TTLS 186CPPFLAGS+= -DEAP_TLS_FUNCS 187CPPFLAGS+= -DPKCS12_FUNCS 188 189# crypto 190SRCS+= \ 191aes-ctr.c \ 192aes-eax.c \ 193aes-encblock.c \ 194aes-omac1.c \ 195crypto_openssl.c \ 196dh_groups.c \ 197fips_prf_openssl.c \ 198ms_funcs.c \ 199sha1-tlsprf.c \ 200sha256.c \ 201sha384.c \ 202sha512.c \ 203tls_openssl.c 204 205# eap_common 206SRCS+= \ 207chap.c \ 208eap_gpsk_common.c \ 209eap_ikev2_common.c \ 210eap_pax_common.c \ 211eap_peap_common.c \ 212eap_psk_common.c \ 213eap_sake_common.c \ 214eap_sim_common.c \ 215ikev2_common.c 216 217# eap_server 218SRCS+= \ 219eap_server_aka.c \ 220eap_server_gpsk.c \ 221eap_server_gtc.c \ 222eap_server_identity.c \ 223eap_server_ikev2.c \ 224eap_server_md5.c \ 225eap_server_mschapv2.c \ 226eap_server_pax.c \ 227eap_server_peap.c \ 228eap_server_psk.c \ 229eap_server_sake.c \ 230eap_server_sim.c \ 231eap_server_tls.c \ 232eap_server_tls_common.c \ 233eap_server_tnc.c \ 234eap_server_ttls.c \ 235eap_sim_db.c \ 236ikev2.c \ 237tncs.c 238 239 240DPADD+= ${LIBSSL} ${LIBCRYPTO} ${LIBDES} 241LDADD+= -lssl -lcrypto -ldes 242.else 243CPPFLAGS+= -DINTERNAL_AES -DINTERNAL_MD5 -DINTERNAL_SHA1 -DCONFIG_NO_PBKDF2 244CPPFLAGS+= -DCONFIG_CRYPTO_INTERNAL 245SRCS+= tls_none.c sha1-internal.c md5-internal.c aes-xinternal.c rc4.c 246SRCS+= sha1-pbkdf2.c sha1.c md5.c 247.endif 248 249CWARNFLAGS.gcc+= ${CC_WNO_ADDRESS_OF_PACKED_MEMBER} 250COPTS.dpp.c+= -Wno-error=deprecated-declarations 251COPTS.crypto_openssl.c+= -Wno-error=deprecated-declarations 252COPTS.fips_prf_openssl.c+= -Wno-error=deprecated-declarations 253COPTS.tls_openssl.c+= -Wno-error=deprecated-declarations 254 255.include <bsd.prog.mk> 256