Disable per-BSSID authentication for RSN IBSS
[wpasupplicant] / wpa_supplicant / Makefile
index 30318a9..65adf53 100644 (file)
@@ -127,6 +127,15 @@ CFLAGS += -DCONFIG_DRIVER_WEXT
 CONFIG_WIRELESS_EXTENSION=y
 endif
 
+ifdef CONFIG_DRIVER_NL80211
+CFLAGS += -DCONFIG_DRIVER_NL80211
+OBJS_d += ../src/drivers/driver_nl80211.o
+LIBS += -lnl
+ifdef CONFIG_CLIENT_MLME
+OBJS_d += ../src/utils/radiotap.o
+endif
+endif
+
 ifdef CONFIG_DRIVER_PRISM54
 CFLAGS += -DCONFIG_DRIVER_PRISM54
 OBJS_d += ../src/drivers/driver_prism54.o
@@ -183,7 +192,10 @@ endif
 
 ifdef CONFIG_DRIVER_NDIS
 CFLAGS += -DCONFIG_DRIVER_NDIS
-OBJS_d += ../src/drivers/driver_ndis.o ../src/drivers/driver_ndis_.o
+OBJS_d += ../src/drivers/driver_ndis.o
+ifdef CONFIG_NDIS_EVENTS_INTEGRATED
+OBJS_d += ../src/drivers/driver_ndis_.o
+endif
 ifndef CONFIG_L2_PACKET
 CONFIG_L2_PACKET=pcap
 endif
@@ -223,6 +235,11 @@ OBJS_d += ../src/drivers/MobileApple80211.o
 LIBS += -framework CoreFoundation
 endif
 
+ifdef CONFIG_DRIVER_ROBOSWITCH
+CFLAGS += -DCONFIG_DRIVER_ROBOSWITCH
+OBJS_d += ../src/drivers/driver_roboswitch.o
+endif
+
 ifndef CONFIG_L2_PACKET
 CONFIG_L2_PACKET=linux
 endif
@@ -270,6 +287,7 @@ EAPDYN += ../src/eap_peer/eap_peap.so
 else
 CFLAGS += -DEAP_PEAP
 OBJS += ../src/eap_peer/eap_peap.o
+OBJS += ../src/eap_common/eap_peap_common.o
 OBJS_h += ../src/eap_server/eap_peap.o
 endif
 TLS_FUNCS=y
@@ -409,6 +427,16 @@ CONFIG_IEEE8021X_EAPOL=y
 CONFIG_EAP_SIM_COMMON=y
 endif
 
+ifdef CONFIG_EAP_AKA_PRIME
+# EAP-AKA'
+ifeq ($(CONFIG_EAP_AKA_PRIME), dyn)
+CFLAGS += -DEAP_AKA_PRIME_DYNAMIC
+else
+CFLAGS += -DEAP_AKA_PRIME
+endif
+NEED_SHA256=y
+endif
+
 ifdef CONFIG_EAP_SIM_COMMON
 OBJS += ../src/eap_common/eap_sim_common.o
 OBJS_h += ../src/eap_server/eap_sim_db.o
@@ -475,6 +503,32 @@ endif
 NEED_SHA256=y
 endif
 
+ifdef CONFIG_WPS
+# EAP-WSC
+ifeq ($(CONFIG_EAP_WSC), dyn)
+CFLAGS += -DCONFIG_WPS -DEAP_WSC_DYNAMIC
+EAPDYN += ../src/eap_peer/eap_wsc.so
+else
+CFLAGS += -DCONFIG_WPS -DEAP_WSC
+OBJS += wps_supplicant.o
+OBJS += ../src/utils/uuid.o
+OBJS += ../src/eap_peer/eap_wsc.o ../src/eap_common/eap_wsc_common.o
+OBJS += ../src/wps/wps.o
+OBJS += ../src/wps/wps_common.o
+OBJS += ../src/wps/wps_attr_parse.o
+OBJS += ../src/wps/wps_attr_build.o
+OBJS += ../src/wps/wps_attr_process.o
+OBJS += ../src/wps/wps_dev_attr.o
+OBJS += ../src/wps/wps_enrollee.o
+OBJS += ../src/wps/wps_registrar.o
+OBJS_h += ../src/eap_server/eap_wsc.o
+endif
+CONFIG_IEEE8021X_EAPOL=y
+NEED_DH_GROUPS=y
+NEED_SHA256=y
+NEED_BASE64=y
+endif
+
 ifdef CONFIG_EAP_IKEV2
 # EAP-IKEv2
 ifeq ($(CONFIG_EAP_IKEV2), dyn)
