1 /*
2 * IEEE 802.1X-2010 KaY Interface
3 * Copyright (c) 2013-2014, Qualcomm Atheros, Inc.
4 *
5 * This software may be distributed under the terms of the BSD license.
6 * See README for more details.
7 */
8
9 #ifndef WPAS_KAY_H
10 #define WPAS_KAY_H
11
12 #ifdef CONFIG_MACSEC
13
14 int ieee802_1x_alloc_kay_sm(struct wpa_supplicant *wpa_s,
15 struct wpa_ssid *ssid);
16 void * ieee802_1x_notify_create_actor(struct wpa_supplicant *wpa_s,
17 const u8 *peer_addr);
18 void ieee802_1x_dealloc_kay_sm(struct wpa_supplicant *wpa_s);
19
20 void * ieee802_1x_create_preshared_mka(struct wpa_supplicant *wpa_s,
21 struct wpa_ssid *ssid);
22
23 #else /* CONFIG_MACSEC */
24
ieee802_1x_alloc_kay_sm(struct wpa_supplicant * wpa_s,struct wpa_ssid * ssid)25 static inline int ieee802_1x_alloc_kay_sm(struct wpa_supplicant *wpa_s,
26 struct wpa_ssid *ssid)
27 {
28 return 0;
29 }
30
31 static inline void *
ieee802_1x_notify_create_actor(struct wpa_supplicant * wpa_s,const u8 * peer_addr)32 ieee802_1x_notify_create_actor(struct wpa_supplicant *wpa_s,
33 const u8 *peer_addr)
34 {
35 return NULL;
36 }
37
ieee802_1x_dealloc_kay_sm(struct wpa_supplicant * wpa_s)38 static inline void ieee802_1x_dealloc_kay_sm(struct wpa_supplicant *wpa_s)
39 {
40 }
41
42 static inline void *
ieee802_1x_create_preshared_mka(struct wpa_supplicant * wpa_s,struct wpa_ssid * ssid)43 ieee802_1x_create_preshared_mka(struct wpa_supplicant *wpa_s,
44 struct wpa_ssid *ssid)
45 {
46 return 0;
47 }
48
49 #endif /* CONFIG_MACSEC */
50
51 #endif /* WPAS_KAY_H */
52