aboutsummaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2007-12-18 20:03:32 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-28 17:59:50 -0500
commited1b6cc7f80f831e192704b05b9917f9cc37be15 (patch)
tree24a95282d3cb88c42b08a6ef1d6e9f02cce90c6e /include/net
parent62da92fb75c346b503bca765fd1337e08771c9fe (diff)
cfg80211/nl80211: add beacon settings
This adds the necessary API to cfg80211/nl80211 to allow changing beaconing settings. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r--include/net/cfg80211.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 3db7dfa53b6f..fc94852e967b 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -69,6 +69,26 @@ struct key_params {
69 u32 cipher; 69 u32 cipher;
70}; 70};
71 71
72/**
73 * struct beacon_parameters - beacon parameters
74 *
75 * Used to configure the beacon for an interface.
76 *
77 * @head: head portion of beacon (before TIM IE)
78 * or %NULL if not changed
79 * @tail: tail portion of beacon (after TIM IE)
80 * or %NULL if not changed
81 * @interval: beacon interval or zero if not changed
82 * @dtim_period: DTIM period or zero if not changed
83 * @head_len: length of @head
84 * @tail_len: length of @tail
85 */
86struct beacon_parameters {
87 u8 *head, *tail;
88 int interval, dtim_period;
89 int head_len, tail_len;
90};
91
72/* from net/wireless.h */ 92/* from net/wireless.h */
73struct wiphy; 93struct wiphy;
74 94
@@ -103,6 +123,13 @@ struct wiphy;
103 * and @key_index 123 * and @key_index
104 * 124 *
105 * @set_default_key: set the default key on an interface 125 * @set_default_key: set the default key on an interface
126 *
127 * @add_beacon: Add a beacon with given parameters, @head, @interval
128 * and @dtim_period will be valid, @tail is optional.
129 * @set_beacon: Change the beacon parameters for an access point mode
130 * interface. This should reject the call when no beacon has been
131 * configured.
132 * @del_beacon: Remove beacon configuration and stop sending the beacon.
106 */ 133 */
107struct cfg80211_ops { 134struct cfg80211_ops {
108 int (*add_virtual_intf)(struct wiphy *wiphy, char *name, 135 int (*add_virtual_intf)(struct wiphy *wiphy, char *name,
@@ -122,6 +149,12 @@ struct cfg80211_ops {
122 int (*set_default_key)(struct wiphy *wiphy, 149 int (*set_default_key)(struct wiphy *wiphy,
123 struct net_device *netdev, 150 struct net_device *netdev,
124 u8 key_index); 151 u8 key_index);
152
153 int (*add_beacon)(struct wiphy *wiphy, struct net_device *dev,
154 struct beacon_parameters *info);
155 int (*set_beacon)(struct wiphy *wiphy, struct net_device *dev,
156 struct beacon_parameters *info);
157 int (*del_beacon)(struct wiphy *wiphy, struct net_device *dev);
125}; 158};
126 159
127#endif /* __NET_CFG80211_H */ 160#endif /* __NET_CFG80211_H */