ieee80211_i.h (54bcbc695e2ca88e1c8f05a93d38a04ac6b1aa0e) ieee80211_i.h (dbf498fbafa2c23139d5a990e94ed78bafbbea19)
1/*
2 * Copyright 2002-2005, Instant802 Networks, Inc.
3 * Copyright 2005, Devicescape Software, Inc.
4 * Copyright 2006-2007 Jiri Benc <jbenc@suse.cz>
5 * Copyright 2007-2010 Johannes Berg <johannes@sipsolutions.net>
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as

--- 540 unchanged lines hidden (view full) ---

549 struct list_head incomplete_stations;
550
551 enum {
552 IEEE80211_IBSS_MLME_SEARCH,
553 IEEE80211_IBSS_MLME_JOINED,
554 } state;
555};
556
1/*
2 * Copyright 2002-2005, Instant802 Networks, Inc.
3 * Copyright 2005, Devicescape Software, Inc.
4 * Copyright 2006-2007 Jiri Benc <jbenc@suse.cz>
5 * Copyright 2007-2010 Johannes Berg <johannes@sipsolutions.net>
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as

--- 540 unchanged lines hidden (view full) ---

549 struct list_head incomplete_stations;
550
551 enum {
552 IEEE80211_IBSS_MLME_SEARCH,
553 IEEE80211_IBSS_MLME_JOINED,
554 } state;
555};
556
557/**
558 * struct ieee80211_mesh_sync_ops - Extensible synchronization framework interface
559 *
560 * these declarations define the interface, which enables
561 * vendor-specific mesh synchronization
562 *
563 */
564struct ieee802_11_elems;
565struct ieee80211_mesh_sync_ops {
566 void (*rx_bcn_presp)(struct ieee80211_sub_if_data *sdata,
567 u16 stype,
568 struct ieee80211_mgmt *mgmt,
569 struct ieee802_11_elems *elems,
570 struct ieee80211_rx_status *rx_status);
571 void (*adjust_tbtt)(struct ieee80211_sub_if_data *sdata);
572 /* add other framework functions here */
573};
574
557struct ieee80211_if_mesh {
558 struct timer_list housekeeping_timer;
559 struct timer_list mesh_path_timer;
560 struct timer_list mesh_path_root_timer;
561
562 unsigned long timers_running;
563
564 unsigned long wrkq_flags;

--- 32 unchanged lines hidden (view full) ---

597 int num_gates;
598 const u8 *ie;
599 u8 ie_len;
600 enum {
601 IEEE80211_MESH_SEC_NONE = 0x0,
602 IEEE80211_MESH_SEC_AUTHED = 0x1,
603 IEEE80211_MESH_SEC_SECURED = 0x2,
604 } security;
575struct ieee80211_if_mesh {
576 struct timer_list housekeeping_timer;
577 struct timer_list mesh_path_timer;
578 struct timer_list mesh_path_root_timer;
579
580 unsigned long timers_running;
581
582 unsigned long wrkq_flags;

--- 32 unchanged lines hidden (view full) ---

615 int num_gates;
616 const u8 *ie;
617 u8 ie_len;
618 enum {
619 IEEE80211_MESH_SEC_NONE = 0x0,
620 IEEE80211_MESH_SEC_AUTHED = 0x1,
621 IEEE80211_MESH_SEC_SECURED = 0x2,
622 } security;
623 /* Extensible Synchronization Framework */
624 struct ieee80211_mesh_sync_ops *sync_ops;
625 s64 sync_offset_clockdrift_max;
626 spinlock_t sync_offset_lock;
627 bool adjusting_tbtt;
605};
606
607#ifdef CONFIG_MAC80211_MESH
608#define IEEE80211_IFSTA_MESH_CTR_INC(msh, name) \
609 do { (msh)->mshstats.name++; } while (0)
610#else
611#define IEEE80211_IFSTA_MESH_CTR_INC(msh, name) \
612 do { } while (0)

--- 896 unchanged lines hidden ---
628};
629
630#ifdef CONFIG_MAC80211_MESH
631#define IEEE80211_IFSTA_MESH_CTR_INC(msh, name) \
632 do { (msh)->mshstats.name++; } while (0)
633#else
634#define IEEE80211_IFSTA_MESH_CTR_INC(msh, name) \
635 do { } while (0)

--- 896 unchanged lines hidden ---