diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2012-03-05 17:52:46 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2012-03-05 17:52:46 +0000 |
commit | f399616db8ceb42d2998a9c413a4c3c012cbe135 (patch) | |
tree | b9510c3e31eeb7b217af44099e9e15492bae1f80 | |
parent | 102978693676067d36f7cd1f282dd6a802fe5dd4 (diff) | |
download | mtk-20170518-f399616db8ceb42d2998a9c413a4c3c012cbe135.zip mtk-20170518-f399616db8ceb42d2998a9c413a4c3c012cbe135.tar.gz mtk-20170518-f399616db8ceb42d2998a9c413a4c3c012cbe135.tar.bz2 |
iwinfo: fix integer overflow in assoclist rate reporting (#11073)
SVN-Revision: 30825
-rw-r--r-- | package/iwinfo/Makefile | 2 | ||||
-rw-r--r-- | package/iwinfo/src/include/iwinfo.h | 2 | ||||
-rw-r--r-- | package/iwinfo/src/iwinfo_cli.c | 3 |
3 files changed, 4 insertions, 3 deletions
diff --git a/package/iwinfo/Makefile b/package/iwinfo/Makefile index f74fe2f..db8a3da 100644 --- a/package/iwinfo/Makefile +++ b/package/iwinfo/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libiwinfo -PKG_RELEASE:=31 +PKG_RELEASE:=32 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) PKG_CONFIG_DEPENDS := \ diff --git a/package/iwinfo/src/include/iwinfo.h b/package/iwinfo/src/include/iwinfo.h index 9e78bab..868c10b 100644 --- a/package/iwinfo/src/include/iwinfo.h +++ b/package/iwinfo/src/include/iwinfo.h @@ -61,7 +61,7 @@ extern const char *IWINFO_OPMODE_NAMES[]; struct iwinfo_rate_entry { - uint16_t rate; + uint32_t rate; int8_t mcs; uint8_t is_40mhz:1; uint8_t is_short_gi:1; diff --git a/package/iwinfo/src/iwinfo_cli.c b/package/iwinfo/src/iwinfo_cli.c index 0fdb21e..7ec5aef 100644 --- a/package/iwinfo/src/iwinfo_cli.c +++ b/package/iwinfo/src/iwinfo_cli.c @@ -134,7 +134,8 @@ static char * format_rate(int rate) if (rate <= 0) snprintf(buf, sizeof(buf), "unknown"); else - snprintf(buf, sizeof(buf), "%.1f MBit/s", ((float)rate / 1000.0)); + snprintf(buf, sizeof(buf), "%d.%d MBit/s", + rate / 1000, (rate % 1000) / 100); return buf; } |