From ed1d776849fc3a30c6f0b9eb07c73e2e1ab59f21 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 12 Oct 2010 02:27:13 +0000 Subject: [PATCH] libiwinfo: ensure that country names are ascii, return txpower list even when no channel is set, bump version --- contrib/package/iwinfo/Makefile | 3 +-- contrib/package/iwinfo/src/iwinfo_lualib.c | 2 +- contrib/package/iwinfo/src/iwinfo_nl80211.c | 16 ++++++++-------- 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/contrib/package/iwinfo/Makefile b/contrib/package/iwinfo/Makefile index 0f2494550..82c548273 100644 --- a/contrib/package/iwinfo/Makefile +++ b/contrib/package/iwinfo/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libiwinfo -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) @@ -58,4 +58,3 @@ define Package/libiwinfo/install endef $(eval $(call BuildPackage,libiwinfo)) - diff --git a/contrib/package/iwinfo/src/iwinfo_lualib.c b/contrib/package/iwinfo/src/iwinfo_lualib.c index 29706e370..1377ffeb2 100644 --- a/contrib/package/iwinfo/src/iwinfo_lualib.c +++ b/contrib/package/iwinfo/src/iwinfo_lualib.c @@ -51,7 +51,7 @@ struct iwinfo_iso3166_label ISO3166_Names[] = { { 0x4248 /* BH */, "Bahrain" }, { 0x4249 /* BI */, "Burundi" }, { 0x424A /* BJ */, "Benin" }, - { 0x424C /* BL */, "Saint Barthélemy" }, + { 0x424C /* BL */, "Saint Barthelemy" }, { 0x424D /* BM */, "Bermuda" }, { 0x424E /* BN */, "Brunei Darussalam" }, { 0x424F /* BO */, "Bolivia" }, diff --git a/contrib/package/iwinfo/src/iwinfo_nl80211.c b/contrib/package/iwinfo/src/iwinfo_nl80211.c index 7f27e2533..7d2a96a6c 100644 --- a/contrib/package/iwinfo/src/iwinfo_nl80211.c +++ b/contrib/package/iwinfo/src/iwinfo_nl80211.c @@ -131,14 +131,14 @@ static int nl80211_msg_response(struct nl_msg *msg, void *arg) static void nl80211_free(struct nl80211_msg_conveyor *cv) { - if( cv && cv->cb ) - nl_cb_put(cv->cb); - - if( cv && cv->msg ) - nlmsg_free(cv->msg); - if( cv ) { + if( cv->cb ) + nl_cb_put(cv->cb); + + if( cv->msg ) + nlmsg_free(cv->msg); + cv->cb = NULL; cv->msg = NULL; } @@ -924,7 +924,7 @@ int nl80211_get_txpwrlist(const char *ifname, char *buf, int *len) }; if( nl80211_get_channel(ifname, &ch_cur) ) - return -1; + ch_cur = 0; req = nl80211_msg(ifname, NL80211_CMD_GET_WIPHY, 0); if( req ) @@ -947,7 +947,7 @@ int nl80211_get_txpwrlist(const char *ifname, char *buf, int *len) ch_cmp = nl80211_freq2channel( nla_get_u32(freqs[NL80211_FREQUENCY_ATTR_FREQ])); - if( (ch_cmp == ch_cur) && + if( (!ch_cur || (ch_cmp == ch_cur)) && freqs[NL80211_FREQUENCY_ATTR_MAX_TX_POWER] ) { dbm_max = (int)(0.01 * nla_get_u32( -- 2.25.1