1351377Scy/*
2351377Scy * IEEE 802.1X-2010 KaY Interface
3351377Scy * Copyright (c) 2019, The Linux Foundation
4351377Scy *
5351377Scy * This software may be distributed under the terms of the BSD license.
6351377Scy * See README for more details.
7351377Scy */
8351377Scy
9351377Scy#ifndef WPA_AUTH_KAY_H
10351377Scy#define WPA_AUTH_KAY_H
11351377Scy
12351377Scy#ifdef CONFIG_MACSEC
13351377Scy
14351377Scyint ieee802_1x_alloc_kay_sm_hapd(struct hostapd_data *hapd,
15351377Scy				 struct sta_info *sta);
16351377Scyvoid * ieee802_1x_notify_create_actor_hapd(struct hostapd_data *hapd,
17351377Scy					   struct sta_info *sta);
18351377Scyvoid ieee802_1x_dealloc_kay_sm_hapd(struct hostapd_data *hapd);
19351377Scy
20351377Scyvoid * ieee802_1x_create_preshared_mka_hapd(struct hostapd_data *hapd,
21351377Scy					    struct sta_info *sta);
22351377Scy
23351377Scy#else /* CONFIG_MACSEC */
24351377Scy
25351377Scystatic inline int ieee802_1x_alloc_kay_sm_hapd(struct hostapd_data *hapd,
26351377Scy					       struct sta_info *sta)
27351377Scy{
28351377Scy	return 0;
29351377Scy}
30351377Scy
31351377Scystatic inline void *
32351377Scyieee802_1x_notify_create_actor_hapd(struct hostapd_data *hapd,
33351377Scy				    struct sta_info *sta)
34351377Scy{
35351377Scy	return NULL;
36351377Scy}
37351377Scy
38351377Scystatic inline void ieee802_1x_dealloc_kay_sm_hapd(struct hostapd_data *hapd)
39351377Scy{
40351377Scy}
41351377Scy
42351377Scystatic inline void *
43351377Scyieee802_1x_create_preshared_mka_hapd(struct hostapd_data *hapd,
44351377Scy				     struct sta_info *sta)
45351377Scy{
46351377Scy	return NULL;
47351377Scy}
48351377Scy
49351377Scy#endif /* CONFIG_MACSEC */
50351377Scy
51351377Scy#endif /* WPA_AUTH_KAY_H */
52