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