Added ieee80211_scan_age and wpa_eapol_fix patches from the ipw2100-devel mailing...
authorHenrik Brix Andersen <brix@gentoo.org>
Tue, 19 Oct 2004 07:11:42 +0000 (07:11 +0000)
committerHenrik Brix Andersen <brix@gentoo.org>
Tue, 19 Oct 2004 07:11:42 +0000 (07:11 +0000)
net-wireless/ipw2100/ChangeLog
net-wireless/ipw2100/Manifest
net-wireless/ipw2100/files/digest-ipw2100-0.56-r1 [new file with mode: 0644]
net-wireless/ipw2100/files/ipw2100-0.56-ieee80211_scan_age.2.patch [new file with mode: 0644]
net-wireless/ipw2100/files/ipw2100-0.56-wpa_eapol_fix.patch [new file with mode: 0644]
net-wireless/ipw2100/ipw2100-0.56-r1.ebuild [new file with mode: 0644]
net-wireless/ipw2100/ipw2100-0.56.ebuild

index 3f73d6f72b8bd1d62def5202e37e504daed4cf83..b68cc4f438b0fbedace9aa32197ba1afd296062c 100644 (file)
@@ -1,6 +1,15 @@
 # ChangeLog for net-wireless/ipw2100
 # Copyright 2000-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-wireless/ipw2100/ChangeLog,v 1.35 2004/10/19 06:59:47 brix Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/ipw2100/ChangeLog,v 1.36 2004/10/19 07:11:42 brix Exp $
+
+*ipw2100-0.56-r1 (19 Oct 2004)
+
+  19 Oct 2004; Henrik Brix Andersen <brix@gentoo.org>
+  +files/ipw2100-0.56-ieee80211_scan_age.2.patch,
+  +files/ipw2100-0.56-wpa_eapol_fix.patch, +ipw2100-0.56-r1.ebuild,
+  ipw2100-0.56.ebuild:
+  Added ieee80211_scan_age and wpa_eapol_fix patches from the ipw2100-devel
+  mailing list. Fixed typo in error message.
 
   19 Oct 2004; Henrik Brix Andersen <brix@gentoo.org> ipw2100-0.56.ebuild:
   Fixed CRYPTO_AES_586 error message.
index af598c309c1b58e53e579d37df29102df46871b0..fccc4d6daa3df8d8b13d764ad2b7a1f8938ad4b2 100644 (file)
@@ -1,17 +1,21 @@
 MD5 64df9f7be17c96b466f939076dcbeb98 ipw2100-0.55.ebuild 2949
 MD5 c4a97eb25e8d493065e9168268ddb856 ipw2100-0.54.ebuild 2772
 MD5 c25026014f8d853d84d6cdbb05d848ff ipw2100-0.55-r2.ebuild 3725
-MD5 3b0088bb819736e2942b67c9d79befeb ipw2100-0.56.ebuild 3861
-MD5 6c6e6cfaa62fab589c7fc285a3924e88 ChangeLog 7404
+MD5 ed4973d07fe7dbb59f0c08be55cd7981 ipw2100-0.56.ebuild 3868
+MD5 8874883a0b84d2c0dc51a6524038a0be ipw2100-0.56-r1.ebuild 3978
+MD5 d5175459b4b3521480596550c877d91c ChangeLog 7753
 MD5 8a68b74057e911e6804f77dc21959e80 metadata.xml 282
 MD5 78f6d8f071cd7615df4ad78abf3e55d0 ipw2100-0.44.ebuild 2305
 MD5 1396122738f1bdc3902e7dc6dde31776 ipw2100-0.55-r1.ebuild 3069
+MD5 65f9c3d1b61f2e64d1e47a5d876946e4 files/ipw2100-0.56-wpa_eapol_fix.patch 624
 MD5 b3a600a244bd8a64fd8ade3036a390e1 files/digest-ipw2100-0.55-r1 124
 MD5 feb0687b42df7addb26274578808b9aa files/digest-ipw2100-0.55-r2 193
