Skip to content

Commit

Permalink
[PATCH] ipw2200: use generic ieee80211_get_hdrlen() to get packet length
Browse files Browse the repository at this point in the history
replace ipw2200 specific frame_hdr_len() with generic
ieee80211 routine ieee80211_get_hdrlen()

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Zhu Yi authored and John W. Linville committed Mar 17, 2006
1 parent 85149ba commit 9d0be03
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 24 deletions.
3 changes: 2 additions & 1 deletion drivers/net/wireless/ipw2200.c
Original file line number Diff line number Diff line change
Expand Up @@ -7895,7 +7895,8 @@ static void ipw_rx(struct ipw_priv *priv)
le16_to_cpu(pkt->u.frame.length));

if (le16_to_cpu(pkt->u.frame.length) <
frame_hdr_len(header)) {
ieee80211_get_hdrlen(le16_to_cpu(
header->frame_ctl))) {
IPW_DEBUG_DROP
("Received packet is too small. "
"Dropping.\n");
Expand Down
23 changes: 0 additions & 23 deletions drivers/net/wireless/ipw2200.h
Original file line number Diff line number Diff line change
Expand Up @@ -1907,27 +1907,4 @@ struct ipw_cmd_log {

#define IPW_MAX_CONFIG_RETRIES 10

static inline u32 frame_hdr_len(struct ieee80211_hdr_4addr *hdr)
{
u32 retval;
u16 fc;

retval = sizeof(struct ieee80211_hdr_3addr);
fc = le16_to_cpu(hdr->frame_ctl);

/*
* Function ToDS FromDS
* IBSS 0 0
* To AP 1 0
* From AP 0 1
* WDS (bridge) 1 1
*
* Only WDS frames use Address4 among them. --YZ
*/
if (!(fc & IEEE80211_FCTL_TODS) || !(fc & IEEE80211_FCTL_FROMDS))
retval -= ETH_ALEN;

return retval;
}

#endif /* __ipw2200_h__ */

0 comments on commit 9d0be03

Please sign in to comment.