diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2011-02-05 18:20:48 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2011-02-05 18:20:48 +0000 |
commit | 59992443bc0bc57b9601940824cbe1f285be07b9 (patch) | |
tree | f58c594f99963c177b14d7ab31499a4763f6130e | |
parent | 8cd629e14820d30c3f4ecd981b35c58b99cf592d (diff) |
libiwinfo: fix integer overflow in dbm to mw conversion, also allow odd dbm numbers
-rw-r--r-- | contrib/package/iwinfo/src/iwinfo.h | 4 | ||||
-rw-r--r-- | contrib/package/iwinfo/src/iwinfo_nl80211.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/contrib/package/iwinfo/src/iwinfo.h b/contrib/package/iwinfo/src/iwinfo.h index a9889bd9f..aa2f8335a 100644 --- a/contrib/package/iwinfo/src/iwinfo.h +++ b/contrib/package/iwinfo/src/iwinfo.h @@ -64,8 +64,8 @@ struct iwinfo_assoclist_entry { }; struct iwinfo_txpwrlist_entry { - uint8_t dbm; - uint8_t mw; + uint8_t dbm; + uint16_t mw; }; struct iwinfo_freqlist_entry { diff --git a/contrib/package/iwinfo/src/iwinfo_nl80211.c b/contrib/package/iwinfo/src/iwinfo_nl80211.c index fa714e906..0f57d37f1 100644 --- a/contrib/package/iwinfo/src/iwinfo_nl80211.c +++ b/contrib/package/iwinfo/src/iwinfo_nl80211.c @@ -1170,7 +1170,7 @@ int nl80211_get_txpwrlist(const char *ifname, char *buf, int *len) { for( dbm_cur = 0, dbm_cnt = 0; dbm_cur < dbm_max; - dbm_cur += 2, dbm_cnt++ ) + dbm_cur++, dbm_cnt++ ) { entry.dbm = dbm_cur; entry.mw = iwinfo_dbm2mw(dbm_cur); |