blob: 55077c92f0bc2728c08c7dde5958f76f82aadd9e [file] [log] [blame]
diff --git a/package/network/utils/wireless-tools/patches/006-fix-iwconfig-rate-print-format.patch b/package/network/utils/wireless-tools/patches/006-fix-iwconfig-rate-print-format.patch
new file mode 100644
index 0000000..62057bf
--- a/package/network/utils/wireless-tools/patches/006-fix-iwconfig-rate-print-format.patch
+++ b/package/network/utils/wireless-tools/patches/006-fix-iwconfig-rate-print-format.patch
@@ -0,0 +1,45 @@
+Index: wireless_tools.29/iwlib.c
+===================================================================
+--- wireless_tools.29.orig/iwlib.c 2007-06-30 07:43:31.000000000 +0800
++++ wireless_tools.29/iwlib.c 2020-09-25 15:35:01.105434143 +0800
+@@ -1129,7 +1129,7 @@ iw_channel_to_freq(int channel,
+ void
+ iw_print_bitrate(char * buffer,
+ int buflen,
+- int bitrate)
++ unsigned long long bitrate)
+ {
+ double rate = bitrate;
+ char scale;
+--- wireless_tools.29.orig/iwlib.h
++++ wireless_tools.29.orig/iwlib.h
+@@ -346,7 +346,7 @@ int
+ void
+ iw_print_bitrate(char * buffer,
+ int buflen,
+- int bitrate);
++ unsigned long long bitrate);
+ /* ---------------------- POWER SUBROUTINES ----------------------- */
+ int
+ iw_dbm2mwatt(int in);
+--- wireless_tools.29.orig/wireless.21.h
++++ wireless_tools.29.orig/wireless.21.h
+@@ -669,7 +669,7 @@
+ */
+ struct iw_param
+ {
+- __s32 value; /* The value of the parameter itself */
++ __u64 value; /* The value of the parameter itself */
+ __u8 fixed; /* Hardware should not use auto select */
+ __u8 disabled; /* Disable the feature */
+ __u16 flags; /* Various specifc flags (if any) */
+@@ -1005,7 +1005,7 @@ struct iw_range
+
+ /* Rates */
+ __u8 num_bitrates; /* Number of entries in the list */
+- __s32 bitrate[IW_MAX_BITRATES]; /* list, in bps */
++ __u64 bitrate[IW_MAX_BITRATES]; /* list, in bps */
+
+ /* RTS threshold */
+ __s32 min_rts; /* Minimal RTS threshold */
+