Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=743b84d2fc87cc19ca1c1cd2a821225caba862b0
Commit:     743b84d2fc87cc19ca1c1cd2a821225caba862b0
Parent:     7698d6977a62bbc6ed3b9d0d0230f2213a3b2f9d
Author:     Al Viro <[EMAIL PROTECTED]>
AuthorDate: Thu Dec 27 01:43:16 2007 -0500
Committer:  David S. Miller <[EMAIL PROTECTED]>
CommitDate: Mon Jan 28 15:08:56 2008 -0800

    ipw2200 fix: struct ieee80211_radiotap_header is little-endian
    
    some places in driver forget conversions
    
    Signed-off-by: Al Viro <[EMAIL PROTECTED]>
    Signed-off-by: John W. Linville <[EMAIL PROTECTED]>
---
 drivers/net/wireless/ipw2200.c |   18 +++++++++---------
 1 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c
index 97a6ff5..5f4d39c 100644
--- a/drivers/net/wireless/ipw2200.c
+++ b/drivers/net/wireless/ipw2200.c
@@ -7759,11 +7759,11 @@ static void ipw_handle_data_packet_monitor(struct 
ipw_priv *priv,
 
        ipw_rt->rt_hdr.it_version = PKTHDR_RADIOTAP_VERSION;
        ipw_rt->rt_hdr.it_pad = 0;      /* always good to zero */
-       ipw_rt->rt_hdr.it_len = sizeof(struct ipw_rt_hdr);      /* total 
header+data */
+       ipw_rt->rt_hdr.it_len = cpu_to_le16(sizeof(struct ipw_rt_hdr)); /* 
total header+data */
 
        /* Big bitfield of all the fields we provide in radiotap */
-       ipw_rt->rt_hdr.it_present =
-           ((1 << IEEE80211_RADIOTAP_TSFT) |
+       ipw_rt->rt_hdr.it_present = cpu_to_le32(
+            (1 << IEEE80211_RADIOTAP_TSFT) |
             (1 << IEEE80211_RADIOTAP_FLAGS) |
             (1 << IEEE80211_RADIOTAP_RATE) |
             (1 << IEEE80211_RADIOTAP_CHANNEL) |
@@ -7973,14 +7973,14 @@ static void ipw_handle_promiscuous_rx(struct ipw_priv 
*priv,
 
        ipw_rt->rt_hdr.it_version = PKTHDR_RADIOTAP_VERSION;
        ipw_rt->rt_hdr.it_pad = 0;      /* always good to zero */
-       ipw_rt->rt_hdr.it_len = sizeof(*ipw_rt);        /* total header+data */
+       ipw_rt->rt_hdr.it_len = cpu_to_le16(sizeof(*ipw_rt));   /* total 
header+data */
 
        /* Set the size of the skb to the size of the frame */
-       skb_put(skb, ipw_rt->rt_hdr.it_len + len);
+       skb_put(skb, sizeof(*ipw_rt) + len);
 
        /* Big bitfield of all the fields we provide in radiotap */
-       ipw_rt->rt_hdr.it_present =
-           ((1 << IEEE80211_RADIOTAP_TSFT) |
+       ipw_rt->rt_hdr.it_present = cpu_to_le32(
+            (1 << IEEE80211_RADIOTAP_TSFT) |
             (1 << IEEE80211_RADIOTAP_FLAGS) |
             (1 << IEEE80211_RADIOTAP_RATE) |
             (1 << IEEE80211_RADIOTAP_CHANNEL) |
@@ -10436,7 +10436,7 @@ static void ipw_handle_promiscuous_tx(struct ipw_priv 
*priv,
                rt_hdr->it_version = PKTHDR_RADIOTAP_VERSION;
                rt_hdr->it_pad = 0;
                rt_hdr->it_present = 0; /* after all, it's just an idea */
-               rt_hdr->it_present |=  (1 << IEEE80211_RADIOTAP_CHANNEL);
+               rt_hdr->it_present |=  cpu_to_le32(1 << 
IEEE80211_RADIOTAP_CHANNEL);
 
                *(u16*)skb_put(dst, sizeof(u16)) = cpu_to_le16(
                        ieee80211chan2mhz(priv->channel));
@@ -10453,7 +10453,7 @@ static void ipw_handle_promiscuous_tx(struct ipw_priv 
*priv,
                                cpu_to_le16(IEEE80211_CHAN_OFDM |
                                 IEEE80211_CHAN_2GHZ);
 
-               rt_hdr->it_len = dst->len;
+               rt_hdr->it_len = cpu_to_le16(dst->len);
 
                skb_copy_from_linear_data(src, skb_put(dst, len), len);
 
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to