summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Shmidt <dimitrysh@google.com>2010-08-17 17:46:58 -0700
committerDmitry Shmidt <dimitrysh@google.com>2010-08-17 17:46:58 -0700
commit742445b1aa76dcf2013a5f19fd7b35f8c2187c0e (patch)
tree149e0b704921673b6d6021fd63dbfb28a347b82c
parent3d73bc524e6ae606ae03d13caf71f39ccba02962 (diff)
downloadwlan-742445b1aa76dcf2013a5f19fd7b35f8c2187c0e.tar.gz
wl1271: Fix WPS support for wpa_supplicant 0.6.10
Change-Id: Ic0d6af77d2a9ea88000c26f2ee29956b48ba285c Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
-rw-r--r--wl1271/CUDK/configurationutility/Android.mk4
-rw-r--r--wl1271/CUDK/configurationutility/src/wpa_core.c22
-rw-r--r--wl1271/stad/build/linux/common.inc3
-rw-r--r--wl1271/stad/src/Sta_Management/templates.c8
4 files changed, 30 insertions, 7 deletions
diff --git a/wl1271/CUDK/configurationutility/Android.mk b/wl1271/CUDK/configurationutility/Android.mk
index 0809fff..6393ba5 100644
--- a/wl1271/CUDK/configurationutility/Android.mk
+++ b/wl1271/CUDK/configurationutility/Android.mk
@@ -49,6 +49,10 @@ ifeq ($(WPA_ENTERPRISE), y)
DK_DEFINES += -D WPA_ENTERPRISE
endif
+ifeq ($(WPA_SUPPLICANT_VERSION),VER_0_6_X)
+ DK_DEFINES += -DSUPPL_WPS_SUPPORT
+endif
+
#DK_DEFINES += -D NO_WPA_SUPPL
#Supplicant image building
diff --git a/wl1271/CUDK/configurationutility/src/wpa_core.c b/wl1271/CUDK/configurationutility/src/wpa_core.c
index d008ca2..f771625 100644
--- a/wl1271/CUDK/configurationutility/src/wpa_core.c
+++ b/wl1271/CUDK/configurationutility/src/wpa_core.c
@@ -416,18 +416,34 @@ S32 WpaCore_GetDefaultKey(THandle hWpaCore, U32* pDefaultKeyIndex)
S32 WpaCore_StartWpsPIN(THandle hWpaCore)
{
TWpaCore* pWpaCore = (TWpaCore*)hWpaCore;
+#ifdef SUPPL_WPS_SUPPORT
+ S8 cmd[100];
+#endif
pWpaCore->WpaSupplParams.WscMode = WSC_MODE_PIN;
-
+
+#ifdef SUPPL_WPS_SUPPORT
+ os_sprintf(cmd, "WPS_PIN any");
+ IpcWpa_Command(pWpaCore->hIpcWpa, cmd, TRUE);
+#endif
+
return OK;
}
S32 WpaCore_StartWpsPBC(THandle hWpaCore)
{
TWpaCore* pWpaCore = (TWpaCore*)hWpaCore;
-
+#ifdef SUPPL_WPS_SUPPORT
+ S8 cmd[100];
+#endif
+
pWpaCore->WpaSupplParams.WscMode = WSC_MODE_PBC;
-
+
+#ifdef SUPPL_WPS_SUPPORT
+ os_sprintf(cmd, "WPS_PBC");
+ IpcWpa_Command(pWpaCore->hIpcWpa, cmd, TRUE);
+#endif
+
return OK;
}
diff --git a/wl1271/stad/build/linux/common.inc b/wl1271/stad/build/linux/common.inc
index feb6ff2..d29e0c1 100644
--- a/wl1271/stad/build/linux/common.inc
+++ b/wl1271/stad/build/linux/common.inc
@@ -126,6 +126,9 @@ ifeq ($(BMTRACE),y)
DK_DEFINES += -D TIWLAN_BMTRACE
endif
+# WPS Support
+DK_DEFINES += -D SUPPL_WPS_SUPPORT
+
##
##
## Platform Compilation Directives
diff --git a/wl1271/stad/src/Sta_Management/templates.c b/wl1271/stad/src/Sta_Management/templates.c
index c6d3d36..ec86c61 100644
--- a/wl1271/stad/src/Sta_Management/templates.c
+++ b/wl1271/stad/src/Sta_Management/templates.c
@@ -229,7 +229,9 @@ TI_STATUS buildProbeReqTemplate(siteMgr_t *pSiteMgr, TSetTemplate *pTemplate, TS
TI_UINT32 len = 0, ofdmIndex = 0;
TI_UINT32 suppRatesLen, extSuppRatesLen;
TI_UINT8 ratesBuf[DOT11_MAX_SUPPORTED_RATES];
+#ifndef SUPPL_WPS_SUPPORT
TI_UINT8 WSCOuiIe[DOT11_OUI_LEN] = { 0x00, 0x50, 0xf2, 0x04};
+#endif
TI_UINT32 supportedRateMask,basicRateMask;
TI_UINT16 fc = DOT11_FC_PROBE_REQ;
@@ -351,6 +353,7 @@ TI_STATUS buildProbeReqTemplate(siteMgr_t *pSiteMgr, TSetTemplate *pTemplate, TS
size += len;
pBuf += len;
+#ifndef SUPPL_WPS_SUPPORT
/* WiFi Simple Config */
if (pSiteMgr->includeWSCinProbeReq && (pSiteMgr->siteMgrWSCCurrMode != TIWLN_SIMPLE_CONFIG_OFF))
{
@@ -365,6 +368,7 @@ TI_STATUS buildProbeReqTemplate(siteMgr_t *pSiteMgr, TSetTemplate *pTemplate, TS
size += sizeof(dot11_eleHdr_t) + pSiteMgr->uWscIeSize + DOT11_OUI_LEN;
pBuf += sizeof(dot11_eleHdr_t) + pSiteMgr->uWscIeSize + DOT11_OUI_LEN;
}
+#endif /* SUPPL_WPS_SUPPORT */
pTemplate->len = size;
@@ -869,7 +873,3 @@ TI_STATUS buildArpRspTemplate(siteMgr_t *pSiteMgr, TSetTemplate *pTemplate, TIpA
return TI_OK;
}
-
-
-
-