diff options
Diffstat (limited to 'package/mac80211/src/include/net/cfg80211.h')
-rw-r--r-- | package/mac80211/src/include/net/cfg80211.h | 270 |
1 files changed, 0 insertions, 270 deletions
diff --git a/package/mac80211/src/include/net/cfg80211.h b/package/mac80211/src/include/net/cfg80211.h deleted file mode 100644 index ab4caf6395..0000000000 --- a/package/mac80211/src/include/net/cfg80211.h +++ /dev/null @@ -1,270 +0,0 @@ -#ifndef __NET_CFG80211_H -#define __NET_CFG80211_H - -#include <linux/netlink.h> -#include <linux/skbuff.h> -#include <linux/nl80211.h> -#include <net/genetlink.h> - -/* - * 802.11 configuration in-kernel interface - * - * Copyright 2006, 2007 Johannes Berg <johannes@sipsolutions.net> - */ - -/* Radiotap header iteration - * implemented in net/wireless/radiotap.c - * docs in Documentation/networking/radiotap-headers.txt - */ -/** - * struct ieee80211_radiotap_iterator - tracks walk thru present radiotap args - * @rtheader: pointer to the radiotap header we are walking through - * @max_length: length of radiotap header in cpu byte ordering - * @this_arg_index: IEEE80211_RADIOTAP_... index of current arg - * @this_arg: pointer to current radiotap arg - * @arg_index: internal next argument index - * @arg: internal next argument pointer - * @next_bitmap: internal pointer to next present u32 - * @bitmap_shifter: internal shifter for curr u32 bitmap, b0 set == arg present - */ - -struct ieee80211_radiotap_iterator { - struct ieee80211_radiotap_header *rtheader; - int max_length; - int this_arg_index; - u8 *this_arg; - - int arg_index; - u8 *arg; - __le32 *next_bitmap; - u32 bitmap_shifter; -}; - -extern int ieee80211_radiotap_iterator_init( - struct ieee80211_radiotap_iterator *iterator, - struct ieee80211_radiotap_header *radiotap_header, - int max_length); - -extern int ieee80211_radiotap_iterator_next( - struct ieee80211_radiotap_iterator *iterator); - - - /** - * struct key_params - key information - * - * Information about a key - * - * @key: key material - * @key_len: length of key material - * @cipher: cipher suite selector - * @seq: sequence counter (IV/PN) for TKIP and CCMP keys, only used - * with the get_key() callback, must be in little endian, - * length given by @seq_len. - */ -struct key_params { - u8 *key; - u8 *seq; - int key_len; - int seq_len; - u32 cipher; -}; - -/** - * struct beacon_parameters - beacon parameters - * - * Used to configure the beacon for an interface. - * - * @head: head portion of beacon (before TIM IE) - * or %NULL if not changed - * @tail: tail portion of beacon (after TIM IE) - * or %NULL if not changed - * @interval: beacon interval or zero if not changed - * @dtim_period: DTIM period or zero if not changed - * @head_len: length of @head - * @tail_len: length of @tail - */ -struct beacon_parameters { - u8 *head, *tail; - int interval, dtim_period; - int head_len, tail_len; -}; - -/** - * enum station_flags - station flags - * - * Station capability flags. Note that these must be the bits - * according to the nl80211 flags. - * - * @STATION_FLAG_CHANGED: station flags were changed - * @STATION_FLAG_AUTHORIZED: station is authorized to send frames (802.1X) - * @STATION_FLAG_SHORT_PREAMBLE: station is capable of receiving frames - * with short preambles - * @STATION_FLAG_WME: station is WME/QoS capable - */ -enum station_flags { - STATION_FLAG_CHANGED = 1<<0, - STATION_FLAG_AUTHORIZED = 1<<NL80211_STA_FLAG_AUTHORIZED, - STATION_FLAG_SHORT_PREAMBLE = 1<<NL80211_STA_FLAG_SHORT_PREAMBLE, - STATION_FLAG_WME = 1<<NL80211_STA_FLAG_WME, -}; - -/** - * struct station_parameters - station parameters - * - * Used to change and create a new station. - * - * @vlan: vlan interface station should belong to - * @supported_rates: supported rates in IEEE 802.11 format - * (or NULL for no change) - * @supported_rates_len: number of supported rates - * @station_flags: station flags (see &enum station_flags) - * @listen_interval: listen interval or -1 for no change - * @aid: AID or zero for no change - */ -struct station_parameters { - u8 *supported_rates; - struct net_device *vlan; - u32 station_flags; - int listen_interval; - u16 aid; - u8 supported_rates_len; -}; - -/** - * enum station_stats_flags - station statistics flags - * - * Used by the driver to indicate which info in &struct station_stats - * it has filled in during get_station(). - * - * @STATION_STAT_INACTIVE_TIME: @inactive_time filled - * @STATION_STAT_RX_BYTES: @rx_bytes filled - * @STATION_STAT_TX_BYTES: @tx_bytes filled - */ -enum station_stats_flags { - STATION_STAT_INACTIVE_TIME = 1<<0, - STATION_STAT_RX_BYTES = 1<<1, - STATION_STAT_TX_BYTES = 1<<2, -}; - -/** - * struct station_stats - station statistics - * - * Station information filled by driver for get_station(). - * - * @filled: bitflag of flags from &enum station_stats_flags - * @inactive_time: time since last station activity (tx/rx) in milliseconds - * @rx_bytes: bytes received from this station - * @tx_bytes: bytes transmitted to this station - */ -struct station_stats { - u32 filled; - u32 inactive_time; - u32 rx_bytes; - u32 tx_bytes; -}; - -/** - * enum monitor_flags - monitor flags - * - * Monitor interface configuration flags. Note that these must be the bits - * according to the nl80211 flags. - * - * @MONITOR_FLAG_FCSFAIL: pass frames with bad FCS - * @MONITOR_FLAG_PLCPFAIL: pass frames with bad PLCP - * @MONITOR_FLAG_CONTROL: pass control frames - * @MONITOR_FLAG_OTHER_BSS: disable BSSID filtering - * @MONITOR_FLAG_COOK_FRAMES: report frames after processing - */ -enum monitor_flags { - MONITOR_FLAG_FCSFAIL = 1<<NL80211_MNTR_FLAG_FCSFAIL, - MONITOR_FLAG_PLCPFAIL = 1<<NL80211_MNTR_FLAG_PLCPFAIL, - MONITOR_FLAG_CONTROL = 1<<NL80211_MNTR_FLAG_CONTROL, - MONITOR_FLAG_OTHER_BSS = 1<<NL80211_MNTR_FLAG_OTHER_BSS, - MONITOR_FLAG_COOK_FRAMES = 1<<NL80211_MNTR_FLAG_COOK_FRAMES, -}; - -/* from net/wireless.h */ -struct wiphy; - -/** - * struct cfg80211_ops - backend description for wireless configuration - * - * This struct is registered by fullmac card drivers and/or wireless stacks - * in order to handle configuration requests on their interfaces. - * - * All callbacks except where otherwise noted should return 0 - * on success or a negative error code. - * - * All operations are currently invoked under rtnl for consistency with the - * wireless extensions but this is subject to reevaluation as soon as this - * code is used more widely and we have a first user without wext. - * - * @add_virtual_intf: create a new virtual interface with the given name - * - * @del_virtual_intf: remove the virtual interface determined by ifindex. - * - * @change_virtual_intf: change type of virtual interface - * - * @add_key: add a key with the given parameters. @mac_addr will be %NULL - * when adding a group key. - * - * @get_key: get information about the key with the given parameters. - * @mac_addr will be %NULL when requesting information for a group - * key. All pointers given to the @callback function need not be valid - * after it returns. - * - * @del_key: remove a key given the @mac_addr (%NULL for a group key) - * and @key_index - * - * @set_default_key: set the default key on an interface - * - * @add_beacon: Add a beacon with given parameters, @head, @interval - * and @dtim_period will be valid, @tail is optional. - * @set_beacon: Change the beacon parameters for an access point mode - * interface. This should reject the call when no beacon has been - * configured. - * @del_beacon: Remove beacon configuration and stop sending the beacon. - * - * @add_station: Add a new station. - * - * @del_station: Remove a station; @mac may be NULL to remove all stations. - * - * @change_station: Modify a given station. - */ -struct cfg80211_ops { - int (*add_virtual_intf)(struct wiphy *wiphy, char *name, - enum nl80211_iftype type, u32 *flags); - int (*del_virtual_intf)(struct wiphy *wiphy, int ifindex); - int (*change_virtual_intf)(struct wiphy *wiphy, int ifindex, - enum nl80211_iftype type, u32 *flags); - - int (*add_key)(struct wiphy *wiphy, struct net_device *netdev, - u8 key_index, u8 *mac_addr, - struct key_params *params); - int (*get_key)(struct wiphy *wiphy, struct net_device *netdev, - u8 key_index, u8 *mac_addr, void *cookie, - void (*callback)(void *cookie, struct key_params*)); - int (*del_key)(struct wiphy *wiphy, struct net_device *netdev, - u8 key_index, u8 *mac_addr); - int (*set_default_key)(struct wiphy *wiphy, - struct net_device *netdev, - u8 key_index); - - int (*add_beacon)(struct wiphy *wiphy, struct net_device *dev, - struct beacon_parameters *info); - int (*set_beacon)(struct wiphy *wiphy, struct net_device *dev, - struct beacon_parameters *info); - int (*del_beacon)(struct wiphy *wiphy, struct net_device *dev); - - - int (*add_station)(struct wiphy *wiphy, struct net_device *dev, - u8 *mac, struct station_parameters *params); - int (*del_station)(struct wiphy *wiphy, struct net_device *dev, - u8 *mac); - int (*change_station)(struct wiphy *wiphy, struct net_device *dev, - u8 *mac, struct station_parameters *params); - int (*get_station)(struct wiphy *wiphy, struct net_device *dev, - u8 *mac, struct station_stats *stats); -}; - -#endif /* __NET_CFG80211_H */ |