[PATCH] ieee82011: Added ieee80211_tx_frame to convert generic 802.11 data frames, and callbacks
tree 40adc78b623ae70d56074934ec6334eb4f0ae6a5 parent db43d847bcebaa3df6414e26d0008eb21690e8cf author James Ketrenos <jketreno@linux.intel.com> 1124445938 -0500 committer James Ketrenos <jketreno@linux.intel.com> 1127313102 -0500 Added ieee80211_tx_frame to convert generic 802.11 data frames into txbs for transmission. Added several purpose specific callbacks (handle_assoc, handle_auth, etc.) which the driver can register with for being notified on reception of variouf frame elements. Signed-off-by: James Ketrenos <jketreno@linux.intel.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
This commit is contained in:

committed by
Jeff Garzik

parent
3cdd00c582
commit
3f552bbf86
@@ -769,6 +769,27 @@ struct ieee80211_device {
|
||||
int (*hard_start_xmit) (struct ieee80211_txb * txb,
|
||||
struct net_device * dev);
|
||||
int (*reset_port) (struct net_device * dev);
|
||||
int (*is_queue_full) (struct net_device * dev, int pri);
|
||||
|
||||
/* Typical STA methods */
|
||||
int (*handle_auth) (struct net_device * dev,
|
||||
struct ieee80211_auth * auth);
|
||||
int (*handle_disassoc) (struct net_device * dev,
|
||||
struct ieee80211_disassoc * assoc);
|
||||
int (*handle_beacon) (struct net_device * dev,
|
||||
struct ieee80211_beacon * beacon,
|
||||
struct ieee80211_network * network);
|
||||
int (*handle_probe_response) (struct net_device * dev,
|
||||
struct ieee80211_probe_response * resp,
|
||||
struct ieee80211_network * network);
|
||||
int (*handle_assoc_response) (struct net_device * dev,
|
||||
struct ieee80211_assoc_response * resp,
|
||||
struct ieee80211_network * network);
|
||||
|
||||
/* Typical AP methods */
|
||||
int (*handle_assoc_request) (struct net_device * dev);
|
||||
int (*handle_reassoc_request) (struct net_device * dev,
|
||||
struct ieee80211_reassoc_request * req);
|
||||
|
||||
/* This must be the last item so that it points to the data
|
||||
* allocated beyond this structure by alloc_ieee80211 */
|
||||
@@ -877,6 +898,8 @@ extern int ieee80211_set_encryption(struct ieee80211_device *ieee);
|
||||
/* ieee80211_tx.c */
|
||||
extern int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev);
|
||||
extern void ieee80211_txb_free(struct ieee80211_txb *);
|
||||
extern int ieee80211_tx_frame(struct ieee80211_device *ieee,
|
||||
struct ieee80211_hdr *frame, int len);
|
||||
|
||||
/* ieee80211_rx.c */
|
||||
extern int ieee80211_rx(struct ieee80211_device *ieee, struct sk_buff *skb,
|
||||
|
Reference in New Issue
Block a user