xref: /freebsd/contrib/wpa/src/rsn_supp/preauth.h (revision 780fb4a2fa9a9aee5ac48a60b790f567c0dc13e9)
139beb93cSSam Leffler /*
239beb93cSSam Leffler  * wpa_supplicant - WPA2/RSN pre-authentication functions
3e28a4053SRui Paulo  * Copyright (c) 2003-2009, Jouni Malinen <j@w1.fi>
439beb93cSSam Leffler  *
5f05cddf9SRui Paulo  * This software may be distributed under the terms of the BSD license.
6f05cddf9SRui Paulo  * See README for more details.
739beb93cSSam Leffler  */
839beb93cSSam Leffler 
939beb93cSSam Leffler #ifndef PREAUTH_H
1039beb93cSSam Leffler #define PREAUTH_H
1139beb93cSSam Leffler 
1239beb93cSSam Leffler struct wpa_scan_results;
1339beb93cSSam Leffler 
14*780fb4a2SCy Schubert #if defined(IEEE8021X_EAPOL) && !defined(CONFIG_NO_WPA)
1539beb93cSSam Leffler 
1639beb93cSSam Leffler void pmksa_candidate_free(struct wpa_sm *sm);
1739beb93cSSam Leffler int rsn_preauth_init(struct wpa_sm *sm, const u8 *dst,
1839beb93cSSam Leffler 		     struct eap_peer_config *eap_conf);
1939beb93cSSam Leffler void rsn_preauth_deinit(struct wpa_sm *sm);
20e28a4053SRui Paulo int rsn_preauth_scan_results(struct wpa_sm *sm);
21e28a4053SRui Paulo void rsn_preauth_scan_result(struct wpa_sm *sm, const u8 *bssid,
22e28a4053SRui Paulo 			     const u8 *ssid, const u8 *rsn);
2339beb93cSSam Leffler void pmksa_candidate_add(struct wpa_sm *sm, const u8 *bssid,
2439beb93cSSam Leffler 			 int prio, int preauth);
2539beb93cSSam Leffler void rsn_preauth_candidate_process(struct wpa_sm *sm);
2639beb93cSSam Leffler int rsn_preauth_get_status(struct wpa_sm *sm, char *buf, size_t buflen,
2739beb93cSSam Leffler 			   int verbose);
2839beb93cSSam Leffler int rsn_preauth_in_progress(struct wpa_sm *sm);
2939beb93cSSam Leffler 
30*780fb4a2SCy Schubert #else /* IEEE8021X_EAPOL && !CONFIG_NO_WPA */
3139beb93cSSam Leffler 
pmksa_candidate_free(struct wpa_sm * sm)3239beb93cSSam Leffler static inline void pmksa_candidate_free(struct wpa_sm *sm)
3339beb93cSSam Leffler {
3439beb93cSSam Leffler }
3539beb93cSSam Leffler 
rsn_preauth_candidate_process(struct wpa_sm * sm)3639beb93cSSam Leffler static inline void rsn_preauth_candidate_process(struct wpa_sm *sm)
3739beb93cSSam Leffler {
3839beb93cSSam Leffler }
3939beb93cSSam Leffler 
rsn_preauth_init(struct wpa_sm * sm,const u8 * dst,struct eap_peer_config * eap_conf)4039beb93cSSam Leffler static inline int rsn_preauth_init(struct wpa_sm *sm, const u8 *dst,
4139beb93cSSam Leffler 				   struct eap_peer_config *eap_conf)
4239beb93cSSam Leffler {
4339beb93cSSam Leffler 	return -1;
4439beb93cSSam Leffler }
4539beb93cSSam Leffler 
rsn_preauth_deinit(struct wpa_sm * sm)4639beb93cSSam Leffler static inline void rsn_preauth_deinit(struct wpa_sm *sm)
4739beb93cSSam Leffler {
4839beb93cSSam Leffler }
49e28a4053SRui Paulo 
rsn_preauth_scan_results(struct wpa_sm * sm)50e28a4053SRui Paulo static inline int rsn_preauth_scan_results(struct wpa_sm *sm)
51e28a4053SRui Paulo {
52e28a4053SRui Paulo 	return -1;
53e28a4053SRui Paulo }
54e28a4053SRui Paulo 
rsn_preauth_scan_result(struct wpa_sm * sm,const u8 * bssid,const u8 * ssid,const u8 * rsn)55e28a4053SRui Paulo static inline void rsn_preauth_scan_result(struct wpa_sm *sm, const u8 *bssid,
56e28a4053SRui Paulo 					   const u8 *ssid, const u8 *rsn)
5739beb93cSSam Leffler {
5839beb93cSSam Leffler }
5939beb93cSSam Leffler 
pmksa_candidate_add(struct wpa_sm * sm,const u8 * bssid,int prio,int preauth)6039beb93cSSam Leffler static inline void pmksa_candidate_add(struct wpa_sm *sm,
6139beb93cSSam Leffler 				       const u8 *bssid,
6239beb93cSSam Leffler 				       int prio, int preauth)
6339beb93cSSam Leffler {
6439beb93cSSam Leffler }
6539beb93cSSam Leffler 
rsn_preauth_get_status(struct wpa_sm * sm,char * buf,size_t buflen,int verbose)6639beb93cSSam Leffler static inline int rsn_preauth_get_status(struct wpa_sm *sm, char *buf,
6739beb93cSSam Leffler 					 size_t buflen, int verbose)
6839beb93cSSam Leffler {
6939beb93cSSam Leffler 	return 0;
7039beb93cSSam Leffler }
7139beb93cSSam Leffler 
rsn_preauth_in_progress(struct wpa_sm * sm)7239beb93cSSam Leffler static inline int rsn_preauth_in_progress(struct wpa_sm *sm)
7339beb93cSSam Leffler {
7439beb93cSSam Leffler 	return 0;
7539beb93cSSam Leffler }
7639beb93cSSam Leffler 
77*780fb4a2SCy Schubert #endif /* IEEE8021X_EAPOL && !CONFIG_NO_WPA */
7839beb93cSSam Leffler 
7939beb93cSSam Leffler #endif /* PREAUTH_H */
80