summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2010-10-12 02:27:13 +0000
committerJo-Philipp Wich <jow@openwrt.org>2010-10-12 02:27:13 +0000
commited1d776849fc3a30c6f0b9eb07c73e2e1ab59f21 (patch)
treeddb82c20bfbc57ceda36379e687745429c75d138
parent7c8824f0faf082f03037b554a4b57da863661fcb (diff)
libiwinfo: ensure that country names are ascii, return txpower list even when no channel is set, bump version
-rw-r--r--contrib/package/iwinfo/Makefile3
-rw-r--r--contrib/package/iwinfo/src/iwinfo_lualib.c2
-rw-r--r--contrib/package/iwinfo/src/iwinfo_nl80211.c16
3 files changed, 10 insertions, 11 deletions
diff --git a/contrib/package/iwinfo/Makefile b/contrib/package/iwinfo/Makefile
index 0f24945503..82c5482737 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 29706e3709..1377ffeb24 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 7f27e25338..7d2a96a6c1 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(