blob: a429e5e27358cf1635675f503ced58f002145498 [file] [log] [blame]
Dmitry Shmidtfb45fd52015-01-05 13:08:17 -08001/*
2 * WPA Supplicant - Basic mesh mode routines
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_H
10#define MESH_H
11
12int wpa_supplicant_join_mesh(struct wpa_supplicant *wpa_s,
13 struct wpa_ssid *ssid);
Hai Shalom60840252021-02-19 19:02:11 -080014int wpa_supplicant_leave_mesh(struct wpa_supplicant *wpa_s,
15 bool need_deinit);
Dmitry Shmidtfb45fd52015-01-05 13:08:17 -080016void wpa_supplicant_mesh_iface_deinit(struct wpa_supplicant *wpa_s,
Hai Shalom60840252021-02-19 19:02:11 -080017 struct hostapd_iface *ifmsh,
18 bool also_clear_hostapd);
Dmitry Shmidtfb45fd52015-01-05 13:08:17 -080019int wpas_mesh_scan_result_text(const u8 *ies, size_t ies_len, char *buf,
20 char *end);
21int wpas_mesh_add_interface(struct wpa_supplicant *wpa_s, char *ifname,
22 size_t len);
Dmitry Shmidte4663042016-04-04 10:07:49 -070023int wpas_mesh_peer_remove(struct wpa_supplicant *wpa_s, const u8 *addr);
24int wpas_mesh_peer_add(struct wpa_supplicant *wpa_s, const u8 *addr,
25 int duration);
Dmitry Shmidtfb45fd52015-01-05 13:08:17 -080026
27#ifdef CONFIG_MESH
28
29void wpa_mesh_notify_peer(struct wpa_supplicant *wpa_s, const u8 *addr,
30 const u8 *ies, size_t ie_len);
31void wpa_supplicant_mesh_add_scan_ie(struct wpa_supplicant *wpa_s,
32 struct wpabuf **extra_ie);
33
34#else /* CONFIG_MESH */
35
36static inline void wpa_mesh_notify_peer(struct wpa_supplicant *wpa_s,
37 const u8 *addr,
38 const u8 *ies, size_t ie_len)
39{
40}
41
42static inline void wpa_supplicant_mesh_add_scan_ie(struct wpa_supplicant *wpa_s,
43 struct wpabuf **extra_ie)
44{
45}
46
47#endif /* CONFIG_MESH */
48
49#endif /* MESH_H */