From 959214b260e930ef2148cf45f02d5a851058ae04 Mon Sep 17 00:00:00 2001 From: Dmitry Shmidt Date: Fri, 11 Apr 2014 16:05:39 -0700 Subject: [PATCH] Android: Use extended P2P functionality (ANDROID_P2P) for all vendors Signed-off-by: Dmitry Shmidt --- hostapd/Android.mk | 12 +++--------- src/drivers/driver_nl80211.c | 17 +++++++++++++++++ wpa_supplicant/Android.mk | 15 ++++++--------- 3 files changed, 26 insertions(+), 18 deletions(-) diff --git a/hostapd/Android.mk b/hostapd/Android.mk index 74c9b27a7..edaf6fc8e 100644 --- a/hostapd/Android.mk +++ b/hostapd/Android.mk @@ -27,16 +27,10 @@ L_CFLAGS += -DANDROID_LOG_NAME=\"hostapd\" # Disable unused parameter warnings L_CFLAGS += -Wno-unused-parameter -ifeq ($(BOARD_WLAN_DEVICE), bcmdhd) -L_CFLAGS += -DANDROID_P2P -endif - -ifeq ($(BOARD_WLAN_DEVICE), qcwcn) -L_CFLAGS += -DANDROID_P2P -endif - -ifeq ($(BOARD_WLAN_DEVICE), mrvl) +# Set Android extended P2P functionality L_CFLAGS += -DANDROID_P2P +ifeq ($(BOARD_HOSTAPD_PRIVATE_LIB),) +L_CFLAGS += -DANDROID_P2P_STUB endif # Use Android specific directory for control interface sockets diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c index 1196bc171..fe224cedc 100644 --- a/src/drivers/driver_nl80211.c +++ b/src/drivers/driver_nl80211.c @@ -372,12 +372,29 @@ extern int wpa_driver_nl80211_driver_cmd(void *priv, char *cmd, char *buf, size_t buf_len); #endif /* ANDROID */ #ifdef ANDROID_P2P +#ifdef ANDROID_P2P_STUB +int wpa_driver_set_p2p_noa(void *priv, u8 count, int start, int duration) { + return 0; +} +int wpa_driver_get_p2p_noa(void *priv, u8 *buf, size_t len) { + return 0; +} +int wpa_driver_set_p2p_ps(void *priv, int legacy_ps, int opp_ps, int ctwindow) { + return -1; +} +int wpa_driver_set_ap_wps_p2p_ie(void *priv, const struct wpabuf *beacon, + const struct wpabuf *proberesp, + const struct wpabuf *assocresp) { + return 0; +} +#else /* ANDROID_P2P_STUB */ int wpa_driver_set_p2p_noa(void *priv, u8 count, int start, int duration); int wpa_driver_get_p2p_noa(void *priv, u8 *buf, size_t len); int wpa_driver_set_p2p_ps(void *priv, int legacy_ps, int opp_ps, int ctwindow); int wpa_driver_set_ap_wps_p2p_ie(void *priv, const struct wpabuf *beacon, const struct wpabuf *proberesp, const struct wpabuf *assocresp); +#endif /* ANDROID_P2P_STUB */ #endif /* ANDROID_P2P */ static void add_ifidx(struct wpa_driver_nl80211_data *drv, int ifidx); diff --git a/wpa_supplicant/Android.mk b/wpa_supplicant/Android.mk index f56267c8c..ca9d82d5b 100644 --- a/wpa_supplicant/Android.mk +++ b/wpa_supplicant/Android.mk @@ -27,24 +27,21 @@ L_CFLAGS += -DANDROID_LOG_NAME=\"wpa_supplicant\" # Disable unused parameter warnings L_CFLAGS += -Wno-unused-parameter +# Set Android extended P2P functionality +L_CFLAGS += -DANDROID_P2P +ifeq ($(BOARD_WPA_SUPPLICANT_PRIVATE_LIB),) +L_CFLAGS += -DANDROID_P2P_STUB +endif + # Disable roaming in wpa_supplicant ifdef CONFIG_NO_ROAMING L_CFLAGS += -DCONFIG_NO_ROAMING endif ifeq ($(BOARD_WLAN_DEVICE), bcmdhd) -L_CFLAGS += -DANDROID_P2P L_CFLAGS += -DP2P_CONCURRENT_SEARCH_DELAY=0 endif -ifeq ($(BOARD_WLAN_DEVICE), qcwcn) -L_CFLAGS += -DANDROID_P2P -endif - -ifeq ($(BOARD_WLAN_DEVICE), mrvl) -L_CFLAGS += -DANDROID_P2P -endif - # Use Android specific directory for control interface sockets L_CFLAGS += -DCONFIG_CTRL_IFACE_CLIENT_DIR=\"/data/misc/wifi/sockets\" L_CFLAGS += -DCONFIG_CTRL_IFACE_DIR=\"/data/system/wpa_supplicant\"