aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/cfg80211.h
diff options
context:
space:
mode:
authorMichael Wu <flamingice@sourmilk.net>2008-01-31 13:48:22 -0500
committerJohn W. Linville <linville@tuxdriver.com>2008-02-29 15:37:02 -0500
commit66f7ac50ed7cc5c19a62bc97e8f6e7891004a03a (patch)
tree92c4756ae29b64aee4a76a043fd46bb02472cfd9 /include/net/cfg80211.h
parente4c26add8893e40e6e809b8c1ebc81e37762af2b (diff)
nl80211: Add monitor interface configuration flags
This allows precise control over what a monitor interface shows. Signed-off-by: Michael Wu <flamingice@sourmilk.net> Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/net/cfg80211.h')
-rw-r--r--include/net/cfg80211.h24
1 files changed, 22 insertions, 2 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index bcc480b8892a..ab4caf63954f 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -163,6 +163,26 @@ struct station_stats {
163 u32 tx_bytes; 163 u32 tx_bytes;
164}; 164};
165 165
166/**
167 * enum monitor_flags - monitor flags
168 *
169 * Monitor interface configuration flags. Note that these must be the bits
170 * according to the nl80211 flags.
171 *
172 * @MONITOR_FLAG_FCSFAIL: pass frames with bad FCS
173 * @MONITOR_FLAG_PLCPFAIL: pass frames with bad PLCP
174 * @MONITOR_FLAG_CONTROL: pass control frames
175 * @MONITOR_FLAG_OTHER_BSS: disable BSSID filtering
176 * @MONITOR_FLAG_COOK_FRAMES: report frames after processing
177 */
178enum monitor_flags {
179 MONITOR_FLAG_FCSFAIL = 1<<NL80211_MNTR_FLAG_FCSFAIL,
180 MONITOR_FLAG_PLCPFAIL = 1<<NL80211_MNTR_FLAG_PLCPFAIL,
181 MONITOR_FLAG_CONTROL = 1<<NL80211_MNTR_FLAG_CONTROL,
182 MONITOR_FLAG_OTHER_BSS = 1<<NL80211_MNTR_FLAG_OTHER_BSS,
183 MONITOR_FLAG_COOK_FRAMES = 1<<NL80211_MNTR_FLAG_COOK_FRAMES,
184};
185
166/* from net/wireless.h */ 186/* from net/wireless.h */
167struct wiphy; 187struct wiphy;
168 188
@@ -213,10 +233,10 @@ struct wiphy;
213 */ 233 */
214struct cfg80211_ops { 234struct cfg80211_ops {
215 int (*add_virtual_intf)(struct wiphy *wiphy, char *name, 235 int (*add_virtual_intf)(struct wiphy *wiphy, char *name,
216 enum nl80211_iftype type); 236 enum nl80211_iftype type, u32 *flags);
217 int (*del_virtual_intf)(struct wiphy *wiphy, int ifindex); 237 int (*del_virtual_intf)(struct wiphy *wiphy, int ifindex);
218 int (*change_virtual_intf)(struct wiphy *wiphy, int ifindex, 238 int (*change_virtual_intf)(struct wiphy *wiphy, int ifindex,
219 enum nl80211_iftype type); 239 enum nl80211_iftype type, u32 *flags);
220 240
221 int (*add_key)(struct wiphy *wiphy, struct net_device *netdev, 241 int (*add_key)(struct wiphy *wiphy, struct net_device *netdev,
222 u8 key_index, u8 *mac_addr, 242 u8 key_index, u8 *mac_addr,