summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2011-04-29 16:41:35 +0000
committerJo-Philipp Wich <jow@openwrt.org>2011-04-29 16:41:35 +0000
commitae33c64a37c8a8d6dc1e38678e967f2e457bc33a (patch)
tree2423f4a1006fb83c06960f2170d2679ea0c608fb
parent8879c55bb39b31a03de5d798a436d73b30a011d6 (diff)
libiwinfo:
- don't assume madwifi and nl80211 backends if no backend given - only print intersection of group and unicast ciphers in crypto description - fix crypto detection on madwifi in client mode - bump pkg revision
-rw-r--r--contrib/package/iwinfo/Makefile4
-rw-r--r--contrib/package/iwinfo/src/Makefile2
-rw-r--r--contrib/package/iwinfo/src/iwinfo_lualib.c9
-rw-r--r--contrib/package/iwinfo/src/iwinfo_madwifi.c4
4 files changed, 12 insertions, 7 deletions
diff --git a/contrib/package/iwinfo/Makefile b/contrib/package/iwinfo/Makefile
index 278bdecb1..90d9bbaa0 100644
--- a/contrib/package/iwinfo/Makefile
+++ b/contrib/package/iwinfo/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2010 Jo-Philipp Wich <xm@subsignal.org>
+# Copyright (C) 2010-2011 Jo-Philipp Wich <xm@subsignal.org>
#
# This is free software, licensed under the GPL 2 license.
#
@@ -7,7 +7,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libiwinfo
-PKG_RELEASE:=13
+PKG_RELEASE:=14
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
diff --git a/contrib/package/iwinfo/src/Makefile b/contrib/package/iwinfo/src/Makefile
index 024582b0b..a7a7b9a58 100644
--- a/contrib/package/iwinfo/src/Makefile
+++ b/contrib/package/iwinfo/src/Makefile
@@ -1,4 +1,4 @@
-IWINFO_BACKENDS = $(if $(BACKENDS),$(BACKENDS),madwifi nl80211)
+IWINFO_BACKENDS = $(BACKENDS)
IWINFO_LDFLAGS = $(LDFLAGS) -shared -llua
IWINFO_CFLAGS = $(CFLAGS) -std=gnu99 -fstrict-aliasing
IWINFO_SO = iwinfo.so
diff --git a/contrib/package/iwinfo/src/iwinfo_lualib.c b/contrib/package/iwinfo/src/iwinfo_lualib.c
index b327d08d8..516b11fff 100644
--- a/contrib/package/iwinfo/src/iwinfo_lualib.c
+++ b/contrib/package/iwinfo/src/iwinfo_lualib.c
@@ -417,19 +417,22 @@ static char * iwinfo_crypto_desc(struct iwinfo_crypto_entry *c)
case 3:
sprintf(desc, "mixed WPA/WPA2 %s (%s)",
iwinfo_crypto_print_suites(c->auth_suites),
- iwinfo_crypto_print_ciphers(c->pair_ciphers));
+ iwinfo_crypto_print_ciphers(
+ c->pair_ciphers & c->group_ciphers));
break;
case 2:
sprintf(desc, "WPA2 %s (%s)",
iwinfo_crypto_print_suites(c->auth_suites),
- iwinfo_crypto_print_ciphers(c->pair_ciphers));
+ iwinfo_crypto_print_ciphers(
+ c->pair_ciphers & c->group_ciphers));
break;
case 1:
sprintf(desc, "WPA %s (%s)",
iwinfo_crypto_print_suites(c->auth_suites),
- iwinfo_crypto_print_ciphers(c->pair_ciphers));
+ iwinfo_crypto_print_ciphers(
+ c->pair_ciphers & c->group_ciphers));
break;
}
}
diff --git a/contrib/package/iwinfo/src/iwinfo_madwifi.c b/contrib/package/iwinfo/src/iwinfo_madwifi.c
index 59c42dbc9..54a77cd4d 100644
--- a/contrib/package/iwinfo/src/iwinfo_madwifi.c
+++ b/contrib/package/iwinfo/src/iwinfo_madwifi.c
@@ -560,9 +560,11 @@ int madwifi_get_encryption(const char *ifname, char *buf)
if( madwifi_wrq(&wrq, ifname, SIOCGIWENCODE, keybuf, sizeof(keybuf)) < 0 )
return -1;
+#if 0
/* Have any encryption? */
if( (wrq.u.data.flags & IW_ENCODE_DISABLED) || (wrq.u.data.length == 0) )
return 0;
+#endif
/* Save key len */
key_len = wrq.u.data.length;
@@ -628,7 +630,7 @@ int madwifi_get_encryption(const char *ifname, char *buf)
if( c->wpa_version && ciphers & (1 << IEEE80211_CIPHER_CKIP) )
c->pair_ciphers |= IWINFO_CIPHER_CKIP;
- if( ciphers & (1 << IEEE80211_CIPHER_WEP) )
+ if( !c->pair_ciphers && ciphers & (1 << IEEE80211_CIPHER_WEP) )
{
switch(key_len) {
case 13: