hc
2023-02-13 e440ec23c5a540cdd3f7464e8779219be6fd3d95
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/** @file Authenticator_api.h
 *
 *  @brief This file delare the main APIs for authenticator.
 *
 * Copyright (C) 2014-2017, 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 t_u8 EAPoLKeyPkt_Validation(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*/