blob: 052ee7596a152eeb6bff0b48799a09674c166791 [file] [log] [blame]
/** @file Authenticator_api.h
*
* @brief This file delare the main APIs for authenticator.
*
* Copyright (C) 2014, Marvell International Ltd.
*
* This software file (the "File") is distributed by Marvell International
* Ltd. under the terms of the GNU General Public License Version 2, June 1991
* (the "License"). You may use, redistribute and/or modify this File in
* accordance with the terms and conditions of the License, a copy of which
* is available by writing to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or on the
* worldwide web at http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
*
* THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE
* IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE
* ARE EXPRESSLY DISCLAIMED. The License provides additional details about
* this warranty disclaimer.
*/
/******************************************************
Change log:
03/07/2014: Initial version
******************************************************/
#ifndef _AUTHENTICATORAPI_H
#define _AUTHENTICATORAPI_H
/******************************************************
Change log:
03/01/2014: Initial version
******************************************************/
#ifdef DRV_EMBEDDED_AUTHENTICATOR
extern t_u8 IsAuthenticatorEnabled(void *priv);
extern void AuthenitcatorInitBssConfig(void *priv);
extern void AuthenticatorKeyMgmtInit(void *priv, t_u8 *addr);
extern void AuthenticatorkeyClear(void *priv);
extern void authenticator_init_client(void *priv, void **ppconnPtr, t_u8 *mac);
extern void authenticator_free_client(void *priv, void *ppconnPtr);
extern void authenticator_get_sta_security_info(void *priv,
t_void *pconnPtr, t_u8 *pIe,
t_u8 ieLen);
extern t_void AuthenticatorSendEapolPacket(t_void *priv, t_void *pconnPtr);
extern t_u8 AuthenticatorProcessEapolPacket(void *priv, t_u8 *pbuf, t_u32 len);
extern t_u8 AuthenticatorBssConfig(void *priv, t_u8 *pbss_config, t_u8 appendIE,
t_u8 clearIE, t_u8 SetConfigToMlan);
#endif
mlan_status supplicant_authenticator_init(t_void **pphostsa_priv,
t_void *psa_util_fns,
t_void *psa_mlan_fns, t_u8 *addr);
mlan_status supplicant_authenticator_free(t_void *phostsa_priv);
#ifdef DRV_EMBEDDED_SUPPLICANT
extern void supplicantClrEncryptKey(void *priv);
extern void *processRsnWpaInfo(void *priv, void *prsnwpa_ie);
extern void pmkCacheDeletePMK(void *priv, t_u8 *pBssid);
extern void supplicantInitSession(void *priv,
t_u8 *pSsid,
t_u16 len, t_u8 *pBssid, t_u8 *pStaAddr);
extern void supplicantStopSessionTimer(void *priv);
extern t_u8 supplicantIsEnabled(void *priv);
extern void supplicantQueryPassphraseAndEnable(void *priv, t_u8 *pbuf);
extern void supplicantDisable(void *priv);
extern t_u8 ProcessEAPoLPkt(void *priv, mlan_buffer *pmbuf);
extern void SupplicantClearPMK(void *priv, void *pPassphrase);
extern t_u16 SupplicantSetPassphrase(void *priv, void *pPassphraseBuf);
extern void SupplicantQueryPassphrase(void *priv, void *pPassphraseBuf);
extern t_u8 supplicantFormatRsnWpaTlv(void *priv, void *rsn_wpa_ie,
void *rsn_ie_tlv);
#endif
#endif /**_AUTHENTICATORAPI_H*/