⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key.h

📁 VIA VT6656 USB linux source code.
💻 H
字号:
/* * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc. * All rights reserved. * * This software is copyrighted by and is the sole property of * VIA Networking Technologies, Inc. This software may only be used * in accordance with the corresponding license agreement. Any unauthorized * use, duplication, transmission, distribution, or disclosure of this * software is expressly forbidden. * * This software is provided by VIA Networking Technologies, Inc. "as is" * and any express or implied warranties, including, but not limited to, the * implied warranties of merchantability and fitness for a particular purpose * are disclaimed. In no event shall VIA Networking Technologies, Inc. * be liable for any direct, indirect, incidental, special, exemplary, or * consequential damages. * * * File: key.h * * Purpose: Implement functions for 802.11i Key management * * Author: Jerry Chen * * Date: May 29, 2003 * */#ifndef __KEY_H__#define __KEY_H__#if !defined(__TTYPE_H__)#include "ttype.h"#endif#if !defined(__TETHER_H__)#include "tether.h"#endif#if !defined(__80211MGR_H__)#include "80211mgr.h"#endif/*---------------------  Export Definitions -------------------------*/#define MAX_GROUP_KEY       4#define MAX_KEY_TABLE       11#define MAX_KEY_LEN         32#define AES_KEY_LEN         16#define AUTHENTICATOR_KEY   0x10000000#define USE_KEYRSC          0x20000000#define PAIRWISE_KEY        0x40000000#define TRANSMIT_KEY        0x80000000#define GROUP_KEY           0x00000000#define KEY_CTL_WEP         0x00#define KEY_CTL_NONE        0x01#define KEY_CTL_TKIP        0x02#define KEY_CTL_CCMP        0x03#define KEY_CTL_INVALID     0xFFtypedef struct tagSKeyItem{    BOOL        bKeyValid;    ULONG       uKeyLength;    BYTE        abyKey[MAX_KEY_LEN];    QWORD       KeyRSC;    DWORD       dwTSC47_16;    WORD        wTSC15_0;    BYTE        byCipherSuite;    BYTE        byReserved0;    DWORD       dwKeyIndex;    PVOID       pvKeyTable;} SKeyItem, DEF* PSKeyItem; //64typedef struct tagSKeyTable{    BYTE        abyBSSID[U_ETHER_ADDR_LEN];  //6    BYTE        byReserved0[2];              //8    SKeyItem    PairwiseKey;    SKeyItem    GroupKey[MAX_GROUP_KEY]; //64*5 = 320, 320+8=328    DWORD       dwGTKeyIndex;            // GroupTransmitKey Index    BOOL        bInUse;    WORD        wKeyCtl;    BOOL        bSoftWEP;    BYTE        byReserved1[6];} SKeyTable, DEF* PSKeyTable; //352typedef struct tagSKeyManagement{    SKeyTable   KeyTable[MAX_KEY_TABLE];} SKeyManagement, DEF* PSKeyManagement;/*---------------------  Export Types  ------------------------------*//*---------------------  Export Macros ------------------------------*//*---------------------  Export Classes  ----------------------------*//*---------------------  Export Variables  --------------------------*//*---------------------  Export Functions  --------------------------*/#ifdef __cplusplusextern "C" {                            /* Assume C declarations for C++ */#endif /* __cplusplus */VOID KeyvInitTable(PVOID pDeviceHandler, PSKeyManagement pTable);    BOOL KeybGetKey(    IN  PSKeyManagement pTable,    IN  PBYTE           pbyBSSID,    IN  DWORD           dwKeyIndex,    OUT PSKeyItem       *pKey    );    BOOL KeybSetKey(    PVOID           pDeviceHandler,    PSKeyManagement pTable,    PBYTE           pbyBSSID,    DWORD           dwKeyIndex,    ULONG           uKeyLength,    PQWORD          pKeyRSC,    PBYTE           pbyKey,    BYTE            byKeyDecMode    );BOOL KeybRemoveKey(    PVOID           pDeviceHandler,    PSKeyManagement pTable,    PBYTE           pbyBSSID,    DWORD           dwKeyIndex    );BOOL KeybRemoveAllKey (    PVOID           pDeviceHandler,    PSKeyManagement pTable,    PBYTE           pbyBSSID    );VOID KeyvRemoveWEPKey(    PVOID           pDeviceHandler,    PSKeyManagement pTable,    DWORD           dwKeyIndex    );VOID KeyvRemoveAllWEPKey(    PVOID           pDeviceHandler,    PSKeyManagement pTable    );BOOL KeybGetTransmitKey(    IN  PSKeyManagement pTable,    IN  PBYTE           pbyBSSID,    IN  DWORD           dwKeyType,    OUT PSKeyItem       *pKey    );BOOL KeybCheckPairewiseKey(    IN  PSKeyManagement pTable,    OUT PSKeyItem       *pKey    );    BOOL KeybSetDefaultKey (    PVOID           pDeviceHandler,    PSKeyManagement pTable,    DWORD           dwKeyIndex,    ULONG           uKeyLength,    PQWORD          pKeyRSC,    PBYTE           pbyKey,    BYTE            byKeyDecMode    );    BOOL KeybSetAllGroupKey (    PVOID           pDeviceHandler,    PSKeyManagement pTable,    DWORD           dwKeyIndex,    ULONG           uKeyLength,    PQWORD          pKeyRSC,    PBYTE           pbyKey,    BYTE            byKeyDecMode    );    #ifdef __cplusplus}                                       /* End of extern "C" { */#endif /* __cplusplus */#endif // __KEY_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -