Hello community,
here is the log from the commit of package wireless-tools
checked in at Fri Aug 3 02:21:09 CEST 2007.
--------
--- wireless-tools/wireless-tools.changes 2007-06-13 13:02:14.000000000 +0200
+++ /mounts/work_src_done/STABLE/wireless-tools/wireless-tools.changes 2007-07-30 17:22:34.000000000 +0200
@@ -1,0 +2,12 @@
+Mon Jul 30 17:11:36 CEST 2007 - jg@suse.de
+
+- update to 29pre22, changes:
+ o --version output WE_MAX_VERSION instead of WE_VERSION [iwlib]
+ o Change iwstats dBm range to [-192;63] in iw_print_stats() [iwlib.c]
+ o Implement iwstats IW_QUAL_RCPI in iw_print_stats() [iwlib.c]
+ o LINUX_VERSION_CODE removed, only use GENERIC_HEADERS [iwlib.h]
+ o Fix OUI type check for WPA 1 IE [iwlist.c]
+- removed obsolete README.ipw3945
+- removed obsolete iwlib.patch
+
+-------------------------------------------------------------------
Old:
----
iwlib.patch
README.ipw3945
wireless_tools.29.pre21.tar.bz2
New:
----
wireless_tools.29.pre22.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wireless-tools.spec ++++++
--- /var/tmp/diff_new_pack.vv2431/_old 2007-08-03 02:20:42.000000000 +0200
+++ /var/tmp/diff_new_pack.vv2431/_new 2007-08-03 02:20:42.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package wireless-tools (Version 29pre21)
+# spec file for package wireless-tools (Version 29pre22)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -13,20 +13,18 @@
Name: wireless-tools
BuildRequires: openssl-devel
Summary: Tools for a wireless LAN
-Version: 29pre21
+Version: 29pre22
Release: 1
%define wlanng_version 0.2.5
-Group: Hardware/Other
-License: GNU Library General Public License v. 2.0 and 2.1 (LGPL), No license agreement found in package
+Group: Hardware/Wifi
+License: BSD 3-Clause, GPL v2 or later
BuildRoot: %{_tmppath}/%{name}-%{version}-build
URL: http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
Autoreqprov: on
-Source: wireless_tools.29.pre21.tar.bz2
+Source: wireless_tools.29.pre22.tar.bz2
Patch: wireless_tools.dif
-Patch1: iwlib.patch
Source2: suse-files.tar.gz
Source4: ipw2200.modprobe
-Source5: README.ipw3945
Source6: lwepgen.tar.bz2
%description
@@ -44,7 +42,6 @@
%setup6 -q -T -b 6 -n lwepgen
%setup -q -n wireless_tools.29
%patch
-%patch1 -p0
%build
make CFLAGS="$RPM_OPT_FLAGS"
@@ -70,7 +67,6 @@
echo "# disable ipw2100 on x86_64 (module broken)"
echo "install ipw2100 /bin/true" >> %{buildroot}/etc/modprobe.d/ipw2100
%endif
-cp -a %{SOURCE5} .
%clean
test -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != "/" && rm -rf $RPM_BUILD_ROOT
@@ -86,6 +82,15 @@
%doc CHANGELOG.h INSTALL PCMCIA.txt README*
%changelog
+* Mon Jul 30 2007 - jg@suse.de
+- update to 29pre22, changes:
+ o --version output WE_MAX_VERSION instead of WE_VERSION [iwlib]
+ o Change iwstats dBm range to [-192;63] in iw_print_stats() [iwlib.c]
+ o Implement iwstats IW_QUAL_RCPI in iw_print_stats() [iwlib.c]
+ o LINUX_VERSION_CODE removed, only use GENERIC_HEADERS [iwlib.h]
+ o Fix OUI type check for WPA 1 IE [iwlist.c]
+- removed obsolete README.ipw3945
+- removed obsolete iwlib.patch
* Wed Jun 13 2007 - ro@suse.de
- update to 29pre21, changes:
o Add largest bitrate in easy scan API [iwlib]
++++++ wireless_tools.29.pre21.tar.bz2 -> wireless_tools.29.pre22.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/wireless_tools.29/CHANGELOG.h new/wireless_tools.29/CHANGELOG.h
--- old/wireless_tools.29/CHANGELOG.h 2007-05-01 20:08:06.000000000 +0200
+++ new/wireless_tools.29/CHANGELOG.h 2007-06-30 02:11:27.000000000 +0200
@@ -729,6 +729,14 @@
* o Fix GENIE parsing os chipher/key_mngt [iwlist]
* (Bug reported by Guus Sliepen )
* o Compiler warning on DEBUG code [iwlist]
+ * ---
+ * o --version output WE_MAX_VERSION instead of WE_VERSION [iwlib]
+ * o Change iwstats dBm range to [-192;63] in iw_print_stats() [iwlib.c]
+ * o Implement iwstats IW_QUAL_RCPI in iw_print_stats() [iwlib.c]
+ * (Bug reported by Guus Sliepen )
+ * o LINUX_VERSION_CODE removed, only use GENERIC_HEADERS [iwlib.h]
+ * (Bug reported by Johan Danielsson )
+ * o Fix OUI type check for WPA 1 IE [iwlist.c]
*/
/* ----------------------------- TODO ----------------------------- */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/wireless_tools.29/iwgetid.c new/wireless_tools.29/iwgetid.c
--- old/wireless_tools.29/iwgetid.c 2006-02-14 01:41:38.000000000 +0100
+++ new/wireless_tools.29/iwgetid.c 2007-06-27 01:12:40.000000000 +0200
@@ -94,7 +94,7 @@
/* Get ESSID */
wrq.u.essid.pointer = (caddr_t) essid;
- wrq.u.essid.length = IW_ESSID_MAX_SIZE + 1;
+ wrq.u.essid.length = IW_ESSID_MAX_SIZE /* + 1 */;
wrq.u.essid.flags = 0;
if(iw_get_ext(skfd, ifname, SIOCGIWESSID, &wrq) < 0)
return(-1);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/wireless_tools.29/iwlib.c new/wireless_tools.29/iwlib.c
--- old/wireless_tools.29/iwlib.c 2007-04-20 01:33:57.000000000 +0200
+++ new/wireless_tools.29/iwlib.c 2007-06-30 01:43:31.000000000 +0200
@@ -444,7 +444,7 @@
if(toolname != NULL)
printf("%-8.16s Wireless-Tools version %d\n", toolname, WT_VERSION);
printf(" Compatible with Wireless Extension v11 to v%d.\n\n",
- WE_VERSION);
+ WE_MAX_VERSION);
/* Get version from kernel */
we_kernel_version = iw_get_kernel_we_version();
@@ -558,7 +558,7 @@
if(range->we_version_compiled > WE_MAX_VERSION)
{
fprintf(stderr, "Warning: Driver for device %s has been compiled with version %d\n", ifname, range->we_version_compiled);
- fprintf(stderr, "of Wireless Extension, while this program supports up to version %d.\n", WE_VERSION);
+ fprintf(stderr, "of Wireless Extension, while this program supports up to version %d.\n", WE_MAX_VERSION);
fprintf(stderr, "Some things may be broken...\n\n");
}
@@ -1360,7 +1360,9 @@
* Further, on 8 bits, 0x100 == 256 == 0.
*
* Relative/percent values are always encoded unsigned, between 0 and 255.
- * Absolute/dBm values are always encoded negative, between -255 and 0.
+ * Absolute/dBm values are always encoded between -192 and 63.
+ * (Note that up to version 28 of Wireless Tools, dBm used to be
+ * encoded always negative, between -256 and -1).
*
* How do we separate relative from absolute values ?
* The old way is to use the range to do that. As of WE-19, we have
@@ -1369,7 +1371,7 @@
* range struct only specify one bound of the value, we assume that
* the other bound is 0 (zero).
* For relative values, range is [0 ; range->max].
- * For absolute values, range is [range->max ; 0].
+ * For absolute values, range is [range->max ; 63].
*
* Let's take two example :
* 1) value is 75%. qual->value = 75 ; range->max_qual.value = 100
@@ -1383,7 +1385,8 @@
* The old way to detect dBm require both the range and a non-null
* level (which confuse the test). The new way can deal with level of 0
* because it does an explicit test on the flag. */
- if(has_range && ((qual->level != 0) || (qual->updated & IW_QUAL_DBM)))
+ if(has_range && ((qual->level != 0)
+ || (qual->updated & (IW_QUAL_DBM | IW_QUAL_RCPI))))
{
/* Deal with quality : always a relative value */
if(!(qual->updated & IW_QUAL_QUAL_INVALID))
@@ -1395,16 +1398,17 @@
buflen -= len;
}
- /* Check if the statistics are in dBm or relative */
- if((qual->updated & IW_QUAL_DBM)
- || (qual->level > range->max_qual.level))
+ /* Check if the statistics are in RCPI (IEEE 802.11k) */
+ if(qual->updated & IW_QUAL_RCPI)
{
- /* Deal with signal level in dBm (absolute power measurement) */
+ /* Deal with signal level in RCPI */
+ /* RCPI = int{(Power in dBm +110)*2} for 0dbm > Power > -110dBm */
if(!(qual->updated & IW_QUAL_LEVEL_INVALID))
{
- len = snprintf(buffer, buflen, "Signal level%c%d dBm ",
+ double rcpilevel = (qual->level / 2.0) - 110.0;
+ len = snprintf(buffer, buflen, "Signal level%c%g dBm ",
qual->updated & IW_QUAL_LEVEL_UPDATED ? '=' : ':',
- qual->level - 0x100);
+ rcpilevel);
buffer += len;
buflen -= len;
}
@@ -1412,29 +1416,63 @@
/* Deal with noise level in dBm (absolute power measurement) */
if(!(qual->updated & IW_QUAL_NOISE_INVALID))
{
- len = snprintf(buffer, buflen, "Noise level%c%d dBm",
+ double rcpinoise = (qual->noise / 2.0) - 110.0;
+ len = snprintf(buffer, buflen, "Noise level%c%g dBm",
qual->updated & IW_QUAL_NOISE_UPDATED ? '=' : ':',
- qual->noise - 0x100);
+ rcpinoise);
}
}
else
{
- /* Deal with signal level as relative value (0 -> max) */
- if(!(qual->updated & IW_QUAL_LEVEL_INVALID))
+ /* Check if the statistics are in dBm */
+ if((qual->updated & IW_QUAL_DBM)
+ || (qual->level > range->max_qual.level))
{
- len = snprintf(buffer, buflen, "Signal level%c%d/%d ",
- qual->updated & IW_QUAL_LEVEL_UPDATED ? '=' : ':',
- qual->level, range->max_qual.level);
- buffer += len;
- buflen -= len;
- }
+ /* Deal with signal level in dBm (absolute power measurement) */
+ if(!(qual->updated & IW_QUAL_LEVEL_INVALID))
+ {
+ int dblevel = qual->level;
+ /* Implement a range for dBm [-192; 63] */
+ if(qual->level >= 64)
+ dblevel -= 0x100;
+ len = snprintf(buffer, buflen, "Signal level%c%d dBm ",
+ qual->updated & IW_QUAL_LEVEL_UPDATED ? '=' : ':',
+ dblevel);
+ buffer += len;
+ buflen -= len;
+ }
- /* Deal with noise level as relative value (0 -> max) */
- if(!(qual->updated & IW_QUAL_NOISE_INVALID))
+ /* Deal with noise level in dBm (absolute power measurement) */
+ if(!(qual->updated & IW_QUAL_NOISE_INVALID))
+ {
+ int dbnoise = qual->noise;
+ /* Implement a range for dBm [-192; 63] */
+ if(qual->noise >= 64)
+ dbnoise -= 0x100;
+ len = snprintf(buffer, buflen, "Noise level%c%d dBm",
+ qual->updated & IW_QUAL_NOISE_UPDATED ? '=' : ':',
+ dbnoise);
+ }
+ }
+ else
{
- len = snprintf(buffer, buflen, "Noise level%c%d/%d",
- qual->updated & IW_QUAL_NOISE_UPDATED ? '=' : ':',
- qual->noise, range->max_qual.noise);
+ /* Deal with signal level as relative value (0 -> max) */
+ if(!(qual->updated & IW_QUAL_LEVEL_INVALID))
+ {
+ len = snprintf(buffer, buflen, "Signal level%c%d/%d ",
+ qual->updated & IW_QUAL_LEVEL_UPDATED ? '=' : ':',
+ qual->level, range->max_qual.level);
+ buffer += len;
+ buflen -= len;
+ }
+
+ /* Deal with noise level as relative value (0 -> max) */
+ if(!(qual->updated & IW_QUAL_NOISE_INVALID))
+ {
+ len = snprintf(buffer, buflen, "Noise level%c%d/%d",
+ qual->updated & IW_QUAL_NOISE_UPDATED ? '=' : ':',
+ qual->noise, range->max_qual.noise);
+ }
}
}
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/wireless_tools.29/iwlib.h new/wireless_tools.29/iwlib.h
--- old/wireless_tools.29/iwlib.h 2007-04-20 01:39:02.000000000 +0200
+++ new/wireless_tools.29/iwlib.h 2007-06-22 20:01:04.000000000 +0200
@@ -33,41 +33,17 @@
#include
/* This is our header selection. Try to hide the mess and the misery :-(
- * Don't look, you would go blind ;-) */
-
-#ifndef LINUX_VERSION_CODE
-#include
-#endif
-
-/* Kernel headers 2.4.X + Glibc 2.2 - Mandrake 8.0, Debian 2.3, RH 7.1
- * Kernel headers 2.2.X + Glibc 2.2 - Slackware 8.0 */
-#if defined(__GLIBC__) \
- && __GLIBC__ == 2 \
- && __GLIBC_MINOR__ >= 2 \
- && LINUX_VERSION_CODE >= KERNEL_VERSION(2,2,0)
-#define HEADERS_GENERIC
-
-/* Kernel headers 2.4.X + Glibc 2.1 - Debian 2.2 upgraded, RH 7.0
- * Kernel headers 2.2.X + Glibc 2.1 - Debian 2.2, RH 6.1 */
-#elif defined(__GLIBC__) \
- && __GLIBC__ == 2 \
- && __GLIBC_MINOR__ == 1 \
- && LINUX_VERSION_CODE >= KERNEL_VERSION(2,2,0)
-#define HEADERS_GENERIC
-#define HEADERS_KERNEL
-
-/* Unsupported combination */
-#else
-#error "Your kernel/libc combination is not supported"
-#endif
+ * Don't look, you would go blind ;-)
+ * Note : compatibility with *old* distributions has been removed,
+ * you will need Glibc 2.2 and older to compile (which means
+ * Mandrake 8.0, Debian 2.3, RH 7.1 or older).
+ */
-#ifdef HEADERS_GENERIC
-/* Proposed by Dr. Michael Rietz , 27.3.2 */
+/* Set of headers proposed by Dr. Michael Rietz , 27.3.2 */
#include /* For ARPHRD_ETHER */
#include /* For AF_INET & struct sockaddr */
#include /* For struct sockaddr_in */
#include
-#endif /* HEADERS_GENERIC */
/* Fixup to be able to include kernel includes in userspace.
* Basically, kill the sparse annotations... Jean II */
@@ -77,15 +53,9 @@
#include /* for "caddr_t" et al */
-#ifdef HEADERS_KERNEL
-/* Traditionally we have used kernel headers, included in wireless.h */
-#include /* for "struct sockaddr" et al */
-#include /* for IFNAMSIZ and co... */
-#else /* !HEADERS_KERNEL */
/* Glibc systems headers are supposedly less problematic than kernel ones */
#include /* for "struct sockaddr" et al */
#include /* for IFNAMSIZ and co... */
-#endif /* !HEADERS_KERNEL */
/* Private copy of Wireless extensions (in this directoty) */
#include "wireless.h"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/wireless_tools.29/iwlist.c new/wireless_tools.29/iwlist.c
--- old/wireless_tools.29/iwlist.c 2007-05-01 20:01:47.000000000 +0200
+++ new/wireless_tools.29/iwlist.c 2007-06-23 01:34:55.000000000 +0200
@@ -277,15 +277,16 @@
wpa_oui = wpa1_oui;
/* Not all IEs that start with 0xdd are WPA.
- * So check that the OUI is valid. */
+ * So check that the OUI is valid. Note : offset==2 */
if((ielen < 8)
- || ((memcmp(&iebuf[offset], wpa_oui, 3) != 0)
- && (iebuf[offset+3] == 0x01)))
+ || (memcmp(&iebuf[offset], wpa_oui, 3) != 0)
+ || (iebuf[offset + 3] != 0x01))
{
iw_print_ie_unknown(iebuf, buflen);
return;
}
+ /* Skip the OUI type */
offset += 4;
break;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/wireless_tools.29/wireless.21.h new/wireless_tools.29/wireless.21.h
--- old/wireless_tools.29/wireless.21.h 2006-03-25 01:26:36.000000000 +0100
+++ new/wireless_tools.29/wireless.21.h 2007-06-30 01:04:24.000000000 +0200
@@ -462,6 +462,7 @@
#define IW_QUAL_QUAL_INVALID 0x10 /* Driver doesn't provide value */
#define IW_QUAL_LEVEL_INVALID 0x20
#define IW_QUAL_NOISE_INVALID 0x40
+#define IW_QUAL_RCPI 0x80 /* Level + Noise are 802.11k RCPI */
#define IW_QUAL_ALL_INVALID 0x70
/* Frequency flags */
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org