mesh.h (d585a021c0b10b0477d6b608c53e1feb8cde0507) | mesh.h (5bb644a0fd25a5e083ecbfaa92a211db99aa6ef7) |
---|---|
1/* 2 * Copyright (c) 2008 open80211s Ltd. 3 * Authors: Luis Carlos Cobo <luisca@cozybit.com> 4 * Javier Cardona <javier@cozybit.com> 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License version 2 as 8 * published by the Free Software Foundation. --- 253 unchanged lines hidden (view full) --- 262void mesh_path_tx_pending(struct mesh_path *mpath); 263int mesh_pathtbl_init(void); 264void mesh_pathtbl_unregister(void); 265int mesh_path_del(u8 *addr, struct ieee80211_sub_if_data *sdata); 266void mesh_path_timer(unsigned long data); 267void mesh_path_flush_by_nexthop(struct sta_info *sta); 268void mesh_path_discard_frame(struct sk_buff *skb, 269 struct ieee80211_sub_if_data *sdata); | 1/* 2 * Copyright (c) 2008 open80211s Ltd. 3 * Authors: Luis Carlos Cobo <luisca@cozybit.com> 4 * Javier Cardona <javier@cozybit.com> 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License version 2 as 8 * published by the Free Software Foundation. --- 253 unchanged lines hidden (view full) --- 262void mesh_path_tx_pending(struct mesh_path *mpath); 263int mesh_pathtbl_init(void); 264void mesh_pathtbl_unregister(void); 265int mesh_path_del(u8 *addr, struct ieee80211_sub_if_data *sdata); 266void mesh_path_timer(unsigned long data); 267void mesh_path_flush_by_nexthop(struct sta_info *sta); 268void mesh_path_discard_frame(struct sk_buff *skb, 269 struct ieee80211_sub_if_data *sdata); |
270void mesh_path_quiesce(struct ieee80211_sub_if_data *sdata); 271void mesh_path_restart(struct ieee80211_sub_if_data *sdata); |
|
270 271#ifdef CONFIG_MAC80211_MESH 272extern int mesh_allocated; 273 274static inline int mesh_plink_free_count(struct ieee80211_sub_if_data *sdata) 275{ 276 return sdata->u.mesh.mshcfg.dot11MeshMaxPeerLinks - 277 atomic_read(&sdata->u.mesh.mshstats.estab_plinks); --- 11 unchanged lines hidden (view full) --- 289} 290 291#define for_each_mesh_entry(x, p, node, i) \ 292 for (i = 0; i <= x->hash_mask; i++) \ 293 hlist_for_each_entry_rcu(node, p, &x->hash_buckets[i], list) 294 295void ieee80211_mesh_notify_scan_completed(struct ieee80211_local *local); 296 | 272 273#ifdef CONFIG_MAC80211_MESH 274extern int mesh_allocated; 275 276static inline int mesh_plink_free_count(struct ieee80211_sub_if_data *sdata) 277{ 278 return sdata->u.mesh.mshcfg.dot11MeshMaxPeerLinks - 279 atomic_read(&sdata->u.mesh.mshstats.estab_plinks); --- 11 unchanged lines hidden (view full) --- 291} 292 293#define for_each_mesh_entry(x, p, node, i) \ 294 for (i = 0; i <= x->hash_mask; i++) \ 295 hlist_for_each_entry_rcu(node, p, &x->hash_buckets[i], list) 296 297void ieee80211_mesh_notify_scan_completed(struct ieee80211_local *local); 298 |
299void ieee80211_mesh_quiesce(struct ieee80211_sub_if_data *sdata); 300void ieee80211_mesh_restart(struct ieee80211_sub_if_data *sdata); 301void mesh_plink_quiesce(struct sta_info *sta); 302void mesh_plink_restart(struct sta_info *sta); |
|
297#else 298#define mesh_allocated 0 299static inline void 300ieee80211_mesh_notify_scan_completed(struct ieee80211_local *local) {} | 303#else 304#define mesh_allocated 0 305static inline void 306ieee80211_mesh_notify_scan_completed(struct ieee80211_local *local) {} |
307static inline void ieee80211_mesh_quiesce(struct ieee80211_sub_if_data *sdata) 308{} 309static inline void ieee80211_mesh_restart(struct ieee80211_sub_if_data *sdata) 310{} 311static inline void mesh_plink_quiesce(struct sta_info *sta) {} 312static inline void mesh_plink_restart(struct sta_info *sta) {} |
|
301#endif 302 303#endif /* IEEE80211S_H */ | 313#endif 314 315#endif /* IEEE80211S_H */ |