1 /* 2 * WPA Supplicant - Basic mesh peer management 3 * Copyright (c) 2013-2014, cozybit, Inc. All rights reserved. 4 * 5 * This software may be distributed under the terms of the BSD license. 6 * See README for more details. 7 */ 8 9 #ifndef MESH_MPM_H 10 #define MESH_MPM_H 11 12 /* notify MPM of new mesh peer to be inserted in MPM and driver */ 13 void wpa_mesh_new_mesh_peer(struct wpa_supplicant *wpa_s, const u8 *addr, 14 struct ieee802_11_elems *elems); 15 void mesh_mpm_deinit(struct wpa_supplicant *wpa_s, struct hostapd_iface *ifmsh); 16 void mesh_mpm_auth_peer(struct wpa_supplicant *wpa_s, const u8 *addr); 17 void mesh_mpm_free_sta(struct hostapd_data *hapd, struct sta_info *sta); 18 void wpa_mesh_set_plink_state(struct wpa_supplicant *wpa_s, 19 struct sta_info *sta, 20 enum mesh_plink_state state); 21 int mesh_mpm_close_peer(struct wpa_supplicant *wpa_s, const u8 *addr); 22 int mesh_mpm_connect_peer(struct wpa_supplicant *wpa_s, const u8 *addr, 23 int duration); 24 25 #ifdef CONFIG_MESH 26 27 void mesh_mpm_action_rx(struct wpa_supplicant *wpa_s, 28 const struct ieee80211_mgmt *mgmt, size_t len); 29 void mesh_mpm_mgmt_rx(struct wpa_supplicant *wpa_s, struct rx_mgmt *rx_mgmt); 30 31 #else /* CONFIG_MESH */ 32 33 static inline void mesh_mpm_action_rx(struct wpa_supplicant *wpa_s, 34 const struct ieee80211_mgmt *mgmt, 35 size_t len) 36 { 37 } 38 39 static inline void mesh_mpm_mgmt_rx(struct wpa_supplicant *wpa_s, 40 struct rx_mgmt *rx_mgmt) 41 { 42 } 43 44 #endif /* CONFIG_MESH */ 45 46 #endif /* MESH_MPM_H */ 47