+MD5 5fa9f803ddce8467b15e0397a8155057 files/digest-ipw2100-0.56-r1 195
 MD5 0a8c00c1860d7bb54686e647740f23d0 files/ipw2100-0.55-modparam-perm.patch 769
 MD5 1ce1888cb1dcbc65bc76ba8f3f7875b9 files/ipw2100-0.55_manual-disable.patch 2898
 MD5 5ccd21f930c68d8fd53afe3a87bcd56e files/digest-ipw2100-0.44 124
 MD5 674152317ec0021f718398ba7a213b0d files/digest-ipw2100-0.54 124
 MD5 b3a600a244bd8a64fd8ade3036a390e1 files/digest-ipw2100-0.55 124
 MD5 5fa9f803ddce8467b15e0397a8155057 files/digest-ipw2100-0.56 195
+MD5 aca6bf1c2d71e72adfc952d903c77f6b files/ipw2100-0.56-ieee80211_scan_age.2.patch 1718
 MD5 99cced47568e9cb3fd2e3ceaed896c88 files/hostap_crypt.h 1344
diff --git a/net-wireless/ipw2100/files/digest-ipw2100-0.56-r1 b/net-wireless/ipw2100/files/digest-ipw2100-0.56-r1
new file mode 100644 (file)
index 0000000..c33cf5b
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 96473874bb682e2701c4e8e6dd662a64 ipw2100-0.56.tgz 132854
+MD5 46aa75bcda1a00efa841f9707bbbd113 ipw2100-fw-1.3.tgz 248471
+MD5 8e0d061b2567361c76c3193aa342ec6f ipw2100-0.56-2.4-v1.patch.gz 8208
diff --git a/net-wireless/ipw2100/files/ipw2100-0.56-ieee80211_scan_age.2.patch b/net-wireless/ipw2100/files/ipw2100-0.56-ieee80211_scan_age.2.patch
new file mode 100644 (file)
index 0000000..64b1215
--- /dev/null
@@ -0,0 +1,46 @@
+Index: ieee80211_wx.c
+===================================================================
+RCS file: /usr/src/repository/wireless/ipw2100/ieee80211_wx.c,v
+retrieving revision 1.43
+retrieving revision 1.47
+diff -u -p -r1.43 -r1.47
+--- ieee80211_wx.c     7 Oct 2004 20:57:30 -0000       1.43
++++ ieee80211_wx.c     14 Oct 2004 18:21:12 -0000      1.47
+@@ -258,9 +258,17 @@ int ieee80211_wx_get_scan(struct ieee802
+       
+       list_for_each_entry(network, &ieee->network_list, list) {
+               i++;
+-/*            if (ieee->scan_age == 0 ||
+-              jiffies - network->last_scanned < ieee->scan_age) */
+-                      ev = ipw2100_translate_scan(ieee, ev, stop, network);
++              if (ieee->scan_age == 0 ||
++                  (jiffies - network->last_scanned) < ieee->scan_age) 
++                      ev = ipw2100_translate_scan(ieee, ev, stop, network);
++              else 
++                      IEEE80211_DEBUG_SCAN(
++                              "Not showing network '%s (" 
++                              MAC_FMT ")' due to age (%lums).\n",
++                              escape_essid(network->ssid, 
++                                           network->ssid_len),
++                              MAC_ARG(network->bssid),
++                              (jiffies - network->last_scanned) / (HZ / 100));
+       }
+ 
+       spin_unlock_irqrestore(&ieee->lock, flags);
+Index: ieee80211.h
+===================================================================
+RCS file: /usr/src/repository/wireless/ipw2100/ieee80211.h,v
+retrieving revision 1.53
+retrieving revision 1.55
+diff -u -p -r1.53 -r1.55
+--- ieee80211.h        13 Oct 2004 15:40:07 -0000      1.53
++++ ieee80211.h        14 Oct 2004 18:31:32 -0000      1.55
+@@ -594,7 +590,7 @@ enum ieee80211_state {
+       IEEE80211_SHUTDOWN
+ };
+ 
+-#define DEFAULT_MAX_SCAN_AGE (5 * HZ) 
++#define DEFAULT_MAX_SCAN_AGE (15 * HZ) 
+ #define DEFAULT_FTS 2342
+ #define MAC_FMT "%02x:%02x:%02x:%02x:%02x:%02x"
+ #define MAC_ARG(x) ((u8*)(x))[0],((u8*)(x))[1],((u8*)(x))[2],((u8*)(x))[3],((u8*)(x))[4],((u8*)(x))[5]
diff --git a/net-wireless/ipw2100/files/ipw2100-0.56-wpa_eapol_fix.patch b/net-wireless/ipw2100/files/ipw2100-0.56-wpa_eapol_fix.patch
new file mode 100644 (file)
index 0000000..82d03b2
--- /dev/null
@@ -0,0 +1,12 @@
+diff -urp ipw2100-0.56/ieee80211_tx.c ipw2100-0.56-wpa_eapol_fix/ieee80211_tx.c
+--- ipw2100-0.56/ieee80211_tx.c        2004-10-13 21:06:57.000000000 +0200
++++ ipw2100-0.56-wpa_eapol_fix/ieee80211_tx.c  2004-10-16 21:11:26.759132272 +0200
+@@ -274,7 +274,7 @@ struct ieee80211_txb *ieee80211_skb_to_t
+ #ifdef CONFIG_IEEE80211_CRYPT
+       crypt = ieee->crypt[ieee->tx_keyidx];
+ 
+-      encrypt = (ether_type != ETH_P_PAE && ieee->host_encrypt && crypt && crypt->ops);
++      encrypt = !(ether_type == ETH_P_PAE && ieee->ieee_802_1x) && ieee->host_encrypt && crypt && crypt->ops;
+ 
+ #ifdef CONFIG_IEEE80211_WPA
+       if (!encrypt && ieee->ieee_802_1x &&
diff --git a/net-wireless/ipw2100/ipw2100-0.56-r1.ebuild b/net-wireless/ipw2100/ipw2100-0.56-r1.ebuild
new file mode 100644 (file)
index 0000000..ffa5d5b
--- /dev/null
@@ -0,0 +1,144 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/ipw2100/ipw2100-0.56-r1.ebuild,v 1.1 2004/10/19 07:11:42 brix Exp $
+
+inherit kernel-mod eutils
+
+FW_VERSION="1.3"
+
+DESCRIPTION="Driver for the Intel PRO/Wireless 2100 3B miniPCI adapter"
+
+HOMEPAGE="http://ipw2100.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tgz
+               mirror://gentoo/${PN}-fw-${FW_VERSION}.tgz
+               mirror://gentoo/${P}-2.4-v1.patch.gz"
+
+LICENSE="GPL-2 ipw2100-fw"
+SLOT="0"
+KEYWORDS="~x86"
+
+IUSE=""
+DEPEND="!net-wireless/ipw2200
+               sys-apps/sed"
+RDEPEND=">=sys-apps/hotplug-20030805-r2
+               >=net-wireless/wireless-tools-27_pre23"
+
+src_unpack() {
+       if ! kernel-mod_configoption_present NET_RADIO
+       then
+               eerror ""
+               eerror "${P} requires support for Wireless LAN drivers (non-hamradio) &"
+               eerror "Wireless Extensions (CONFIG_NET_RADIO) in the kernel."
+               eerror ""
+               die "CONFIG_NET_RADIO support not detected."
+       fi
+
+       if ! kernel-mod_configoption_present CRYPTO_ARC4
+       then
+               eerror ""
+               eerror "${P} requires support for ARC4 cipher algorithm (CONFIG_CRYPTO_ARC4)"
+               eerror "in the kernel."
+               eerror ""
+               die "CONFIG_CRYPTO_ARC4 support not detected."
+       fi
+
+       if ! kernel-mod_configoption_present CRYPTO_MICHAEL_MIC
+       then
+               eerror ""
+               eerror "${P} requires support for Michael MIC keyed digest algorithm"
+               eerror "(CONFIG_CRYPTO_MICHAEL_MIC) in the kernel."
+               eerror ""
+               die "CONFIG_CRYPTO_MICHAEL_MIC support not detected."
+       fi
+
+       if ! kernel-mod_configoption_present CRYPTO_AES_586
+       then
+               eerror ""
+               eerror "${P} requires support for AES cipher algorithms (i586)"
+               eerror "(CONFIG_CRYPTO_AES_586) in the kernel."
+               eerror ""
+               die "CONFIG_CRYPTO_AES_586 support not detected."
+       fi
+
+       if ! kernel-mod_configoption_present FW_LOADER
+       then
+               eerror ""
+               eerror "${P} requires Hotplug firmware loading support (CONFIG_FW_LOADER)"
+               eerror "in the kernel."
+               eerror ""
+               die "CONFIG_FW_LOADER support not detected."
+       fi
+
+       if ! kernel-mod_configoption_present CRC32
+       then
+               eerror ""
+               eerror "${P} requires support for CRC32 functions (CONFIG_CRC32) in the"
+               eerror "kernel."
+               eerror ""
+               die "CONFIG_CRC32 support not detected."
+       fi
+
+       kernel-mod_check_modules_supported
+
+       unpack ${A}
+
+       if kernel-mod_is_2_4_kernel
+       then
+               cd ${S}
+               epatch ${WORKDIR}/${P}-2.4-v1.patch
+       fi
+
+       cd ${S}
+       epatch ${FILESDIR}/${P}-wpa_eapol_fix.patch
+       epatch ${FILESDIR}/${P}-ieee80211_scan_age.2.patch
+
+       einfo "Patching Makefile to enable WPA"
+       sed -i "s:^# CONFIG_IEEE80211_WPA=:CONFIG_IEEE80211_WPA=:" \
+               ${S}/Makefile
+
+       # let pkg_postinst() handle depmod
+       sed -i "s:/sbin/depmod -a::" ${S}/Makefile
+
+       kernel-mod_getversion
+
+       if [ ${KV_MINOR} -gt 5 ] && [ ${KV_PATCH} -gt 5 ]
+       then
+               sed -i 's:SUBDIRS=:M=:g' ${S}/Makefile
+       fi
+}
+
+src_compile() {
+       set_arch_to_kernel
+
+       emake KSRC=${ROOT}/usr/src/linux all || die
+}
+
+src_install() {
+       set_arch_to_kernel
+
+       emake KSRC=${ROOT}/usr/src/linux KMISC=${D}/lib/modules/${KV}/net install || die
+
+       set_arch_to_portage
+
+       dodoc ISSUES README.ipw2100 CHANGES LICENSE
+
+       insinto /lib/firmware
+       doins ${WORKDIR}/${PN}-${FW_VERSION}.fw
+       doins ${WORKDIR}/${PN}-${FW_VERSION}-p.fw
+       doins ${WORKDIR}/${PN}-${FW_VERSION}-i.fw
+       newins ${WORKDIR}/LICENSE ${PN}-${FW_VERSION}-LICENSE
+
+       # Create symbolic links for old (<=hotplug-20040920) firmware location
+       # See bug #65059
+       dodir /usr/lib/hotplug/firmware
+       dosym /lib/firmware/${PN}-${FW_VERSION}.fw      /usr/lib/hotplug/firmware/${PN}-${FW_VERSION}.fw
+       dosym /lib/firmware/${PN}-${FW_VERSION}-p.fw    /usr/lib/hotplug/firmware/${PN}-${FW_VERSION}-p.fw
+       dosym /lib/firmware/${PN}-${FW_VERSION}-i.fw    /usr/lib/hotplug/firmware/${PN}-${FW_VERSION}-i.fw
+       dosym /lib/firmware/${PN}-${FW_VERSION}-LICENSE /usr/lib/hotplug/firmware/${PN}-${FW_VERSION}-LICENSE
+}
+
+pkg_postinst() {
+       einfo "Checking kernel module dependencies"
+       test -r "${ROOT}/usr/src/linux/System.map" && \
+               depmod -ae -F "${ROOT}/usr/src/linux/System.map" -b "${ROOT}" -r ${KV}
+}
index 162d5c948f33afbf5572c6d946b6b10d7f25195b..11808e782828e834aae0db0d9a9b930c584a0d23 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2004 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-wireless/ipw2100/ipw2100-0.56.ebuild,v 1.2 2004/10/19 06:59:47 brix Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/ipw2100/ipw2100-0.56.ebuild,v 1.3 2004/10/19 07:11:42 brix Exp $
 
 inherit kernel-mod eutils
 
@@ -57,7 +57,7 @@ src_unpack() {
                eerror "${P} requires support for AES cipher algorithms (i586)"
                eerror "(CONFIG_CRYPTO_AES_586) in the kernel."
                eerror ""
-               die "CONFIG_AES_586 support not detected."
+               die "CONFIG_CRYPTO_AES_586 support not detected."
        fi
 
        if ! kernel-mod_configoption_present FW_LOADER