1 /*
2  * IEEE 802.1X-2010 KaY Interface
3  * Copyright (c) 2019, The Linux Foundation
4  *
5  * This software may be distributed under the terms of the BSD license.
6  * See README for more details.
7  */
8 
9 #ifndef WPA_AUTH_KAY_H
10 #define WPA_AUTH_KAY_H
11 
12 #ifdef CONFIG_MACSEC
13 
14 int ieee802_1x_alloc_kay_sm_hapd(struct hostapd_data *hapd,
15 				 struct sta_info *sta);
16 void * ieee802_1x_notify_create_actor_hapd(struct hostapd_data *hapd,
17 					   struct sta_info *sta);
18 void ieee802_1x_dealloc_kay_sm_hapd(struct hostapd_data *hapd);
19 
20 void * ieee802_1x_create_preshared_mka_hapd(struct hostapd_data *hapd,
21 					    struct sta_info *sta);
22 
23 #else /* CONFIG_MACSEC */
24 
25 static inline int ieee802_1x_alloc_kay_sm_hapd(struct hostapd_data *hapd,
26 					       struct sta_info *sta)
27 {
28 	return 0;
29 }
30 
31 static inline void *
32 ieee802_1x_notify_create_actor_hapd(struct hostapd_data *hapd,
33 				    struct sta_info *sta)
34 {
35 	return NULL;
36 }
37 
38 static inline void ieee802_1x_dealloc_kay_sm_hapd(struct hostapd_data *hapd)
39 {
40 }
41 
42 static inline void *
43 ieee802_1x_create_preshared_mka_hapd(struct hostapd_data *hapd,
44 				     struct sta_info *sta)
45 {
46 	return NULL;
47 }
48 
49 #endif /* CONFIG_MACSEC */
50 
51 #endif /* WPA_AUTH_KAY_H */
52