xref: /netbsd-src/external/bsd/wpa/dist/src/rsn_supp/preauth.h (revision 36ebd06e5ab61115eab7acca17a2350fc8222071)
18dbcf02cSchristos /*
28dbcf02cSchristos  * wpa_supplicant - WPA2/RSN pre-authentication functions
38dbcf02cSchristos  * Copyright (c) 2003-2009, Jouni Malinen <j@w1.fi>
48dbcf02cSchristos  *
5e604d861Schristos  * This software may be distributed under the terms of the BSD license.
6e604d861Schristos  * See README for more details.
78dbcf02cSchristos  */
88dbcf02cSchristos 
98dbcf02cSchristos #ifndef PREAUTH_H
108dbcf02cSchristos #define PREAUTH_H
118dbcf02cSchristos 
128dbcf02cSchristos struct wpa_scan_results;
138dbcf02cSchristos 
14*36ebd06eSchristos #if defined(IEEE8021X_EAPOL) && !defined(CONFIG_NO_WPA)
158dbcf02cSchristos 
168dbcf02cSchristos void pmksa_candidate_free(struct wpa_sm *sm);
178dbcf02cSchristos int rsn_preauth_init(struct wpa_sm *sm, const u8 *dst,
188dbcf02cSchristos 		     struct eap_peer_config *eap_conf);
198dbcf02cSchristos void rsn_preauth_deinit(struct wpa_sm *sm);
208dbcf02cSchristos int rsn_preauth_scan_results(struct wpa_sm *sm);
218dbcf02cSchristos void rsn_preauth_scan_result(struct wpa_sm *sm, const u8 *bssid,
228dbcf02cSchristos 			     const u8 *ssid, const u8 *rsn);
238dbcf02cSchristos void pmksa_candidate_add(struct wpa_sm *sm, const u8 *bssid,
248dbcf02cSchristos 			 int prio, int preauth);
258dbcf02cSchristos void rsn_preauth_candidate_process(struct wpa_sm *sm);
268dbcf02cSchristos int rsn_preauth_get_status(struct wpa_sm *sm, char *buf, size_t buflen,
278dbcf02cSchristos 			   int verbose);
288dbcf02cSchristos int rsn_preauth_in_progress(struct wpa_sm *sm);
298dbcf02cSchristos 
30*36ebd06eSchristos #else /* IEEE8021X_EAPOL && !CONFIG_NO_WPA */
318dbcf02cSchristos 
pmksa_candidate_free(struct wpa_sm * sm)328dbcf02cSchristos static inline void pmksa_candidate_free(struct wpa_sm *sm)
338dbcf02cSchristos {
348dbcf02cSchristos }
358dbcf02cSchristos 
rsn_preauth_candidate_process(struct wpa_sm * sm)368dbcf02cSchristos static inline void rsn_preauth_candidate_process(struct wpa_sm *sm)
378dbcf02cSchristos {
388dbcf02cSchristos }
398dbcf02cSchristos 
rsn_preauth_init(struct wpa_sm * sm,const u8 * dst,struct eap_peer_config * eap_conf)408dbcf02cSchristos static inline int rsn_preauth_init(struct wpa_sm *sm, const u8 *dst,
418dbcf02cSchristos 				   struct eap_peer_config *eap_conf)
428dbcf02cSchristos {
438dbcf02cSchristos 	return -1;
448dbcf02cSchristos }
458dbcf02cSchristos 
rsn_preauth_deinit(struct wpa_sm * sm)468dbcf02cSchristos static inline void rsn_preauth_deinit(struct wpa_sm *sm)
478dbcf02cSchristos {
488dbcf02cSchristos }
498dbcf02cSchristos 
rsn_preauth_scan_results(struct wpa_sm * sm)508dbcf02cSchristos static inline int rsn_preauth_scan_results(struct wpa_sm *sm)
518dbcf02cSchristos {
528dbcf02cSchristos 	return -1;
538dbcf02cSchristos }
548dbcf02cSchristos 
rsn_preauth_scan_result(struct wpa_sm * sm,const u8 * bssid,const u8 * ssid,const u8 * rsn)558dbcf02cSchristos static inline void rsn_preauth_scan_result(struct wpa_sm *sm, const u8 *bssid,
568dbcf02cSchristos 					   const u8 *ssid, const u8 *rsn)
578dbcf02cSchristos {
588dbcf02cSchristos }
598dbcf02cSchristos 
pmksa_candidate_add(struct wpa_sm * sm,const u8 * bssid,int prio,int preauth)608dbcf02cSchristos static inline void pmksa_candidate_add(struct wpa_sm *sm,
618dbcf02cSchristos 				       const u8 *bssid,
628dbcf02cSchristos 				       int prio, int preauth)
638dbcf02cSchristos {
648dbcf02cSchristos }
658dbcf02cSchristos 
rsn_preauth_get_status(struct wpa_sm * sm,char * buf,size_t buflen,int verbose)668dbcf02cSchristos static inline int rsn_preauth_get_status(struct wpa_sm *sm, char *buf,
678dbcf02cSchristos 					 size_t buflen, int verbose)
688dbcf02cSchristos {
698dbcf02cSchristos 	return 0;
708dbcf02cSchristos }
718dbcf02cSchristos 
rsn_preauth_in_progress(struct wpa_sm * sm)728dbcf02cSchristos static inline int rsn_preauth_in_progress(struct wpa_sm *sm)
738dbcf02cSchristos {
748dbcf02cSchristos 	return 0;
758dbcf02cSchristos }
768dbcf02cSchristos 
77*36ebd06eSchristos #endif /* IEEE8021X_EAPOL && !CONFIG_NO_WPA */
788dbcf02cSchristos 
798dbcf02cSchristos #endif /* PREAUTH_H */
80