1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
2 | /* |
3 | * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc. |
4 | * All rights reserved. |
5 | * |
6 | * Purpose: Implement functions for 802.11i Key management |
7 | * |
8 | * Author: Jerry Chen |
9 | * |
10 | * Date: May 29, 2003 |
11 | * |
12 | */ |
13 | |
14 | #ifndef __KEY_H__ |
15 | #define __KEY_H__ |
16 | |
17 | #include <net/mac80211.h> |
18 | |
19 | /*--------------------- Export Definitions -------------------------*/ |
20 | #define MAX_GROUP_KEY 4 |
21 | #define MAX_KEY_TABLE 11 |
22 | #define MAX_KEY_LEN 32 |
23 | #define AES_KEY_LEN 16 |
24 | |
25 | #define AUTHENTICATOR_KEY 0x10000000 |
26 | #define USE_KEYRSC 0x20000000 |
27 | #define PAIRWISE_KEY 0x40000000 |
28 | #define TRANSMIT_KEY 0x80000000 |
29 | |
30 | #define GROUP_KEY 0x00000000 |
31 | |
32 | #define KEY_CTL_WEP 0x00 |
33 | #define KEY_CTL_NONE 0x01 |
34 | #define KEY_CTL_TKIP 0x02 |
35 | #define KEY_CTL_CCMP 0x03 |
36 | #define KEY_CTL_INVALID 0xFF |
37 | |
38 | #define VNT_KEY_DEFAULTKEY 0x1 |
39 | #define VNT_KEY_GROUP_ADDRESS 0x2 |
40 | #define VNT_KEY_ALLGROUP 0x4 |
41 | #define VNT_KEY_GROUP 0x40 |
42 | #define VNT_KEY_PAIRWISE 0x00 |
43 | #define VNT_KEY_ONFLY 0x8000 |
44 | #define VNT_KEY_ONFLY_ALL 0x4000 |
45 | |
46 | struct vnt_private; |
47 | |
48 | int vnt_set_keys(struct ieee80211_hw *hw, struct ieee80211_sta *sta, |
49 | struct ieee80211_vif *vif, struct ieee80211_key_conf *key); |
50 | |
51 | #endif /* __KEY_H__ */ |
52 | |