Home | History | Annotate | Download | only in wpa_supplicant
      1 /*
      2  * wpa_supplicant - Event notifications
      3  * Copyright (c) 2009-2010, Jouni Malinen <j (at) w1.fi>
      4  *
      5  * This program is free software; you can redistribute it and/or modify
      6  * it under the terms of the GNU General Public License version 2 as
      7  * published by the Free Software Foundation.
      8  *
      9  * Alternatively, this software may be distributed under the terms of BSD
     10  * license.
     11  *
     12  * See README and COPYING for more details.
     13  */
     14 
     15 #ifndef NOTIFY_H
     16 #define NOTIFY_H
     17 
     18 #include "p2p/p2p.h"
     19 
     20 struct wps_credential;
     21 struct wps_event_m2d;
     22 struct wps_event_fail;
     23 
     24 int wpas_notify_supplicant_initialized(struct wpa_global *global);
     25 void wpas_notify_supplicant_deinitialized(struct wpa_global *global);
     26 int wpas_notify_iface_added(struct wpa_supplicant *wpa_s);
     27 void wpas_notify_iface_removed(struct wpa_supplicant *wpa_s);
     28 void wpas_notify_state_changed(struct wpa_supplicant *wpa_s,
     29 			       enum wpa_states new_state,
     30 			       enum wpa_states old_state);
     31 void wpas_notify_network_changed(struct wpa_supplicant *wpa_s);
     32 void wpas_notify_ap_scan_changed(struct wpa_supplicant *wpa_s);
     33 void wpas_notify_bssid_changed(struct wpa_supplicant *wpa_s);
     34 void wpas_notify_auth_changed(struct wpa_supplicant *wpa_s);
     35 void wpas_notify_network_enabled_changed(struct wpa_supplicant *wpa_s,
     36 					 struct wpa_ssid *ssid);
     37 void wpas_notify_network_selected(struct wpa_supplicant *wpa_s,
     38 				  struct wpa_ssid *ssid);
     39 void wpas_notify_scanning(struct wpa_supplicant *wpa_s);
     40 void wpas_notify_scan_done(struct wpa_supplicant *wpa_s, int success);
     41 void wpas_notify_scan_results(struct wpa_supplicant *wpa_s);
     42 void wpas_notify_wps_credential(struct wpa_supplicant *wpa_s,
     43 				const struct wps_credential *cred);
     44 void wpas_notify_wps_event_m2d(struct wpa_supplicant *wpa_s,
     45 			       struct wps_event_m2d *m2d);
     46 void wpas_notify_wps_event_fail(struct wpa_supplicant *wpa_s,
     47 				struct wps_event_fail *fail);
     48 void wpas_notify_wps_event_success(struct wpa_supplicant *wpa_s);
     49 void wpas_notify_network_added(struct wpa_supplicant *wpa_s,
     50 			       struct wpa_ssid *ssid);
     51 void wpas_notify_network_removed(struct wpa_supplicant *wpa_s,
     52 				 struct wpa_ssid *ssid);
     53 void wpas_notify_bss_added(struct wpa_supplicant *wpa_s, u8 bssid[],
     54 			   unsigned int id);
     55 void wpas_notify_bss_removed(struct wpa_supplicant *wpa_s, u8 bssid[],
     56 			     unsigned int id);
     57 void wpas_notify_bss_freq_changed(struct wpa_supplicant *wpa_s,
     58 				  unsigned int id);
     59 void wpas_notify_bss_signal_changed(struct wpa_supplicant *wpa_s,
     60 				    unsigned int id);
     61 void wpas_notify_bss_privacy_changed(struct wpa_supplicant *wpa_s,
     62 				     unsigned int id);
     63 void wpas_notify_bss_mode_changed(struct wpa_supplicant *wpa_s,
     64 				  unsigned int id);
     65 void wpas_notify_bss_wpaie_changed(struct wpa_supplicant *wpa_s,
     66 				   unsigned int id);
     67 void wpas_notify_bss_rsnie_changed(struct wpa_supplicant *wpa_s,
     68 				   unsigned int id);
     69 void wpas_notify_bss_wps_changed(struct wpa_supplicant *wpa_s,
     70 				 unsigned int id);
     71 void wpas_notify_bss_ies_changed(struct wpa_supplicant *wpa_s,
     72 				 unsigned int id);
     73 void wpas_notify_bss_rates_changed(struct wpa_supplicant *wpa_s,
     74 				   unsigned int id);
     75 void wpas_notify_blob_added(struct wpa_supplicant *wpa_s, const char *name);
     76 void wpas_notify_blob_removed(struct wpa_supplicant *wpa_s, const char *name);
     77 
     78 void wpas_notify_debug_level_changed(struct wpa_global *global);
     79 void wpas_notify_debug_timestamp_changed(struct wpa_global *global);
     80 void wpas_notify_debug_show_keys_changed(struct wpa_global *global);
     81 void wpas_notify_suspend(struct wpa_global *global);
     82 void wpas_notify_resume(struct wpa_global *global);
     83 
     84 void wpas_notify_sta_authorized(struct wpa_supplicant *wpa_s,
     85 				const u8 *mac_addr, int authorized);
     86 void wpas_notify_p2p_device_found(struct wpa_supplicant *wpa_s,
     87 				  const u8 *dev_addr, int new_device);
     88 void wpas_notify_p2p_device_lost(struct wpa_supplicant *wpa_s,
     89 				 const u8 *dev_addr);
     90 void wpas_notify_p2p_group_removed(struct wpa_supplicant *wpa_s,
     91 				   const struct wpa_ssid *ssid,
     92 				   const char *role);
     93 void wpas_notify_p2p_go_neg_req(struct wpa_supplicant *wpa_s,
     94 				const u8 *src, u16 dev_passwd_id);
     95 void wpas_notify_p2p_go_neg_completed(struct wpa_supplicant *wpa_s,
     96 				      int status);
     97 void wpas_notify_p2p_invitation_result(struct wpa_supplicant *wpa_s,
     98 				       int status, const u8 *bssid);
     99 void wpas_notify_p2p_sd_request(struct wpa_supplicant *wpa_s,
    100 				int freq, const u8 *sa, u8 dialog_token,
    101 				u16 update_indic, const u8 *tlvs,
    102 				size_t tlvs_len);
    103 void wpas_notify_p2p_sd_response(struct wpa_supplicant *wpa_s,
    104 				 const u8 *sa, u16 update_indic,
    105 				 const u8 *tlvs, size_t tlvs_len);
    106 void wpas_notify_p2p_provision_discovery(struct wpa_supplicant *wpa_s,
    107 					 const u8 *dev_addr, int request,
    108 					 enum p2p_prov_disc_status status,
    109 					 u16 config_methods,
    110 					 unsigned int generated_pin);
    111 void wpas_notify_p2p_group_started(struct wpa_supplicant *wpa_s,
    112 				   struct wpa_ssid *ssid, int network_id,
    113 				   int client);
    114 void wpas_notify_persistent_group_added(struct wpa_supplicant *wpa_s,
    115 					struct wpa_ssid *ssid);
    116 void wpas_notify_persistent_group_removed(struct wpa_supplicant *wpa_s,
    117 					  struct wpa_ssid *ssid);
    118 
    119 void wpas_notify_p2p_wps_failed(struct wpa_supplicant *wpa_s,
    120 				struct wps_event_fail *fail);
    121 
    122 void wpas_notify_certification(struct wpa_supplicant *wpa_s, int depth,
    123 			       const char *subject, const char *cert_hash,
    124 			       const struct wpabuf *cert);
    125 
    126 #endif /* NOTIFY_H */
    127