mesh_mpm.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  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. #ifndef MESH_MPM_H
  9. #define MESH_MPM_H
  10. /* notify MPM of new mesh peer to be inserted in MPM and driver */
  11. void wpa_mesh_new_mesh_peer(struct wpa_supplicant *wpa_s, const u8 *addr,
  12. struct ieee802_11_elems *elems);
  13. void mesh_mpm_deinit(struct wpa_supplicant *wpa_s, struct hostapd_iface *ifmsh);
  14. void mesh_mpm_auth_peer(struct wpa_supplicant *wpa_s, const u8 *addr);
  15. void mesh_mpm_free_sta(struct sta_info *sta);
  16. void wpa_mesh_set_plink_state(struct wpa_supplicant *wpa_s,
  17. struct sta_info *sta,
  18. enum mesh_plink_state state);
  19. #ifdef CONFIG_MESH
  20. void mesh_mpm_action_rx(struct wpa_supplicant *wpa_s,
  21. const struct ieee80211_mgmt *mgmt, size_t len);
  22. void mesh_mpm_mgmt_rx(struct wpa_supplicant *wpa_s, struct rx_mgmt *rx_mgmt);
  23. #else /* CONFIG_MESH */
  24. static inline void mesh_mpm_action_rx(struct wpa_supplicant *wpa_s,
  25. const struct ieee80211_mgmt *mgmt,
  26. size_t len)
  27. {
  28. }
  29. static inline void mesh_mpm_mgmt_rx(struct wpa_supplicant *wpa_s,
  30. struct rx_mgmt *rx_mgmt)
  31. {
  32. }
  33. #endif /* CONFIG_MESH */
  34. #endif /* MESH_MPM_H */