Hi,
I can successfully connect to an enterprise WLAN using SL_ENT_EAP_METHOD_PEAP0_MSCHAPv2 with username + password authentication and by flashing the corresponding ca.pem root certificate on the sflash.
All the ENT WLAN examples I've seen seem to be using this type of authentication.
Does anyone have experience connecting the CC3200 with the EAP-TLS authentication method, which DOES require the client certificate (e.g. with SL_ENT_EAP_METHOD_TLS method)?
I flashed ca.pem, client.pem and private.key in pem format, but so far I could not connect. For a client authentication based on flashed certificates, do I still need to provide a username / password in SlSecParamsExt_t / SlSecParams_t ?
Here's my code to connect the the network:
long EntWlanConnect()
{
SlSecParamsExt_t eapParams;
SlSecParams_t g_SecParams;
long lRetVal = -1;
_u8 pValues;
//start ent wlan connection
eapParams.EapMethod = SL_ENT_EAP_METHOD_TLS;
eapParams.User = USER_NAME;
eapParams.UserLen = strlen((const char *)eapParams.User);
eapParams.AnonUserLen = 0;
g_SecParams.Key = PASSWORD;
g_SecParams.KeyLen = strlen((const char *)g_SecParams.Key);
g_SecParams.Type = SL_SEC_TYPE_WPA_ENT;
lRetVal = sl_WlanConnect(ENT_NAME,strlen((const char *)ENT_NAME), 0, &g_SecParams, &eapParams);
ASSERT_ON_ERROR(lRetVal);
UART_PRINT("Wlan Connect Status: %d...",lRetVal);
if(IS_CONNECTED(g_ulStatus))
UART_PRINT("we are connected\n\r");
// Wait for WLAN Event
while((!IS_CONNECTED(g_ulStatus)) || (!IS_IP_ACQUIRED(g_ulStatus)))
{
_SlNonOsMainLoopTask();
}
UART_PRINT("success\n\r");
return SUCCESS;
}