#include <linux/slab.h>
#include <asm/unaligned.h>
#include "ieee80211_i.h"
#include "mesh.h"
Go to the source code of this file.
|
bool | mesh_action_is_path_sel (struct ieee80211_mgmt *mgmt) |
|
void | ieee80211s_init (void) |
|
void | ieee80211s_stop (void) |
|
bool | mesh_matches_local (struct ieee80211_sub_if_data *sdata, struct ieee802_11_elems *ie) |
|
bool | mesh_peer_accepts_plinks (struct ieee802_11_elems *ie) |
|
u32 | mesh_accept_plinks_update (struct ieee80211_sub_if_data *sdata) |
|
int | mesh_rmc_init (struct ieee80211_sub_if_data *sdata) |
|
void | mesh_rmc_free (struct ieee80211_sub_if_data *sdata) |
|
int | mesh_rmc_check (u8 *sa, struct ieee80211s_hdr *mesh_hdr, struct ieee80211_sub_if_data *sdata) |
|
int | mesh_add_meshconf_ie (struct sk_buff *skb, struct ieee80211_sub_if_data *sdata) |
|
int | mesh_add_meshid_ie (struct sk_buff *skb, struct ieee80211_sub_if_data *sdata) |
|
int | mesh_add_vendor_ies (struct sk_buff *skb, struct ieee80211_sub_if_data *sdata) |
|
int | mesh_add_rsn_ie (struct sk_buff *skb, struct ieee80211_sub_if_data *sdata) |
|
int | mesh_add_ds_params_ie (struct sk_buff *skb, struct ieee80211_sub_if_data *sdata) |
|
int | mesh_add_ht_cap_ie (struct sk_buff *skb, struct ieee80211_sub_if_data *sdata) |
|
int | mesh_add_ht_oper_ie (struct sk_buff *skb, struct ieee80211_sub_if_data *sdata) |
|
void | ieee80211_mesh_root_setup (struct ieee80211_if_mesh *ifmsh) |
|
int | ieee80211_fill_mesh_addresses (struct ieee80211_hdr *hdr, __le16 *fc, const u8 *meshda, const u8 *meshsa) |
|
int | ieee80211_new_mesh_header (struct ieee80211s_hdr *meshhdr, struct ieee80211_sub_if_data *sdata, char *addr4or5, char *addr6) |
|
void | ieee80211_start_mesh (struct ieee80211_sub_if_data *sdata) |
|
void | ieee80211_stop_mesh (struct ieee80211_sub_if_data *sdata) |
|
void | ieee80211_mesh_rx_queued_mgmt (struct ieee80211_sub_if_data *sdata, struct sk_buff *skb) |
|
void | ieee80211_mesh_work (struct ieee80211_sub_if_data *sdata) |
|
void | ieee80211_mesh_notify_scan_completed (struct ieee80211_local *local) |
|
void | ieee80211_mesh_init_sdata (struct ieee80211_sub_if_data *sdata) |
|
#define TMR_RUNNING_MPR 2 |
ieee80211_fill_mesh_addresses - fill addresses of a locally originated mesh frame : 802.11 frame header : frame control field : destination address in the mesh : source address address in the mesh. Same as TA, as frame is locally originated.
Return the length of the 802.11 (does not include a mesh control header)
Definition at line 473 of file mesh.c.
ieee80211_new_mesh_header - create a new mesh header : uninitialized mesh header : mesh interface to be used : 1st address in the ae header, which may correspond to address 4 (if addr6 is NULL) or address 5 (if addr6 is present). It may be NULL. : 2nd address in the ae header, which corresponds to addr6 of the mesh frame
Return the header length.
Definition at line 506 of file mesh.c.
mesh_accept_plinks_update - update accepting_plink in local mesh beacons
: mesh interface in which mesh beacons are going to be updated
Returns: beacon changed flag if the beacon content changed.
Definition at line 142 of file mesh.c.
mesh_matches_local - check if the config of a mesh point matches ours
: local mesh subif : information elements of a management frame from the mesh peer
This function checks if the mesh configuration of a mesh point matches the local mesh configuration, i.e. if both nodes belong to the same mesh network.
Definition at line 73 of file mesh.c.
mesh_peer_accepts_plinks - check if an mp is willing to establish peer links
: information elements of a management frame from the mesh peer
Definition at line 129 of file mesh.c.
mesh_rmc_check - Check frame in recent multicast cache and add if absent.
- See Also
- : source address : mesh_header
Returns: 0 if the frame is not in the cache, nonzero otherwise.
Checks using the source address and the mesh sequence number if we have received this frame lately. If the frame is not in the cache, it is added to it.
Definition at line 207 of file mesh.c.