@@ -509,6 +563,8 @@ ifdef CONFIG_EAP_TNC
 CFLAGS += -DEAP_TNC
 OBJS += ../src/eap_peer/eap_tnc.o
 OBJS += ../src/eap_peer/tncc.o
+OBJS_h += ../src/eap_server/eap_tnc.o
+OBJS_h += ../src/eap_server/tncs.o
 NEED_BASE64=y
 endif
 
@@ -565,6 +621,20 @@ LIBS += -lpcsclite -lpthread
 endif
 endif
 
+ifdef CONFIG_SIM_SIMULATOR
+CFLAGS += -DCONFIG_SIM_SIMULATOR
+NEED_MILENAGE=y
+endif
+
+ifdef CONFIG_USIM_SIMULATOR
+CFLAGS += -DCONFIG_USIM_SIMULATOR
+NEED_MILENAGE=y
+endif
+
+ifdef NEED_MILENAGE
+OBJS += ../src/hlr_auc_gw/milenage.o
+endif
+
 ifndef CONFIG_TLS
 CONFIG_TLS=openssl
 endif
@@ -621,14 +691,8 @@ CFLAGS += -DCONFIG_TLS_INTERNAL_CLIENT
 ifeq ($(CONFIG_CRYPTO), internal)
 ifdef CONFIG_INTERNAL_LIBTOMMATH
 CFLAGS += -DCONFIG_INTERNAL_LIBTOMMATH
-ifdef CONFIG_INTERNAL_LIBTOMMATH_FAST_EXPTMOD
-CFLAGS += -DLTM_FAST_EXPTMOD
-endif
-ifdef CONFIG_INTERNAL_LIBTOMMATH_FAST_SQR
-CFLAGS += -DLTM_FAST_SQR
-endif
-ifdef CONFIG_INTERNAL_LIBTOMMATH_FAST_DIV
-CFLAGS += -DLTM_FAST_DIV
+ifdef CONFIG_INTERNAL_LIBTOMMATH_FAST
+CFLAGS += -DLTM_FAST
 endif
 else
 LIBS += -ltommath
@@ -769,8 +833,14 @@ ifdef CONFIG_IEEE80211R
 NEED_SHA256=y
 endif
 
+ifdef CONFIG_IEEE80211W
+CFLAGS += -DCONFIG_IEEE80211W
+NEED_SHA256=y
+endif
+
 ifdef NEED_SHA256
 OBJS += ../src/crypto/sha256.o
+CFLAGS += -DNEED_SHA256
 endif
 
 ifdef CONFIG_WIRELESS_EXTENSION
@@ -854,11 +924,6 @@ ifdef CONFIG_PEERKEY
 CFLAGS += -DCONFIG_PEERKEY
 endif
 
-ifdef CONFIG_IEEE80211W
-CFLAGS += -DCONFIG_IEEE80211W
-NEED_SHA256=y
-endif
-
 ifdef CONFIG_IEEE80211R
 CFLAGS += -DCONFIG_IEEE80211R
 OBJS += ../src/rsn_supp/wpa_ft.o
@@ -876,6 +941,21 @@ else
 CFLAGS += -DCONFIG_NO_WPA -DCONFIG_NO_WPA2
 endif
 
