Add jwright's madwifi endian patch
[openwrt/svn-archive/archive.git] / openwrt / target / linux / package / madwifi / patches / 105-radiotap_endian_fix.patch
diff --git a/openwrt/target/linux/package/madwifi/patches/105-radiotap_endian_fix.patch b/openwrt/target/linux/package/madwifi/patches/105-radiotap_endian_fix.patch
new file mode 100644 (file)
index 0000000..ad3fca9
--- /dev/null
@@ -0,0 +1,21 @@
+diff -ruN madwifi-ng-r1451-20060212/net80211/ieee80211_monitor.c madwifi-ng-r1451-20060212-patch/net80211/ieee80211_monitor.c
+--- madwifi-ng-r1451-20060212/net80211/ieee80211_monitor.c     2006-02-01 15:07:11.000000000 -0500
++++ madwifi-ng-r1451-20060212-patch/net80211/ieee80211_monitor.c       2006-02-21 02:42:30.000000000 -0500
+@@ -296,7 +296,7 @@
+                                       sizeof(struct ath_tx_radiotap_header));
+                               memset(th, 0, sizeof(struct ath_tx_radiotap_header));
+                               th->wt_ihdr.it_version = 0;
+-                              th->wt_ihdr.it_len = sizeof(struct ath_tx_radiotap_header);
++                              th->wt_ihdr.it_len = __constant_cpu_to_le16(sizeof(struct ath_tx_radiotap_header));
+                               th->wt_ihdr.it_present = ATH_TX_RADIOTAP_PRESENT;
+                               th->wt_flags = 0;
+                               th->wt_rate = rate;
+@@ -315,7 +315,7 @@
+                                       sizeof(struct ath_rx_radiotap_header));
+                               memset(th, 0, sizeof(struct ath_rx_radiotap_header));
+                               th->wr_ihdr.it_version = 0;
+-                              th->wr_ihdr.it_len = sizeof(struct ath_rx_radiotap_header);
++                              th->wr_ihdr.it_len = __constant_cpu_to_le16(sizeof(struct ath_tx_radiotap_header));
+                               th->wr_ihdr.it_present = ATH_RX_RADIOTAP_PRESENT;
+                               th->wr_flags = 0;
+                               th->wr_rate = rate;