| /** @file keyMgntAP.h |
| * |
| * @brief This file contains the eapol paket process and key management 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 _KEYMGMTAP_H_ |
| #define _KEYMGMTAP_H_ |
| //Authenticator related data structures, function prototypes |
| |
| #include "wltypes.h" |
| #include "keyMgmtAp_rom.h" |
| |
| #define STA_PS_EAPOL_HSK_TIMEOUT 3000 // ms |
| #define AP_RETRY_EAPOL_HSK_TIMEOUT 1000 // ms |
| |
| extern void KeyMgmtInit(void *priv); |
| extern void ReInitGTK(void *priv); |
| int isValidReplayCount(t_void *priv, apKeyMgmtInfoSta_t *pKeyMgmtInfo, |
| UINT8 *pRxReplayCount); |
| |
| extern void KeyMgmtGrpRekeyCountUpdate(t_void *context); |
| extern void KeyMgmtStartHskTimer(void *context); |
| extern void KeyMgmtStopHskTimer(void *context); |
| extern void KeyMgmtHskTimeout(t_void *context); |
| extern UINT32 keyApi_ApUpdateKeyMaterial(void *priv, cm_Connection *connPtr, |
| BOOLEAN updateGrpKey); |
| |
| extern Status_e ProcessPWKMsg2(hostsa_private *priv, |
| cm_Connection *connPtr, t_u8 *pbuf, t_u32 len); |
| extern Status_e ProcessPWKMsg4(hostsa_private *priv, |
| cm_Connection *connPtr, t_u8 *pbuf, t_u32 len); |
| extern Status_e ProcessGrpMsg2(hostsa_private *priv, |
| cm_Connection *connPtr, t_u8 *pbuf, t_u32 len); |
| extern Status_e GenerateApEapolMsg(hostsa_private *priv, |
| t_void *pconnPtr, keyMgmtState_e msgState); |
| extern void ApMicErrTimerExpCb(t_void *context); |
| extern void ApMicCounterMeasureInvoke(t_void *pconnPtr); |
| extern t_u16 keyMgmtAp_FormatWPARSN_IE(void *priv, |
| IEEEtypes_InfoElementHdr_t *pIe, |
| UINT8 isRsn, |
| Cipher_t *pCipher, |
| UINT8 cipherCount, |
| Cipher_t *pMcastCipher, |
| UINT16 authKey, UINT16 authKeyCount); |
| #endif // _KEYMGMTAP_H_ |