+ifdef CONFIG_IBSS_RSN
+CFLAGS += -DCONFIG_IBSS_RSN
+OBJS += ibss_rsn.o
+OBJS += ../hostapd/wpa.o
+OBJS += ../hostapd/wpa_auth_ie.o
+OBJS += ../hostapd/pmksa_cache.o
+OBJS += ../src/radius/radius.o
+ifdef CONFIG_IEEE80211R
+OBJS += ../hostapd/wpa_ft.o
+endif
+ifdef CONFIG_PEERKEY
+OBJS += ../hostapd/peerkey.o
+endif
+endif
+
 ifdef CONFIG_NO_WPA2
 CFLAGS += -DCONFIG_NO_WPA2
 endif
@@ -917,7 +997,7 @@ OBJS += ../src/utils/base64.o
 endif
 
 ifdef CONFIG_CLIENT_MLME
-OBJS += mlme.o
+OBJS += mlme.o ../src/common/ieee802_11_common.o
 CFLAGS += -DCONFIG_CLIENT_MLME
 endif
 
@@ -929,6 +1009,10 @@ ifdef CONFIG_DEBUG_FILE
 CFLAGS += -DCONFIG_DEBUG_FILE
 endif
 
+ifdef CONFIG_DELAYED_MIC_ERROR_REPORT
+CFLAGS += -DCONFIG_DELAYED_MIC_ERROR_REPORT
+endif
+
 OBJS += ../src/drivers/scan_helpers.o
 
 OBJS_wpa_rm := ctrl_iface.o mlme.o ctrl_iface_unix.o
@@ -1029,6 +1113,7 @@ OBJSx=tests/test_x509v3.o ../src/tls/asn1.o ../src/tls/x509v3.o \
        ../src/crypto/crypto_$(CONFIG_CRYPTO).o \
        ../src/crypto/md5.o ../src/crypto/sha1.o ../src/crypto/aes.o \
        ../src/crypto/rc4.o ../src/crypto/des.o ../src/crypto/aes_wrap.o \
+       ../src/crypto/sha256.o \
        ../src/tls/bignum.o ../src/tls/rsa.o
 test_x509v3: $(OBJSx)
        $(LDO) $(LDFLAGS) -o test_x509v3 $(OBJSx)
@@ -1048,6 +1133,10 @@ eap_sake.so: ../src/eap_peer/eap_sake.c ../src/eap_common/eap_sake_common.c
        $(CC) -o $@ $(CFLAGS) -shared -rdynamic -fPIC $^ \
                -Deap_peer_sake_register=eap_peer_method_dynamic_init
 
+eap_wsc.so: ../src/eap_peer/eap_wsc.c ../src/eap_common/eap_wsc_common.c ../src/wps/wps.c
+       $(CC) -o $@ $(CFLAGS) -shared -rdynamic -fPIC $^ \
+               -Deap_peer_wsc_register=eap_peer_method_dynamic_init
+
 eap_ikev2.so: ../src/eap_peer/eap_ikev2.c ../src/eap_peer/ikev2.c ../src/eap_common/eap_ikev2_common.o ../src/eap_common/ikev2_common.c
        $(CC) -o $@ $(CFLAGS) -shared -rdynamic -fPIC $^ \
                -Deap_peer_ikev2_register=eap_peer_method_dynamic_init
@@ -1152,16 +1241,10 @@ docs: docs-pics
        cp doc/latex/refman.pdf wpa_supplicant-devel.pdf
 
 docs-fast: docs-pics
-       doxygen doc/doxygen.fast
+       (cd ..; doxygen wpa_supplicant/doc/doxygen.fast; cd wpa_supplicant)
 
 clean-docs:
        rm -rf doc/latex doc/html
        rm -f doc/wpa_supplicant.{eps,png} wpa_supplicant-devel.pdf
 
-wpa_supplicant-sparse: .config $(OBJS)
-       @echo Sparse run completed
-
-run-sparse:
-       CC="sparse -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ -D__INT_MAX__=2147483647 -D__SHRT_MAX__=32767 -D__LONG_MAX__=2147483647 -D__SCHAR_MAX__=127 -Wbitwise" $(MAKE) wpa_supplicant-sparse
-
 -include $(OBJS:%.o=%.d)