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