summaryrefslogtreecommitdiff
path: root/net-wireless
diff options
context:
space:
mode:
Diffstat (limited to 'net-wireless')
-rw-r--r--net-wireless/Manifest.gzbin14920 -> 14920 bytes
-rw-r--r--net-wireless/aircrack-ng/Manifest7
-rw-r--r--net-wireless/aircrack-ng/aircrack-ng-1.2.ebuild131
-rw-r--r--net-wireless/aircrack-ng/aircrack-ng-1.2_rc1-r1.ebuild4
-rw-r--r--net-wireless/aircrack-ng/aircrack-ng-9999.ebuild38
-rw-r--r--net-wireless/aircrack-ng/files/aircrack-ng-1.2-no-force-stack-protector.patch50
-rw-r--r--net-wireless/hostapd/Manifest4
-rw-r--r--net-wireless/hostapd/files/hostapd-2.6-libressl-compatibility.patch106
-rw-r--r--net-wireless/hostapd/hostapd-2.6-r3.ebuild240
-rw-r--r--net-wireless/hostapd/metadata.xml4
-rw-r--r--net-wireless/kismet/Manifest2
-rw-r--r--net-wireless/kismet/kismet-9999.ebuild26
-rw-r--r--net-wireless/reaver/Manifest2
-rw-r--r--net-wireless/reaver/reaver-1.4-r3.ebuild5
-rw-r--r--net-wireless/wpa_supplicant/Manifest6
-rw-r--r--net-wireless/wpa_supplicant/files/wpa_supplicant-2.6-libressl-compatibility.patch106
-rw-r--r--net-wireless/wpa_supplicant/files/wpa_supplicant-conf.d6
-rw-r--r--net-wireless/wpa_supplicant/wpa_supplicant-2.6-r5.ebuild (renamed from net-wireless/wpa_supplicant/wpa_supplicant-2.6-r4.ebuild)7
-rw-r--r--net-wireless/wpa_supplicant/wpa_supplicant-2.6-r6.ebuild436
19 files changed, 1139 insertions, 41 deletions
diff --git a/net-wireless/Manifest.gz b/net-wireless/Manifest.gz
index a23fa0a2365c..cb1afa3a1169 100644
--- a/net-wireless/Manifest.gz
+++ b/net-wireless/Manifest.gz
Binary files differ
diff --git a/net-wireless/aircrack-ng/Manifest b/net-wireless/aircrack-ng/Manifest
index 0489793091ca..2047815317e1 100644
--- a/net-wireless/aircrack-ng/Manifest
+++ b/net-wireless/aircrack-ng/Manifest
@@ -1,7 +1,10 @@
+AUX aircrack-ng-1.2-no-force-stack-protector.patch 2245 BLAKE2B a7f200711a4e24cc92d4626d24c62abe11a2d378e8876a801a516aa2023b7aa7566c868e890186cebf9dacecc59037b23c39380b1b435b0f0985a02f939ccfec SHA512 35e5f717bc3b90507a879bbd4ffd3bb88c7bc98676abac1241cbc50dbb1bcf2c53e5c45514b643d7ad7d86d0b74e662803de155ae6bbf430a1fdb32e50682068
AUX aircrack-ng-1.2_rc4-openssl.patch 1227 BLAKE2B ac474222d14a25d6ea4f95c313f0f660940cdacd0ed4295e869a91a81f30284a669fd1e49959d1f6c7fd0c015cbc93464181b3e79571751d400400323b276934 SHA512 142542996e83f729bf8c7e77ac0d4be428b60368c7c005c2dda6c7fe7d45cbe029381523059566a35f1c8d748c0aaf9e46086cbf9ce429f22b2c61ae78a6ba1c
DIST aircrack-ng-1.2-rc1.tar.gz 2046476 BLAKE2B aec848a3dedae564cc29fc94475d0dec9cfb33af5185a4bceb9f88c1a3cce7a910439405fd76390ca352e52393b9094e570bf54980af27a50709a36ffab33752 SHA512 897427c535846c0ede58b2f99ed469bc01f50f9b38fc70d5711261fca7342339192cc0c71a724fc04c99114db7534d825a44f09e7bc5754286ec44933a33e40d
DIST aircrack-ng-1.2-rc4.tar.gz 4379880 BLAKE2B 8034e99a9a7117b0552ecd82603883661d7442970a24d26f4754122abd07cc661fbeb57519cecbefb6eea1fc0e8b0f228a116a04f07e1a7d2eb41ea4b5f6040b SHA512 f1e1d465813a5f00fd8f8b287353033ea30b657a4c3a9fe81281ab2546d3238690f0659076bff53703fbc796ba40efb16115804d21f8516adca2c774fefea20c
-EBUILD aircrack-ng-1.2_rc1-r1.ebuild 3521 BLAKE2B 724d68061af6609c80af9e0dc8f21220abe9d4539cbe72b003b3c49c110885eaa548ff69ffcd0a8cc7804567108052c110cea39e930c10f87b606369426edc81 SHA512 c4bfa17dd7021056958645e752fd67f030291c534d8bc712433a5eb5fd068bb52e96e0fe6385ab7006b7b28eb0279925cb57cf08cd20cbcaed6fbb56c20b5552
+DIST aircrack-ng-1.2.tar.gz 4517658 BLAKE2B 1a3d17608dafe69a7a500526807310bf9ae8f0f14ed4198d06fc1cd6287fa25aeed996bad85c82b9ed87c214951e2bbc73384513361b7e8ce6ba05ef32f6530c SHA512 efc8cd17994fd74dcdd60e4ff26f81dc4f090a368668c2b1d62e204d2a9c001f2614a9d2ad0e4ae0ae38fb71e1957e0342f8216d757e38db105b1e467de82bd9
+EBUILD aircrack-ng-1.2.ebuild 3179 BLAKE2B afccc183aff511d9cbe26c50580b7a9ca3d69d152980927fa9b66f8d7d0feff53142e65e986f64fe46ee5e989a05275f7ec2770478c914f04e451c938ba0ddec SHA512 fa5e63c1fca15ea1830d2ab2a566a65e05d684623ae6cab72f8aa0c3dd3923fd6d01baac519c55134dd05993d801caa93f6e9ce761b4ebe6c1ffc82941bc776a
+EBUILD aircrack-ng-1.2_rc1-r1.ebuild 3523 BLAKE2B eeda867b14d763a397287928b64217635a2b4b11250b98fc818ce0910c9fa9e30e68a78c02a741c79a653f6c9177d733caaae7e63748c20f29ebd6c4819f007f SHA512 151fec44861e17742ec7cbbbc7198eaf24f9cdd4ceee78902c248fced3ab6df49ed1da466b39f203201e9c9124b5e8b1042df75ef705a7024205c5276853a0d7
EBUILD aircrack-ng-1.2_rc4-r1.ebuild 2918 BLAKE2B f8f585175b7899e3e367875c23642a60a733118677c91daa68ea3087671cbdd3e853a02f48733080bcc3bf7c3040fb9777409a84e2275d1042b73733e03943b8 SHA512 2e396a16de545a0b39f38ffc243b35f041ecc1f4a62c1b2596a13d91793def3dbaba74a873ac635cbc684dec0c8ea21410ee35994ed3af0c00ed6a1d718ca33f
-EBUILD aircrack-ng-9999.ebuild 3118 BLAKE2B 204005fdb3e486910b83569322aa90d294db3d9c88295b20b0df96131685eac0292978649cee39ecdc31169ea48874baeefac9afaf31450777f8437c9d5f92c4 SHA512 3325740c8037945a7c6eec38d2f24a17e896efc49be3ac03ca97ff7e6b154709dda23501d8d1db9407a2ca3e755248fa268c77b87bc45d80664043459123a526
+EBUILD aircrack-ng-9999.ebuild 3110 BLAKE2B 9ca03f75ab07f78157a6cf27014e83c45a3928d0d0a457993e5e86201a30b06cea11485d060cfd7597556dbe227a3ae4915aa0a8cc7a0ee8bde151cff49de848 SHA512 4904ffb8f45ff1e7c63fb033b77543db69b9813e8549a1ef0c4e70da268563058d6d076f51b463c26151f47105aeacf237e70df6f4e54304f13721e66ea9278a
MISC metadata.xml 1130 BLAKE2B 9d3c0463a4a1cf4360ce77c550a701a805cd3db5f06ee895aa8888180246d6b51970d23b74b723a241e09bb6dde426055ca8f1288afffa90e8e4abc7d9c4b92a SHA512 0ca935ebf651d221657fda9320fc8a8f8dbabd9d10fc4eebb8b301b63ca8f9316069bee16b2468d227ea5acf53a28747c8479eb776983334b9496d68fefa76ee
diff --git a/net-wireless/aircrack-ng/aircrack-ng-1.2.ebuild b/net-wireless/aircrack-ng/aircrack-ng-1.2.ebuild
new file mode 100644
index 000000000000..972e687e1ba3
--- /dev/null
+++ b/net-wireless/aircrack-ng/aircrack-ng-1.2.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+PYTHON_COMPAT=( python2_7 )
+DISTUTILS_OPTIONAL=1
+
+inherit toolchain-funcs distutils-r1 flag-o-matic autotools
+
+DESCRIPTION="WLAN tools for breaking 802.11 WEP/WPA keys"
+HOMEPAGE="http://www.aircrack-ng.org"
+
+if [[ ${PV} == "9999" ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/aircrack-ng/aircrack-ng.git"
+ KEYWORDS=""
+else
+ MY_PV=${PV/_/-}
+ SRC_URI="http://download.${PN}.org/${PN}-${MY_PV}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~ppc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+ S="${WORKDIR}/${PN}-${MY_PV}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+
+IUSE="+airdrop-ng +airgraph-ng kernel_linux kernel_FreeBSD +netlink +pcre +sqlite +experimental"
+
+DEPEND="net-libs/libpcap
+ dev-libs/openssl:0=
+ netlink? ( dev-libs/libnl:3 )
+ pcre? ( dev-libs/libpcre )
+ airdrop-ng? ( ${PYTHON_DEPS} )
+ airgraph-ng? ( ${PYTHON_DEPS} )
+ experimental? ( sys-libs/zlib )
+ sqlite? ( >=dev-db/sqlite-3.4 )"
+RDEPEND="${DEPEND}"
+PDEPEND="kernel_linux? (
+ net-wireless/iw
+ net-wireless/wireless-tools
+ sys-apps/ethtool
+ sys-apps/usbutils
+ sys-apps/pciutils )
+ sys-apps/hwids
+ airdrop-ng? ( net-wireless/lorcon[python,${PYTHON_USEDEP}] )"
+
+REQUIRED_USE="airdrop-ng? ( ${PYTHON_REQUIRED_USE} )
+ airgraph-ng? ( ${PYTHON_REQUIRED_USE} )"
+
+pkg_setup() {
+ MAKE_COMMON=(
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" \
+ LD="$(tc-getLD)" \
+ RANLIB="$(tc-getRANLIB)" \
+ DESTDIR="${ED}"
+ )
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/aircrack-ng-1.2-no-force-stack-protector.patch
+ eapply_user
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-asan \
+ $(use_enable netlink libnl) \
+ $(use_with experimental) \
+ $(use_with sqlite sqlite3) \
+ --enable-shared \
+ --disable-static \
+ --without-opt
+}
+
+src_compile() {
+ if [[ $($(tc-getCC) --version) == clang* ]] ; then
+ #https://bugs.gentoo.org/show_bug.cgi?id=472890
+ filter-flags -frecord-gcc-switches
+ fi
+
+ emake "${MAKE_COMMON[@]}"
+
+ if use airgraph-ng; then
+ cd "${S}/scripts/airgraph-ng"
+ distutils-r1_src_compile
+ fi
+ if use airdrop-ng; then
+ cd "${S}/scripts/airdrop-ng"
+ distutils-r1_src_compile
+ fi
+}
+
+src_test() {
+ emake "${MAKE_COMMON[@]}" check
+}
+
+src_install() {
+ einstalldocs
+ emake "${MAKE_COMMON[@]}" install
+
+ if use airgraph-ng; then
+ cd "${S}/scripts/airgraph-ng"
+ distutils-r1_src_install
+ fi
+ if use airdrop-ng; then
+ cd "${S}/scripts/airdrop-ng"
+ distutils-r1_src_install
+ fi
+
+ #we don't need aircrack-ng's oui updater, we have our own
+ rm "${ED}"/usr/sbin/airodump-ng-oui-update
+}
+
+pkg_postinst() {
+ # Message is (c) FreeBSD
+ # http://www.freebsd.org/cgi/cvsweb.cgi/ports/net-mgmt/aircrack-ng/files/pkg-message.in?rev=1.5
+ if use kernel_FreeBSD ; then
+ einfo "Contrary to Linux, it is not necessary to use airmon-ng to enable the monitor"
+ einfo "mode of your wireless card. So do not care about what the manpages say about"
+ einfo "airmon-ng, airodump-ng sets monitor mode automatically."
+ echo
+ einfo "To return from monitor mode, issue the following command:"
+ einfo " ifconfig \${INTERFACE} -mediaopt monitor"
+ einfo
+ einfo "For aireplay-ng you need FreeBSD >= 7.0."
+ fi
+}
diff --git a/net-wireless/aircrack-ng/aircrack-ng-1.2_rc1-r1.ebuild b/net-wireless/aircrack-ng/aircrack-ng-1.2_rc1-r1.ebuild
index 641bf307be13..ccdbd649e1e3 100644
--- a/net-wireless/aircrack-ng/aircrack-ng-1.2_rc1-r1.ebuild
+++ b/net-wireless/aircrack-ng/aircrack-ng-1.2_rc1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
@@ -29,7 +29,7 @@ SLOT="0"
IUSE="+airdrop-ng +airgraph-ng kernel_linux kernel_FreeBSD +netlink +pcre +sqlite +unstable"
DEPEND="net-libs/libpcap
- dev-libs/openssl
+ dev-libs/openssl:*
netlink? ( dev-libs/libnl:3 )
pcre? ( dev-libs/libpcre )
airdrop-ng? ( ${PYTHON_DEPS} )
diff --git a/net-wireless/aircrack-ng/aircrack-ng-9999.ebuild b/net-wireless/aircrack-ng/aircrack-ng-9999.ebuild
index 4410fcbb87aa..1d10edd8197a 100644
--- a/net-wireless/aircrack-ng/aircrack-ng-9999.ebuild
+++ b/net-wireless/aircrack-ng/aircrack-ng-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
@@ -6,16 +6,15 @@ EAPI="6"
PYTHON_COMPAT=( python2_7 )
DISTUTILS_OPTIONAL=1
-inherit toolchain-funcs distutils-r1 flag-o-matic
+inherit toolchain-funcs distutils-r1 flag-o-matic autotools
DESCRIPTION="WLAN tools for breaking 802.11 WEP/WPA keys"
HOMEPAGE="http://www.aircrack-ng.org"
if [[ ${PV} == "9999" ]] ; then
- inherit subversion
- ESVN_REPO_URI="http://svn.aircrack-ng.org/trunk"
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/aircrack-ng/aircrack-ng.git"
KEYWORDS=""
- S="${WORKDIR}/${PN}"
else
MY_PV=${PV/_/-}
SRC_URI="http://download.${PN}.org/${PN}-${MY_PV}.tar.gz"
@@ -36,8 +35,8 @@ DEPEND="net-libs/libpcap
airgraph-ng? ( ${PYTHON_DEPS} )
experimental? ( sys-libs/zlib )
sqlite? ( >=dev-db/sqlite-3.4 )"
-RDEPEND="${DEPEND}
- kernel_linux? (
+RDEPEND="${DEPEND}"
+PDEPEND="kernel_linux? (
net-wireless/iw
net-wireless/wireless-tools
sys-apps/ethtool
@@ -56,17 +55,26 @@ pkg_setup() {
AR="$(tc-getAR)" \
LD="$(tc-getLD)" \
RANLIB="$(tc-getRANLIB)" \
- libnl=$(usex netlink true false) \
- pcre=$(usex pcre true false) \
- sqlite=$(usex sqlite true false) \
- experimental=$(usex experimental true false)
- prefix="${ED}/usr" \
- )
- [[ ${PV} == "9999" ]] && MAKE_COMMON+=(
- liveflags=REVFLAGS=-D_REVISION="${ESVN_WC_REVISION}"
+ DESTDIR="${ED}"
)
}
+src_prepare() {
+ eapply_user
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-asan \
+ $(use_enable netlink libnl) \
+ $(use_with experimental) \
+ $(use_with sqlite sqlite3) \
+ --enable-shared \
+ --disable-static \
+ --without-opt
+}
+
src_compile() {
if [[ $($(tc-getCC) --version) == clang* ]] ; then
#https://bugs.gentoo.org/show_bug.cgi?id=472890
diff --git a/net-wireless/aircrack-ng/files/aircrack-ng-1.2-no-force-stack-protector.patch b/net-wireless/aircrack-ng/files/aircrack-ng-1.2-no-force-stack-protector.patch
new file mode 100644
index 000000000000..d4688b84d2ef
--- /dev/null
+++ b/net-wireless/aircrack-ng/files/aircrack-ng-1.2-no-force-stack-protector.patch
@@ -0,0 +1,50 @@
+From 58fe40daf3e082d9e63d689d795a3bbecf72fedb Mon Sep 17 00:00:00 2001
+From: Joseph Benden <joe@benden.us>
+Date: Mon, 16 Apr 2018 11:26:23 -0700
+Subject: [PATCH] autotools: The flag --without-opt should skip stack protector
+ flags. (#1864)
+
+---
+ build/m4/aircrack_ng_compiler.m4 | 28 ++++++++++++++++------------
+ 1 file changed, 16 insertions(+), 12 deletions(-)
+
+diff --git a/build/m4/aircrack_ng_compiler.m4 b/build/m4/aircrack_ng_compiler.m4
+index 0fb19726..8a973dbf 100644
+--- a/build/m4/aircrack_ng_compiler.m4
++++ b/build/m4/aircrack_ng_compiler.m4
+@@ -108,19 +108,23 @@ case "$ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor" in
+ CYGWIN*|MSYS*|cygwin*|msys*)
+ ;;
+ *)
+- AS_IF([test "x$gcc_over49" = "xno"], [
+- AS_IF([test "x$gcc_over41" = "xyes"], [
+- AX_CHECK_COMPILE_FLAG([-fstack-protector], [
+- AX_APPEND_FLAG(-fstack-protector, [opt_[]_AC_LANG_ABBREV[]flags])
+- ])
+- ], [])
+- ], [])
++ case $with_opt in
++ yes | "")
++ AS_IF([test "x$gcc_over49" = "xno"], [
++ AS_IF([test "x$gcc_over41" = "xyes"], [
++ AX_CHECK_COMPILE_FLAG([-fstack-protector], [
++ AX_APPEND_FLAG(-fstack-protector, [opt_[]_AC_LANG_ABBREV[]flags])
++ ])
++ ], [])
++ ], [])
+
+- AS_IF([test "x$gcc_over49" = "xyes"], [
+- AX_CHECK_COMPILE_FLAG([-fstack-protector-strong], [
+- AX_APPEND_FLAG(-fstack-protector-strong, [opt_[]_AC_LANG_ABBREV[]flags])
+- ])
+- ], [])
++ AS_IF([test "x$gcc_over49" = "xyes"], [
++ AX_CHECK_COMPILE_FLAG([-fstack-protector-strong], [
++ AX_APPEND_FLAG(-fstack-protector-strong, [opt_[]_AC_LANG_ABBREV[]flags])
++ ])
++ ], [])
++ ;;
++ esac
+ ;;
+ esac
+ ;;
diff --git a/net-wireless/hostapd/Manifest b/net-wireless/hostapd/Manifest
index 202307b6b263..25d502fc844b 100644
--- a/net-wireless/hostapd/Manifest
+++ b/net-wireless/hostapd/Manifest
@@ -5,10 +5,12 @@ AUX 2017-1/rebased-v2.6-0004-Prevent-installation-of-an-all-zero-TK.patch 2566 B
AUX 2017-1/rebased-v2.6-0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch 1949 BLAKE2B b78b50bf0cba2a5de4d1ac217ce898d4c59cba7693d5c26087012931c2578ede4b3046357fd78e0f03bcb90fdeff322de42c511efadb41209243b308dcdb8372 SHA512 8707a123cd78149dfee9f5bd791761ee1eca605ef96580167044c2339c896920cf0e030b184a5afa9e310f5755afb30bef8ebd4522fc52753f3fbd6acead2cdf
AUX 2017-1/rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch 4309 BLAKE2B 6164e0343d7e4bedcaf2be9c3800eeb146a564fffeb339d032706797c04f268ade0674e67c962653c2a124af5a8ff8d28004bbeba0f3e73b166dbed03cd9a355 SHA512 37d050b2e4a3598484912667d8b2705fbe84c5c562267f900d42b0c7b606fb1fed09ddca8b80e2131768baa8f3690aab6ba7a232dee6ff1e66150fdb8816c927
AUX 2017-1/rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch 2750 BLAKE2B 059da1df148c8db68c9fa6aa656e46da301ebe7de3e41ecd4675ca579ebf6f1a66395e852cd8b562743ba83a345d4860618ea11bd01304a3386867115867fb9f SHA512 fc84edd8b30305cc42053c872554098f3f077292ec980ed6a442f37884087ff2f055738fd55977ed792bef1887dcc8c4626586465d78dd0258edb83dcd50a65a
+AUX hostapd-2.6-libressl-compatibility.patch 3873 BLAKE2B 281029d49bd4267df5913aa87b2e70741def66646f6cfbf5cf163e88522ae5bb933be3ed0df971ff2872a25a36584409feb0d22acf8254f446421201026b1ce8 SHA512 61c4cfeb119a9bc7ab1d4f690c1af5bce2def7836212469011c277ad4d97ab601d2a1efca7dc7bea433d974a8820aed7740e2cf047a0c63734d8a71e3df14e45
AUX hostapd-conf.d 245 BLAKE2B 5a4315f10ab8fcfda662252bf31b53eb4d3c55fa258062f288d7baa2f83c65bcb4db4dd2ebff58bcdbf3fe5449452f8a0c24dd75a60d3387728f4d60d0c8a172 SHA512 f07a6cd209eca351b8545017c5f025282c3fdea838ca3df49e362571ded43973281ce4ff83984b1299db15ea9b5c21a42cbda91432220af9146bf034e2265c30
AUX hostapd-init.d 739 BLAKE2B 83c48748cf20c8ee7d1124d373ee565c724d4714bffc512629a1850be0bfe5e9430a7512b296e1441dcaa4b098a665a873948162c5edec60430bf69cc90c157c SHA512 ab364383da45403d7734be20e7486937ad0a6be25a56eb1ec03d131243270a143189b699becf6e9e14d30b02bb5d93cddde55e51908801f2e6830de53791ccc8
AUX hostapd.service 213 BLAKE2B 0141aace8e6f807611e423e70cce437a5ae38a5fee8af74a7284980a1c2f642f1e98d020f327dbe5591e9d68114f3ee966229fb6d8f5116fe7d9e2bd93bae7bd SHA512 4d1a1619c49ad0272f360d2c9d79f2fd30503786fe8f22dd3fc4abcc39176029fe907c79d22f168c100b0d7b4ac969b5f4b5815d5ebe6805db5881dda69eef29
DIST hostapd-2.6.tar.gz 1822341 BLAKE2B c0075ffcdb11237e11410d87329a7a71aae5e00481022e02faf03771d45a61410ff906ebffdeea03fdeab751ce85e5a5e191173883ee9f1c284e6bc00342a011 SHA512 e60baaa092786250b8de9935f5417c7626f5d749210cce9f83d776b65c19fc92a8141f41923389f05c16295d482a15ae8d8b744f4667425040c99e3c2f5b1bda
EBUILD hostapd-2.6-r1.ebuild 6372 BLAKE2B a3202c1e11ca7d9fc252c2f4a0d3cdbde3eb06818a566bba57890e47347e71cc9553213146793c11c586c403a9d5020b14234ab6b2fbe949c5fc48774fc3eea2 SHA512 fec5dabf5ac3d4103f46d538bc45b7bb07b43755505a255989b0845cb0773c4ed39fb85977a9d73b2966095b5bb39118b2a464ce9a16d9b8ecb9ea8e243f7c95
EBUILD hostapd-2.6-r2.ebuild 6453 BLAKE2B 3ea7ab9dbce47bf62a27953b5201318fc9f5eab8afa9d6d6e8a49aa58a6a4f412610956bd93485534eac57d41c851e53eac4965883bf1edf94895ee05554a7b5 SHA512 3b2196198d83b69f93e73ba62d8a939ef55cb2cb45abd62bc3e008d61b4b7e2f32e697546b1429d4147f651b5a09b5015ec62ece7d8e740b66f92c2fdd474c03
-MISC metadata.xml 795 BLAKE2B 2a8c749490a82b3d943cd2e23e3c6575d9b84ed7bda1cfcd2d984589501d3b469bba054a883542c40a10a4eb154fc58f7b103780ce90b15885dde211c75a5c6c SHA512 880dfc97358fee5a6e1782d5102e9c5cab8190cb4a78a3db042ee2b3997f6c8f82031bdfe3bc0112b4cc1ebabb1df93650dad9652c764970b8520f020dfd5bea
+EBUILD hostapd-2.6-r3.ebuild 6629 BLAKE2B 4a45445f2356b6bf4d8d2b697ddb0182bc428499ce735fa3b893c5b2fb1142c09909e265d1dbb5aacb81204f2498df91b5bd1c10ac11a7d793e818ea01638701 SHA512 307b4752734e6918eb134362e162cc9ad8ba81e61e4230e5d2a6f8e196ca26609ff467d3340d263602b3f983575b48cc45543661b2f53889c171a1b202071317
+MISC metadata.xml 903 BLAKE2B 5960b7c5cd15f094b332b376b8320da78b4a1cbf13d3726cd10feed091967f7678b4d54db20d8c5f7adaa60873fb53d7b4d09293d0b5cde30cbe3494ec1b407f SHA512 e801d5385292462651bdc1fe6f95378cd7d100b0e02eab2227c57149bedba51dc7e1ff4ad73a0a4cf8b5174af0c2ae158a19d6306a4a328c80c932ed488b82d2
diff --git a/net-wireless/hostapd/files/hostapd-2.6-libressl-compatibility.patch b/net-wireless/hostapd/files/hostapd-2.6-libressl-compatibility.patch
new file mode 100644
index 000000000000..025da58028da
--- /dev/null
+++ b/net-wireless/hostapd/files/hostapd-2.6-libressl-compatibility.patch
@@ -0,0 +1,106 @@
+diff --git a/src/crypto/crypto_openssl.c b/src/crypto/crypto_openssl.c
+index 19e0e2be8..6585c0245 100644
+--- a/src/crypto/crypto_openssl.c
++++ b/src/crypto/crypto_openssl.c
+@@ -33,7 +33,9 @@
+ #include "aes_wrap.h"
+ #include "crypto.h"
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ /* Compatibility wrappers for older versions. */
+
+ static HMAC_CTX * HMAC_CTX_new(void)
+@@ -79,7 +81,9 @@ static void EVP_MD_CTX_free(EVP_MD_CTX *ctx)
+
+ static BIGNUM * get_group5_prime(void)
+ {
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && \
++ !(defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ return BN_get_rfc3526_prime_1536(NULL);
+ #elif !defined(OPENSSL_IS_BORINGSSL)
+ return get_rfc3526_prime_1536(NULL);
+@@ -611,7 +615,9 @@ void crypto_cipher_deinit(struct crypto_cipher *ctx)
+
+ void * dh5_init(struct wpabuf **priv, struct wpabuf **publ)
+ {
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ DH *dh;
+ struct wpabuf *pubkey = NULL, *privkey = NULL;
+ size_t publen, privlen;
+@@ -712,7 +718,9 @@ err:
+
+ void * dh5_init_fixed(const struct wpabuf *priv, const struct wpabuf *publ)
+ {
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ DH *dh;
+
+ dh = DH_new();
+diff --git a/src/crypto/tls_openssl.c b/src/crypto/tls_openssl.c
+index 23ac64b48..91acc579d 100644
+--- a/src/crypto/tls_openssl.c
++++ b/src/crypto/tls_openssl.c
+@@ -59,7 +59,8 @@ typedef int stack_index_t;
+ #endif /* SSL_set_tlsext_status_type */
+
+ #if (OPENSSL_VERSION_NUMBER < 0x10100000L || \
+- defined(LIBRESSL_VERSION_NUMBER)) && \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)) && \
+ !defined(BORINGSSL_API_VERSION)
+ /*
+ * SSL_get_client_random() and SSL_get_server_random() were added in OpenSSL
+@@ -919,7 +920,9 @@ void * tls_init(const struct tls_config *conf)
+ }
+ #endif /* OPENSSL_FIPS */
+ #endif /* CONFIG_FIPS */
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ SSL_load_error_strings();
+ SSL_library_init();
+ #ifndef OPENSSL_NO_SHA256
+@@ -1043,7 +1046,9 @@ void tls_deinit(void *ssl_ctx)
+
+ tls_openssl_ref_count--;
+ if (tls_openssl_ref_count == 0) {
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ #ifndef OPENSSL_NO_ENGINE
+ ENGINE_cleanup();
+ #endif /* OPENSSL_NO_ENGINE */
+@@ -3105,7 +3110,9 @@ int tls_connection_get_random(void *ssl_ctx, struct tls_connection *conn,
+ #ifdef OPENSSL_NEED_EAP_FAST_PRF
+ static int openssl_get_keyblock_size(SSL *ssl)
+ {
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ const EVP_CIPHER *c;
+ const EVP_MD *h;
+ int md_size;
+@@ -4159,7 +4166,9 @@ static int tls_sess_sec_cb(SSL *s, void *secret, int *secret_len,
+ struct tls_connection *conn = arg;
+ int ret;
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ if (conn == NULL || conn->session_ticket_cb == NULL)
+ return 0;
+
diff --git a/net-wireless/hostapd/hostapd-2.6-r3.ebuild b/net-wireless/hostapd/hostapd-2.6-r3.ebuild
new file mode 100644
index 000000000000..9b9078e55589
--- /dev/null
+++ b/net-wireless/hostapd/hostapd-2.6-r3.ebuild
@@ -0,0 +1,240 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit toolchain-funcs eutils systemd savedconfig
+
+DESCRIPTION="IEEE 802.11 wireless LAN Host AP daemon"
+HOMEPAGE="http://hostap.epitest.fi"
+SRC_URI="http://hostap.epitest.fi/releases/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~mips ~ppc ~x86"
+IUSE="ipv6 libressl logwatch netlink sqlite +ssl +wps +crda"
+
+DEPEND="
+ ssl? (
+ !libressl? ( dev-libs/openssl:0=[-bindist] )
+ libressl? ( dev-libs/libressl:0= )
+ )
+ kernel_linux? (
+ dev-libs/libnl:3
+ crda? ( net-wireless/crda )
+ )
+ netlink? ( net-libs/libnfnetlink )
+ sqlite? ( >=dev-db/sqlite-3 )"
+
+RDEPEND="${DEPEND}"
+
+S="${S}/${PN}"
+
+src_prepare() {
+ # Allow users to apply patches to src/drivers for example,
+ # i.e. anything outside ${S}/${PN}
+ pushd ../ >/dev/null || die
+
+ # Add LibreSSL compatibility patch bug (#567262)
+ eapply "${FILESDIR}/${P}-libressl-compatibility.patch"
+
+ # https://w1.fi/security/2017-1/wpa-packet-number-reuse-with-replayed-messages.txt
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0004-Prevent-installation-of-an-all-zero-TK.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch"
+ default
+ popd >/dev/null || die
+
+ sed -i -e "s:/etc/hostapd:/etc/hostapd/hostapd:g" \
+ "${S}/hostapd.conf" || die
+
+}
+
+src_configure() {
+ local CONFIG="${S}/.config"
+
+ restore_config "${CONFIG}"
+ if [[ -f "${CONFIG}" ]]; then
+ default_src_configure
+ return 0
+ fi
+
+ # toolchain setup
+ echo "CC = $(tc-getCC)" > ${CONFIG}
+
+ # EAP authentication methods
+ echo "CONFIG_EAP=y" >> ${CONFIG}
+ echo "CONFIG_ERP=y" >> ${CONFIG}
+ echo "CONFIG_EAP_MD5=y" >> ${CONFIG}
+
+ if use ssl; then
+ # SSL authentication methods
+ echo "CONFIG_EAP_FAST=y" >> ${CONFIG}
+ echo "CONFIG_EAP_TLS=y" >> ${CONFIG}
+ echo "CONFIG_EAP_TTLS=y" >> ${CONFIG}
+ echo "CONFIG_EAP_MSCHAPV2=y" >> ${CONFIG}
+ echo "CONFIG_EAP_PEAP=y" >> ${CONFIG}
+ echo "CONFIG_TLSV11=y" >> ${CONFIG}
+ echo "CONFIG_TLSV12=y" >> ${CONFIG}
+ fi
+
+ if use wps; then
+ # Enable Wi-Fi Protected Setup
+ echo "CONFIG_WPS=y" >> ${CONFIG}
+ echo "CONFIG_WPS2=y" >> ${CONFIG}
+ echo "CONFIG_WPS_UPNP=y" >> ${CONFIG}
+ echo "CONFIG_WPS_NFC=y" >> ${CONFIG}
+ einfo "Enabling Wi-Fi Protected Setup support"
+ fi
+
+ echo "CONFIG_EAP_IKEV2=y" >> ${CONFIG}
+ echo "CONFIG_EAP_TNC=y" >> ${CONFIG}
+ echo "CONFIG_EAP_GTC=y" >> ${CONFIG}
+ echo "CONFIG_EAP_SIM=y" >> ${CONFIG}
+ echo "CONFIG_EAP_AKA=y" >> ${CONFIG}
+ echo "CONFIG_EAP_AKA_PRIME=y" >> ${CONFIG}
+ echo "CONFIG_EAP_EKE=y" >> ${CONFIG}
+ echo "CONFIG_EAP_PAX=y" >> ${CONFIG}
+ echo "CONFIG_EAP_PSK=y" >> ${CONFIG}
+ echo "CONFIG_EAP_SAKE=y" >> ${CONFIG}
+ echo "CONFIG_EAP_GPSK=y" >> ${CONFIG}
+ echo "CONFIG_EAP_GPSK_SHA256=y" >> ${CONFIG}
+ echo "CONFIG_EAP_PWD=y" >> ${CONFIG}
+
+ einfo "Enabling drivers: "
+
+ # drivers
+ echo "CONFIG_DRIVER_HOSTAP=y" >> ${CONFIG}
+ einfo " HostAP driver enabled"
+ echo "CONFIG_DRIVER_WIRED=y" >> ${CONFIG}
+ einfo " Wired driver enabled"
+ echo "CONFIG_DRIVER_PRISM54=y" >> ${CONFIG}
+ einfo " Prism54 driver enabled"
+ echo "CONFIG_DRIVER_NONE=y" >> ${CONFIG}
+ einfo " None driver enabled"
+
+ einfo " nl80211 driver enabled"
+ echo "CONFIG_DRIVER_NL80211=y" >> ${CONFIG}
+
+ # epoll
+ echo "CONFIG_ELOOP_EPOLL=y" >> ${CONFIG}
+
+ # misc
+ echo "CONFIG_DEBUG_FILE=y" >> ${CONFIG}
+ echo "CONFIG_PKCS12=y" >> ${CONFIG}
+ echo "CONFIG_RADIUS_SERVER=y" >> ${CONFIG}
+ echo "CONFIG_IAPP=y" >> ${CONFIG}
+ echo "CONFIG_IEEE80211R=y" >> ${CONFIG}
+ echo "CONFIG_IEEE80211W=y" >> ${CONFIG}
+ echo "CONFIG_IEEE80211N=y" >> ${CONFIG}
+ echo "CONFIG_IEEE80211AC=y" >> ${CONFIG}
+ echo "CONFIG_PEERKEY=y" >> ${CONFIG}
+ echo "CONFIG_RSN_PREAUTH=y" >> ${CONFIG}
+ echo "CONFIG_INTERWORKING=y" >> ${CONFIG}
+ echo "CONFIG_FULL_DYNAMIC_VLAN=y" >> ${CONFIG}
+ echo "CONFIG_HS20=y" >> ${CONFIG}
+ echo "CONFIG_WNM=y" >> ${CONFIG}
+ echo "CONFIG_FST=y" >> ${CONFIG}
+ echo "CONFIG_FST_TEST=y" >> ${CONFIG}
+ echo "CONFIG_ACS=y" >> ${CONFIG}
+
+ if use netlink; then
+ # Netlink support
+ echo "CONFIG_VLAN_NETLINK=y" >> ${CONFIG}
+ fi
+
+ if use ipv6; then
+ # IPv6 support
+ echo "CONFIG_IPV6=y" >> ${CONFIG}
+ fi
+
+ if use sqlite; then
+ # Sqlite support
+ echo "CONFIG_SQLITE=y" >> ${CONFIG}
+ fi
+
+ # If we are using libnl 2.0 and above, enable support for it
+ # Removed for now, since the 3.2 version is broken, and we don't
+ # support it.
+ if has_version ">=dev-libs/libnl-3.2"; then
+ echo "CONFIG_LIBNL32=y" >> .config
+ fi
+
+ # TODO: Add support for BSD drivers
+
+ default_src_configure
+}
+
+src_compile() {
+ emake V=1
+
+ if use ssl; then
+ emake V=1 nt_password_hash
+ emake V=1 hlr_auc_gw
+ fi
+}
+
+src_install() {
+ insinto /etc/${PN}
+ doins ${PN}.{conf,accept,deny,eap_user,radius_clients,sim_db,wpa_psk}
+
+ fperms -R 600 /etc/${PN}
+
+ dosbin ${PN}
+ dobin ${PN}_cli
+
+ use ssl && dobin nt_password_hash hlr_auc_gw
+
+ newinitd "${FILESDIR}"/${PN}-init.d ${PN}
+ newconfd "${FILESDIR}"/${PN}-conf.d ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+
+ doman ${PN}{.8,_cli.1}
+
+ dodoc ChangeLog README
+ use wps && dodoc README-WPS
+
+ docinto examples
+ dodoc wired.conf
+
+ if use logwatch; then
+ insinto /etc/log.d/conf/services/
+ doins logwatch/${PN}.conf
+
+ exeinto /etc/log.d/scripts/services/
+ doexe logwatch/${PN}
+ fi
+
+ save_config .config
+}
+
+pkg_postinst() {
+ einfo
+ einfo "If you are running openRC you need to follow this instructions:"
+ einfo "In order to use ${PN} you need to set up your wireless card"
+ einfo "for master mode in /etc/conf.d/net and then start"
+ einfo "/etc/init.d/${PN}."
+ einfo
+ einfo "Example configuration:"
+ einfo
+ einfo "config_wlan0=( \"192.168.1.1/24\" )"
+ einfo "channel_wlan0=\"6\""
+ einfo "essid_wlan0=\"test\""
+ einfo "mode_wlan0=\"master\""
+ einfo
+ #if [ -e "${KV_DIR}"/net/mac80211 ]; then
+ # einfo "This package now compiles against the headers installed by"
+ # einfo "the kernel source for the mac80211 driver. You should "
+ # einfo "re-emerge ${PN} after upgrading your kernel source."
+ #fi
+
+ if use wps; then
+ einfo "You have enabled Wi-Fi Protected Setup support, please"
+ einfo "read the README-WPS file in /usr/share/doc/${P}"
+ einfo "for info on how to use WPS"
+ fi
+}
diff --git a/net-wireless/hostapd/metadata.xml b/net-wireless/hostapd/metadata.xml
index 1b21c81f5917..59217d505469 100644
--- a/net-wireless/hostapd/metadata.xml
+++ b/net-wireless/hostapd/metadata.xml
@@ -18,4 +18,8 @@
<email>andrey_utkin@gentoo.org</email>
<name>Andrey Utkin</name>
</maintainer>
+ <maintainer type="person">
+ <email>zerochaos@gentoo.org</email>
+ <name>Rick Farina</name>
+ </maintainer>
</pkgmetadata>
diff --git a/net-wireless/kismet/Manifest b/net-wireless/kismet/Manifest
index a6880a6e5617..5438d888427b 100644
--- a/net-wireless/kismet/Manifest
+++ b/net-wireless/kismet/Manifest
@@ -3,5 +3,5 @@ AUX kismet.confd 403 BLAKE2B 2c286c0731489fd069f6fd5e0bd2ff92d16bac89175ebeffcb4
AUX kismet.initd 629 BLAKE2B 5dd54d0f05c65d65682be73f15388e82dc45881d4704b04835e36f587956a0953d822557bb0baf685846a0d2bfd90db0995793f6d46a2adc5aa07dbc525df846 SHA512 864f79715b35595a19f370c2382c3a3383d06245cca7a65b88a35b9ceafb2f4953044e6b3c5c71748ed68d890043ab69a2c47d630c14c51542ba3f86699a11db
DIST kismet-2016-07-R1.tar.xz 709364 BLAKE2B 5b667a02b517bd413d569f40df1f2a2e1158357c602fa807d712870543a7fade25077f449c07c023ad1d2150870352aa754484846d8c2a0d9f027113bb57c1fc SHA512 88891a0cd5ef94a4815d259e433f946f52552c125e05a5d8ac447d04e6090f2bd92f8bd8573440f0dfe446b29233bef81d9889e53170757ad0116ddfc2cb8416
EBUILD kismet-2016.07.1-r1.ebuild 4190 BLAKE2B ef050f41fda06b2130d4483948d84bbf5a22b9197225f86a7ef1c20fcc05cc67b5dc94b85ca26b7b5c30c3afdd0645c7e1e8e2479305fdd967326eebe0d9685f SHA512 b0f441d0ac5082c4f2ffef6334934afd9e596e112b46349e0c7912c834e4d671f1986cfcd4a20387e00d5561dd926ebe0c2eb8ecbf9b27caff7b32e5c12c0255
-EBUILD kismet-9999.ebuild 4829 BLAKE2B 3672aedbaa2a4e420cdc52fa95858c59ac1d6a1031b4c1b739f3f477731ec45a9803766d03a85a257c0bcf92daf48faa0c2e3eb4e8a936b4c5ba3e95f7f5a9aa SHA512 a876b8afc036bcee7dca283c91df99d2363f2116667b8084c15f5f0676ee523dda55b97450eeb1cf8b401d82f8f28da1695c8dfb490fca10c41efac17a99fde7
+EBUILD kismet-9999.ebuild 4585 BLAKE2B fcdd532ba0f68b04a5375c3f6de965c3bea2faadbdebd00535864ddfd8fd7b9cde48cbcf37a6d81d81de740cc2630db5fc2399e9dbbe8d723b63d841377971ef SHA512 198e3ceff3a1243983ebf3536d2565304e674e3aae2333669cce1632b72ef81c3dbd9097770d876f0765c574f2a398f9d22ffb058b2c128c8e78b4e30aaf58d1
MISC metadata.xml 1159 BLAKE2B 2e72c1c62f31b52445c83b6b0d7695c7f1231de69fbe865e123a18dc0030a0f57586b058a7e738d561f48413e8a6ff0e8ac73428de2c41688e5baa1e4c255af1 SHA512 cf7c0f4c38f0a5e7b9c51c9fc98f5dd49e51159986443687a81d486c8805aea069168832f406a16b36dc6342be063fdbcade74685273fcdd2111ea9a616437d7
diff --git a/net-wireless/kismet/kismet-9999.ebuild b/net-wireless/kismet/kismet-9999.ebuild
index 0cd7c6acad68..2b1292aff57d 100644
--- a/net-wireless/kismet/kismet-9999.ebuild
+++ b/net-wireless/kismet/kismet-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -25,8 +25,7 @@ HOMEPAGE="http://www.kismetwireless.net/"
LICENSE="GPL-2"
SLOT="0/${PV}"
-#IUSE="+client +pcre speech +plugin-autowep +plugin-btscan plugin-dot15d4 +plugin-ptw +plugin-spectools +plugin-syslog selinux +suid"
-IUSE="+client +pcre speech selinux +suid"
+IUSE="+pcre speech selinux +suid"
CDEPEND="
net-misc/networkmanager:=
@@ -39,9 +38,10 @@ CDEPEND="
dev-libs/libnl:3
net-libs/libpcap
)
+ dev-libs/protobuf-c:=
+ sys-libs/ncurses:=
pcre? ( dev-libs/libpcre )
suid? ( sys-libs/libcap )
- client? ( sys-libs/ncurses:0= )
!arm? ( speech? ( app-accessibility/flite ) )
"
#plugin-btscan? ( net-wireless/bluez )
@@ -58,7 +58,7 @@ RDEPEND="${CDEPEND}
src_prepare() {
sed -i -e "s:^\(logtemplate\)=\(.*\):\1=/tmp/\2:" \
- conf/kismet.conf.in
+ conf/kismet_logging.conf || die
# Don't strip and set correct mangrp
sed -i -e 's| -s||g' \
@@ -70,8 +70,8 @@ src_prepare() {
src_configure() {
econf \
- $(use_enable client) \
- $(use_enable pcre)
+ $(use_enable pcre) \
+ --disable-python-tools
}
src_compile() {
@@ -159,14 +159,14 @@ src_install() {
pkg_preinst() {
if use suid; then
enewgroup kismet
- fowners root:kismet /usr/bin/kismet_capture_tools/kismet_cap_linux_bluetooth
- fowners root:kismet /usr/bin/kismet_capture_tools/kismet_cap_linux_wifi
- fowners root:kismet /usr/bin/kismet_capture_tools/kismet_cap_pcapfile
+ fowners root:kismet /usr/bin/kismet_cap_linux_bluetooth
+ fowners root:kismet /usr/bin/kismet_cap_linux_wifi
+ fowners root:kismet /usr/bin/kismet_cap_pcapfile
# Need to set the permissions after chowning.
# See chown(2)
- fperms 4550 /usr/bin/kismet_capture_tools/kismet_cap_linux_bluetooth
- fperms 4550 /usr/bin/kismet_capture_tools/kismet_cap_linux_wifi
- fperms 4550 /usr/bin/kismet_capture_tools/kismet_cap_pcapfile
+ fperms 4550 /usr/bin/kismet_cap_linux_bluetooth
+ fperms 4550 /usr/bin/kismet_cap_linux_wifi
+ fperms 4550 /usr/bin/kismet_cap_pcapfile
elog "Kismet has been installed with a setuid-root helper binary"
elog "to enable minimal-root operation. Users need to be part of"
elog "the 'kismet' group to perform captures from physical devices."
diff --git a/net-wireless/reaver/Manifest b/net-wireless/reaver/Manifest
index 9b43f8359512..b5e9a027b6c2 100644
--- a/net-wireless/reaver/Manifest
+++ b/net-wireless/reaver/Manifest
@@ -4,5 +4,5 @@ AUX reaver-1.4_parallel-make.patch 1074 BLAKE2B a4f36781138a2430a4830f9bda1a22d8
AUX reaver-1.4_var_db.patch 405 BLAKE2B 63a3fdcbd8ab6f640a0950c9d817cf281f9fc40dd6d6fa6abe37c3c99c036d4c806f1a9a063841fa969545e580d40e96ece15e7ef5e593a84cba71f3d34084ab SHA512 fa79135c59e25afaa254efb6029d1d87bbc2a00a778e4969b916b3cf428a784d61ba871048f297eba473af0ed4a0b1d56da00b045b69875711e127057d1d6efc
AUX reaver-1.4_wps_registrar.patch 422 BLAKE2B 978fa05e7ffd86e876866f63fcf48fe0ba81ae066fd6c849693570b89a1a90e6f090de2c207abcd733a7b6bdcae4ce0769859081b295e2602c32cfa905bfa474 SHA512 226f6748026f7d8662eb04089a4265ce6dec0cdaeb7e054de2108922c873270d88ccf86aeea6bd1ff03031c3b77ef6e276b4012fa0110447856cafa5a80a523d
DIST reaver-1.4.tar.gz 766603 BLAKE2B 4a488364718a17ec29c1d8da4bc7032b65e4597b89c2949e7108d625276e60d0b424f3b87a3d6baa30d5909ac206d6f7793f5e4514c307cc54784386ce5ce422 SHA512 59f2d6f8aa6228988ce5d1c102d9a48b2a23e582ff3d9afe39d7c9717b7e4be059362fdd21a3e5f5d59948df1a7616acdaa6df20f139e9c5aa9bd673f764dfbc
-EBUILD reaver-1.4-r3.ebuild 882 BLAKE2B 9dfe93ed606136dd7957aa7d46836751f03fe8f96f2ed425639af99b7e0eb5a636cac45afbc475cbc368a878e4ee07c40d7b8e07c6b8810e73bc2f669e1be1c4 SHA512 63b498c9578fa0d49dfef823fb5ba2ef7a02187fff778bf339fea4b08897e6d44b62d0fa9d3692b17c825c5dfae538dcbb5f400a13e9048d38ef46076f380fbd
+EBUILD reaver-1.4-r3.ebuild 964 BLAKE2B a00975cc61ca9a7cd605917ded7f980a7f394352e915194565d84ebd69185ed676640ceabdd46ad135148c21ed2d2019daa62129cc786ffb5a341ce4ae207a7e SHA512 fafceaf8cb57fde5d76c9044f982196932f2168b5706fe22f689b17e61db1c71c44995dd90d9b4e3eb920a4762b0b446c8d87aef6b5fb8185859680edf0157e3
MISC metadata.xml 461 BLAKE2B b23d4c4b8865ca1c58140486368ee2f4daa29d67af27cc5cce63c137d652c4d28b131140807735e9a5125790cc53629eeef074705278c5a550073d92c3447894 SHA512 503400e6ae36b1819015f51f0e5e01d7ba3c18c0133d625f3c35242dcaef5cd5ce72d57caf1b18892dee2865fcd1af1313f42140f360c249f2048874985d5d5d
diff --git a/net-wireless/reaver/reaver-1.4-r3.ebuild b/net-wireless/reaver/reaver-1.4-r3.ebuild
index 393abcd1a365..2769fa2548fc 100644
--- a/net-wireless/reaver/reaver-1.4-r3.ebuild
+++ b/net-wireless/reaver/reaver-1.4-r3.ebuild
@@ -33,6 +33,9 @@ PATCHES=(
src_compile() {
emake V=1
+
+ # doman accept only uncompressed files #619966
+ gzip -d ../docs/reaver.1.gz || die
}
src_install() {
@@ -41,6 +44,6 @@ src_install() {
insinto "/var/db/reaver"
doins reaver.db
- doman ../docs/reaver.1.gz
+ doman ../docs/reaver.1
dodoc ../docs/README ../docs/README.REAVER ../docs/README.WASH
}
diff --git a/net-wireless/wpa_supplicant/Manifest b/net-wireless/wpa_supplicant/Manifest
index c1eca51e5a5f..cd0d9c5b46c3 100644
--- a/net-wireless/wpa_supplicant/Manifest
+++ b/net-wireless/wpa_supplicant/Manifest
@@ -8,11 +8,13 @@ AUX 2017-1/rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-
AUX 2017-1/rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch 2750 BLAKE2B 059da1df148c8db68c9fa6aa656e46da301ebe7de3e41ecd4675ca579ebf6f1a66395e852cd8b562743ba83a345d4860618ea11bd01304a3386867115867fb9f SHA512 fc84edd8b30305cc42053c872554098f3f077292ec980ed6a442f37884087ff2f055738fd55977ed792bef1887dcc8c4626586465d78dd0258edb83dcd50a65a
AUX wpa_cli.sh 1284 BLAKE2B 50757aa432bf714923d0ff5e2e8357bf3126c82dcfebbc2c342325ad97e3ca95a15ea138f9a55e5a7b9ac86cb2518c173e7d5186d5feb3e57ac762a71b11ef85 SHA512 250372231eda6f7228fcf76b13fc1b95637d0d9dec96b7bef820bfa1af1496f218909f521daf2ddb2ca81d0ebb3162500f833575b64d8d2b4820c247499e1c56
AUX wpa_supplicant-2.6-do-not-call-dbus-functions-with-NULL-path.patch 486 BLAKE2B 877e15a45851331a1499cf8bc96fd514d88b6b270f54d52760e46cc7edbcc4b74a48a0271f0c93b546bb659203c56fdfba63b231757c21ca8ee6ade98406ac2e SHA512 dac56bc505a51167042ebe548f0e81a20a5578f753af9bb7ec3335a542d799c6e8739681ef7c8f7747a9bc954f8aa6f1a147250eacba17fd7fff80c4e53638ed
+AUX wpa_supplicant-2.6-libressl-compatibility.patch 3873 BLAKE2B 281029d49bd4267df5913aa87b2e70741def66646f6cfbf5cf163e88522ae5bb933be3ed0df971ff2872a25a36584409feb0d22acf8254f446421201026b1ce8 SHA512 61c4cfeb119a9bc7ab1d4f690c1af5bce2def7836212469011c277ad4d97ab601d2a1efca7dc7bea433d974a8820aed7740e2cf047a0c63734d8a71e3df14e45
AUX wpa_supplicant-2.6-libressl.patch 3003 BLAKE2B 49781bcb77e84912b8f46ec992da7c6b1b015cc793208e1f8afa6457991bcc1be130810d90671f0e53fa65dcebd4528c6e359f69a2576ee715317b796d31eec2 SHA512 2fb29ec14db2f33f8c011e1c2e98eef4d36b2e9f3b36f6058c390484ae5c64ad5d67aa25f138829503fabfac374bda24172871bdefef2a0566db963a5a362ec8
-AUX wpa_supplicant-conf.d 161 BLAKE2B 5fa719f155606c978c809bbffc3de20df0b0b77564c7673929d5597af044baf4937d7d18f73b4418c20942d73f9f7e9374a6958d03bde4033f0dd5a0c7cadb2c SHA512 29103161ec2b9631fca9e8d9a97fafd60ffac3fe78cf613b834395ddcaf8be1e253c22e060d7d9f9b974b2d7ce794caa932a2125e29f6494b75bce475f7b30e1
+AUX wpa_supplicant-conf.d 291 BLAKE2B 348e7d21fe01d2fdd2117adf22444557fa3d401f649489afd1636105cdddc29d58d45659c5368cc177f919ce94a7e2b5a9ed3fe8ddccd1fba3d059d270bae1a8 SHA512 6bbb9d4f6132b3d4e20cd65f27245ccadd60712ef5794261499f882057a930a393297e491d8147e04e30c0a53645af0eb3514332587118c19b5594f23f1d62ad
AUX wpa_supplicant-init.d 1250 BLAKE2B 159ebbd5a3552cbd8fdd6d48984c3a511e77cf1e140f56fc1d3e6b16454351a270e566dd7fc4717b92251193bdf59a77f57fc3fdd1d53b067f2e5253796c041b SHA512 f7439937a11d7a91eee98ab9e16a4853ce8e27395970007ae60ca9a8b1852fadc4a37ee0bf81d7e4806c545f70b139f26942ed1630db070abe8fe8e5ce752403
AUX wpa_supplicant.conf 183 BLAKE2B ea25d56f366783548b8d4bc14615d89d1c9cff1e6535992d14fa2f87a095b6c7226fbdf6b2d2ecd5fdcc13fb413fc56d5294f906c840ab3f9386c99ea69139fc SHA512 425a5c955d462ea0d0d3f79c3e1bbf68e15b495df04ad03ed7aee12408b52616af05650dfc147ca5940d69e97360c33995d33733820fef8eb8769b31e58434e8
DIST wpa_supplicant-2.6.tar.gz 2753524 BLAKE2B 99c61326c402f60b384fa6c9a7381e43d4d021d7e44537a6e05552909270f30997da91b690d8a30aa690f0d1ce0aed7798bd8bb8972fcf6830c282ccc91193ac SHA512 46442cddb6ca043b8b08d143908f149954c238e0f3a57a0df73ca4fab9c1acd91b078f3f26375a1d99cd1d65625986328018c735d8705882c8f91e389cad28a6
EBUILD wpa_supplicant-2.6-r3.ebuild 11044 BLAKE2B ec092b2d8c8094c19ce1e019642ff074cfcc8ab40045d394e01c219fad6cb306dd0c8e6e33879c33d950d95af5bb5e851a667030aad5cc1fe6c9b5aeb6d9fc7d SHA512 2e2b23824a0a073a44e7c40cf21bc06f797a34d8768ecd645aa0f7216c81e1f0425fb09129824b1d927166f0d6fce0f4cff87afd1f65214db4546d83031c1e62
-EBUILD wpa_supplicant-2.6-r4.ebuild 11720 BLAKE2B 06b407e4fa5553cae85819459e95738e2b28f29608fd7fd5397f4827d6555ce2772eb19f536e591ef02fa8866381fd2788e9a7100900717cfc7e52f99b7b30fd SHA512 cf71f35672063730780f901b923c3b489c075457d04602b85f7d90345bccf528793bf2d51aad5658fe29c64375017c01fa149a64854f533652cfc55c52340d44
+EBUILD wpa_supplicant-2.6-r5.ebuild 11782 BLAKE2B b74866e78cc82cb5e3600135052024c11b628371932b52634754fa578c6f31ed0d58f5ba2e980fdd7f1ddf50c92e721e538098af2270a9061c64ee5e902940fe SHA512 afd5fc95a798031f7ac84fb17737a113db720686d9ad304d2abfd56b4c16468fc446926594ff87b17438d2b9c39762865782de794019a780074df87f9479307e
+EBUILD wpa_supplicant-2.6-r6.ebuild 11805 BLAKE2B 8ae07d55f314e1500dc1f68c068551f16aac685ba7eb52313e9592be4071b5c591e4463409ada2964352be1d69f6af3b4d909eb55ba33dc7f5a858d2bf43b72e SHA512 591751ace8036d456fef927878cf0b6bcd9e2fd2fc155ac263260e642fd0d802bb64f83fea0307e140e17c2936f6d9ecc9a667e81e227d7c92c52a67991c1cfd
MISC metadata.xml 1321 BLAKE2B 803180e489eb69bc2992a1fb794e16aa897f7502904771653ca507e339eb211a15d805430a27ea8fd55e64ac23799ca70a65b33f4b35639e77d67f7dabe07d56 SHA512 bcc33ebea7348879a4dcaaaa7baeae3e316e5b75919b55310be1dc2dacac6a8e8d9993ac3481d3a790c12b5515f6fd3b1f778737b4c19ecf37eedc9c2e20a9ed
diff --git a/net-wireless/wpa_supplicant/files/wpa_supplicant-2.6-libressl-compatibility.patch b/net-wireless/wpa_supplicant/files/wpa_supplicant-2.6-libressl-compatibility.patch
new file mode 100644
index 000000000000..025da58028da
--- /dev/null
+++ b/net-wireless/wpa_supplicant/files/wpa_supplicant-2.6-libressl-compatibility.patch
@@ -0,0 +1,106 @@
+diff --git a/src/crypto/crypto_openssl.c b/src/crypto/crypto_openssl.c
+index 19e0e2be8..6585c0245 100644
+--- a/src/crypto/crypto_openssl.c
++++ b/src/crypto/crypto_openssl.c
+@@ -33,7 +33,9 @@
+ #include "aes_wrap.h"
+ #include "crypto.h"
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ /* Compatibility wrappers for older versions. */
+
+ static HMAC_CTX * HMAC_CTX_new(void)
+@@ -79,7 +81,9 @@ static void EVP_MD_CTX_free(EVP_MD_CTX *ctx)
+
+ static BIGNUM * get_group5_prime(void)
+ {
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && \
++ !(defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ return BN_get_rfc3526_prime_1536(NULL);
+ #elif !defined(OPENSSL_IS_BORINGSSL)
+ return get_rfc3526_prime_1536(NULL);
+@@ -611,7 +615,9 @@ void crypto_cipher_deinit(struct crypto_cipher *ctx)
+
+ void * dh5_init(struct wpabuf **priv, struct wpabuf **publ)
+ {
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ DH *dh;
+ struct wpabuf *pubkey = NULL, *privkey = NULL;
+ size_t publen, privlen;
+@@ -712,7 +718,9 @@ err:
+
+ void * dh5_init_fixed(const struct wpabuf *priv, const struct wpabuf *publ)
+ {
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ DH *dh;
+
+ dh = DH_new();
+diff --git a/src/crypto/tls_openssl.c b/src/crypto/tls_openssl.c
+index 23ac64b48..91acc579d 100644
+--- a/src/crypto/tls_openssl.c
++++ b/src/crypto/tls_openssl.c
+@@ -59,7 +59,8 @@ typedef int stack_index_t;
+ #endif /* SSL_set_tlsext_status_type */
+
+ #if (OPENSSL_VERSION_NUMBER < 0x10100000L || \
+- defined(LIBRESSL_VERSION_NUMBER)) && \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)) && \
+ !defined(BORINGSSL_API_VERSION)
+ /*
+ * SSL_get_client_random() and SSL_get_server_random() were added in OpenSSL
+@@ -919,7 +920,9 @@ void * tls_init(const struct tls_config *conf)
+ }
+ #endif /* OPENSSL_FIPS */
+ #endif /* CONFIG_FIPS */
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ SSL_load_error_strings();
+ SSL_library_init();
+ #ifndef OPENSSL_NO_SHA256
+@@ -1043,7 +1046,9 @@ void tls_deinit(void *ssl_ctx)
+
+ tls_openssl_ref_count--;
+ if (tls_openssl_ref_count == 0) {
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ #ifndef OPENSSL_NO_ENGINE
+ ENGINE_cleanup();
+ #endif /* OPENSSL_NO_ENGINE */
+@@ -3105,7 +3110,9 @@ int tls_connection_get_random(void *ssl_ctx, struct tls_connection *conn,
+ #ifdef OPENSSL_NEED_EAP_FAST_PRF
+ static int openssl_get_keyblock_size(SSL *ssl)
+ {
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ const EVP_CIPHER *c;
+ const EVP_MD *h;
+ int md_size;
+@@ -4159,7 +4166,9 @@ static int tls_sess_sec_cb(SSL *s, void *secret, int *secret_len,
+ struct tls_connection *conn = arg;
+ int ret;
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
++ (defined(LIBRESSL_VERSION_NUMBER) && \
++ LIBRESSL_VERSION_NUMBER < 0x20700000L)
+ if (conn == NULL || conn->session_ticket_cb == NULL)
+ return 0;
+
diff --git a/net-wireless/wpa_supplicant/files/wpa_supplicant-conf.d b/net-wireless/wpa_supplicant/files/wpa_supplicant-conf.d
index 104b9dc5d8c3..5381c8c748e2 100644
--- a/net-wireless/wpa_supplicant/files/wpa_supplicant-conf.d
+++ b/net-wireless/wpa_supplicant/files/wpa_supplicant-conf.d
@@ -1,5 +1,9 @@
# conf.d file for wpa_supplicant
-#
+
+# uncomment this if wpa_supplicant starts up before your network interface
+# is ready and it causes issues
+# rc_want="dev-settle"
+
# Please check man 8 wpa_supplicant for more information about the options
# wpa_supplicant accepts.
#
diff --git a/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r4.ebuild b/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r5.ebuild
index 02b2a20e35f8..db98a23c929a 100644
--- a/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r4.ebuild
+++ b/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r5.ebuild
@@ -13,7 +13,7 @@ LICENSE="|| ( GPL-2 BSD )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
IUSE="ap dbus eap-sim eapol_test fasteap gnutls +hs2-0 libressl p2p privsep ps3 qt5 readline selinux smartcard ssl tdls uncommon-eap-types wimax wps kernel_linux kernel_FreeBSD"
-REQUIRED_USE="fasteap? ( !ssl ) smartcard? ( ssl )"
+REQUIRED_USE="smartcard? ( ssl )"
CDEPEND="dbus? ( sys-apps/dbus )
kernel_linux? (
@@ -38,7 +38,7 @@ CDEPEND="dbus? ( sys-apps/dbus )
net-libs/gnutls:=
)
!gnutls? (
- !libressl? ( dev-libs/openssl:0= )
+ !libressl? ( >=dev-libs/openssl-1.0.2k:0= )
libressl? ( dev-libs/libressl:0= )
)
)
@@ -142,6 +142,9 @@ src_prepare() {
eapply "${FILESDIR}/2017-1/rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch"
eapply "${FILESDIR}/2017-1/rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch"
eapply "${FILESDIR}/2017-1/rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch"
+
+ # bug (640492)
+ sed -i 's#-Werror ##' wpa_supplicant/Makefile || die
}
src_configure() {
diff --git a/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r6.ebuild b/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r6.ebuild
new file mode 100644
index 000000000000..ad09f128b089
--- /dev/null
+++ b/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r6.ebuild
@@ -0,0 +1,436 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils qmake-utils systemd toolchain-funcs readme.gentoo-r1
+
+DESCRIPTION="IEEE 802.1X/WPA supplicant for secure wireless transfers"
+HOMEPAGE="https://w1.fi/wpa_supplicant/"
+SRC_URI="https://w1.fi/releases/${P}.tar.gz"
+LICENSE="|| ( GPL-2 BSD )"
+
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="ap dbus eap-sim eapol_test fasteap gnutls +hs2-0 libressl p2p privsep ps3 qt5 readline selinux smartcard ssl tdls uncommon-eap-types wimax wps kernel_linux kernel_FreeBSD"
+REQUIRED_USE="smartcard? ( ssl )"
+
+CDEPEND="dbus? ( sys-apps/dbus )
+ kernel_linux? (
+ dev-libs/libnl:3
+ net-wireless/crda
+ eap-sim? ( sys-apps/pcsc-lite )
+ )
+ !kernel_linux? ( net-libs/libpcap )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ )
+ readline? (
+ sys-libs/ncurses:0=
+ sys-libs/readline:0=
+ )
+ ssl? (
+ gnutls? (
+ dev-libs/libgcrypt:0=
+ net-libs/gnutls:=
+ )
+ !gnutls? (
+ !libressl? ( >=dev-libs/openssl-1.0.2k:0= )
+ libressl? ( dev-libs/libressl:0= )
+ )
+ )
+ !ssl? ( dev-libs/libtommath )
+"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-networkmanager )
+"
+
+DOC_CONTENTS="
+ If this is a clean installation of wpa_supplicant, you
+ have to create a configuration file named
+ ${EROOT%/}/etc/wpa_supplicant/wpa_supplicant.conf
+ An example configuration file is available for reference in
+ ${EROOT%/}/usr/share/doc/${PF}/
+"
+
+S="${WORKDIR}/${P}/${PN}"
+
+Kconfig_style_config() {
+ #param 1 is CONFIG_* item
+ #param 2 is what to set it = to, defaulting in y
+ CONFIG_PARAM="${CONFIG_HEADER:-CONFIG_}$1"
+ setting="${2:-y}"
+
+ if [ ! $setting = n ]; then
+ #first remove any leading "# " if $2 is not n
+ sed -i "/^# *$CONFIG_PARAM=/s/^# *//" .config || echo "Kconfig_style_config error uncommenting $CONFIG_PARAM"
+ #set item = $setting (defaulting to y)
+ sed -i "/^$CONFIG_PARAM/s/=.*/=$setting/" .config || echo "Kconfig_style_config error setting $CONFIG_PARAM=$setting"
+ if [ -z "$( grep ^$CONFIG_PARAM= .config )" ] ; then
+ echo "$CONFIG_PARAM=$setting" >>.config
+ fi
+ else
+ #ensure item commented out
+ sed -i "/^$CONFIG_PARAM/s/$CONFIG_PARAM/# $CONFIG_PARAM/" .config || echo "Kconfig_style_config error commenting $CONFIG_PARAM"
+ fi
+}
+
+pkg_setup() {
+ if use ssl ; then
+ if use gnutls && use libressl ; then
+ elog "You have both 'gnutls' and 'libressl' USE flags enabled: defaulting to USE=\"gnutls\""
+ fi
+ else
+ elog "You have 'ssl' USE flag disabled: defaulting to internal TLS implementation"
+ fi
+}
+
+src_prepare() {
+ default
+
+ # net/bpf.h needed for net-libs/libpcap on Gentoo/FreeBSD
+ sed -i \
+ -e "s:\(#include <pcap\.h>\):#include <net/bpf.h>\n\1:" \
+ ../src/l2_packet/l2_packet_freebsd.c || die
+
+ # People seem to take the example configuration file too literally (bug #102361)
+ sed -i \
+ -e "s:^\(opensc_engine_path\):#\1:" \
+ -e "s:^\(pkcs11_engine_path\):#\1:" \
+ -e "s:^\(pkcs11_module_path\):#\1:" \
+ wpa_supplicant.conf || die
+
+ # Change configuration to match Gentoo locations (bug #143750)
+ sed -i \
+ -e "s:/usr/lib/opensc:/usr/$(get_libdir):" \
+ -e "s:/usr/lib/pkcs11:/usr/$(get_libdir):" \
+ wpa_supplicant.conf || die
+
+ # systemd entries to D-Bus service files (bug #372877)
+ echo 'SystemdService=wpa_supplicant.service' \
+ | tee -a dbus/*.service >/dev/null || die
+
+ cd "${WORKDIR}/${P}" || die
+
+ if use wimax; then
+ # generate-libeap-peer.patch comes before
+ # fix-undefined-reference-to-random_get_bytes.patch
+ eapply "${FILESDIR}/${P}-generate-libeap-peer.patch"
+
+ # multilib-strict fix (bug #373685)
+ sed -e "s/\/usr\/lib/\/usr\/$(get_libdir)/" -i src/eap_peer/Makefile || die
+ fi
+
+ # bug (320097)
+ eapply "${FILESDIR}/${P}-do-not-call-dbus-functions-with-NULL-path.patch"
+
+ # bug (596332 & 651314)
+ eapply "${FILESDIR}/${P}-libressl-compatibility.patch"
+
+ # https://w1.fi/security/2017-1/wpa-packet-number-reuse-with-replayed-messages.txt
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0004-Prevent-installation-of-an-all-zero-TK.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch"
+ eapply "${FILESDIR}/2017-1/rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch"
+
+ # bug (640492)
+ sed -i 's#-Werror ##' wpa_supplicant/Makefile || die
+}
+
+src_configure() {
+ # Toolchain setup
+ tc-export CC
+
+ cp defconfig .config || die
+
+ # Basic setup
+ Kconfig_style_config CTRL_IFACE
+ Kconfig_style_config MATCH_IFACE
+ Kconfig_style_config BACKEND file
+ Kconfig_style_config IBSS_RSN
+ Kconfig_style_config IEEE80211W
+ Kconfig_style_config IEEE80211R
+
+ # Basic authentication methods
+ # NOTE: we don't set GPSK or SAKE as they conflict
+ # with the below options
+ Kconfig_style_config EAP_GTC
+ Kconfig_style_config EAP_MD5
+ Kconfig_style_config EAP_OTP
+ Kconfig_style_config EAP_PAX
+ Kconfig_style_config EAP_PSK
+ Kconfig_style_config EAP_TLV
+ Kconfig_style_config EAP_EXE
+ Kconfig_style_config IEEE8021X_EAPOL
+ Kconfig_style_config PKCS12
+ Kconfig_style_config PEERKEY
+ Kconfig_style_config EAP_LEAP
+ Kconfig_style_config EAP_MSCHAPV2
+ Kconfig_style_config EAP_PEAP
+ Kconfig_style_config EAP_TLS
+ Kconfig_style_config EAP_TTLS
+
+ # Enabling background scanning.
+ Kconfig_style_config BGSCAN_SIMPLE
+ Kconfig_style_config BGSCAN_LEARN
+
+ if use dbus ; then
+ Kconfig_style_config CTRL_IFACE_DBUS
+ Kconfig_style_config CTRL_IFACE_DBUS_NEW
+ Kconfig_style_config CTRL_IFACE_DBUS_INTRO
+ fi
+
+ if use eapol_test ; then
+ Kconfig_style_config EAPOL_TEST
+ fi
+
+ # Enable support for writing debug info to a log file and syslog.
+ Kconfig_style_config DEBUG_FILE
+ Kconfig_style_config DEBUG_SYSLOG
+
+ if use hs2-0 ; then
+ Kconfig_style_config INTERWORKING
+ Kconfig_style_config HS20
+ fi
+
+ if use uncommon-eap-types; then
+ Kconfig_style_config EAP_GPSK
+ Kconfig_style_config EAP_SAKE
+ Kconfig_style_config EAP_GPSK_SHA256
+ Kconfig_style_config EAP_IKEV2
+ Kconfig_style_config EAP_EKE
+ fi
+
+ if use eap-sim ; then
+ # Smart card authentication
+ Kconfig_style_config EAP_SIM
+ Kconfig_style_config EAP_AKA
+ Kconfig_style_config EAP_AKA_PRIME
+ Kconfig_style_config PCSC
+ fi
+
+ if use fasteap ; then
+ Kconfig_style_config EAP_FAST
+ fi
+
+ if use readline ; then
+ # readline/history support for wpa_cli
+ Kconfig_style_config READLINE
+ else
+ #internal line edit mode for wpa_cli
+ Kconfig_style_config WPA_CLI_EDIT
+ fi
+
+ # SSL authentication methods
+ if use ssl ; then
+ if use gnutls ; then
+ Kconfig_style_config TLS gnutls
+ Kconfig_style_config GNUTLS_EXTRA
+ else
+ Kconfig_style_config TLS openssl
+ Kconfig_style_config EAP_PWD
+
+ # Enabling mesh networks.
+ Kconfig_style_config MESH
+ fi
+ else
+ Kconfig_style_config TLS internal
+ fi
+
+ if use smartcard ; then
+ Kconfig_style_config SMARTCARD
+ fi
+
+ if use tdls ; then
+ Kconfig_style_config TDLS
+ fi
+
+ if use kernel_linux ; then
+ # Linux specific drivers
+ Kconfig_style_config DRIVER_ATMEL
+ Kconfig_style_config DRIVER_HOSTAP
+ Kconfig_style_config DRIVER_IPW
+ Kconfig_style_config DRIVER_NL80211
+ Kconfig_style_config DRIVER_RALINK
+ Kconfig_style_config DRIVER_WEXT
+ Kconfig_style_config DRIVER_WIRED
+
+ if use ps3 ; then
+ Kconfig_style_config DRIVER_PS3
+ fi
+
+ elif use kernel_FreeBSD ; then
+ # FreeBSD specific driver
+ Kconfig_style_config DRIVER_BSD
+ fi
+
+ # Wi-Fi Protected Setup (WPS)
+ if use wps ; then
+ Kconfig_style_config WPS
+ Kconfig_style_config WPS2
+ # USB Flash Drive
+ Kconfig_style_config WPS_UFD
+ # External Registrar
+ Kconfig_style_config WPS_ER
+ # Universal Plug'n'Play
+ Kconfig_style_config WPS_UPNP
+ # Near Field Communication
+ Kconfig_style_config WPS_NFC
+ fi
+
+ # Wi-Fi Direct (WiDi)
+ if use p2p ; then
+ Kconfig_style_config P2P
+ Kconfig_style_config WIFI_DISPLAY
+ fi
+
+ # Access Point Mode
+ if use ap ; then
+ Kconfig_style_config AP
+ fi
+
+ # Enable essentials for AP/P2P
+ if use ap || use p2p ; then
+ # Enabling HT support (802.11n)
+ Kconfig_style_config IEEE80211N
+
+ # Enabling VHT support (802.11ac)
+ Kconfig_style_config IEEE80211AC
+ fi
+
+ # Enable mitigation against certain attacks against TKIP
+ Kconfig_style_config DELAYED_MIC_ERROR_REPORT
+
+ if use privsep ; then
+ Kconfig_style_config PRIVSEP
+ fi
+
+ # If we are using libnl 2.0 and above, enable support for it
+ # Bug 382159
+ # Removed for now, since the 3.2 version is broken, and we don't
+ # support it.
+ if has_version ">=dev-libs/libnl-3.2"; then
+ Kconfig_style_config LIBNL32
+ fi
+
+ if use qt5 ; then
+ pushd "${S}"/wpa_gui-qt4 > /dev/null || die
+ eqmake5 wpa_gui.pro
+ popd > /dev/null || die
+ fi
+}
+
+src_compile() {
+ einfo "Building wpa_supplicant"
+ emake V=1 BINDIR=/usr/sbin
+
+ if use wimax; then
+ emake -C ../src/eap_peer clean
+ emake -C ../src/eap_peer
+ fi
+
+ if use qt5; then
+ einfo "Building wpa_gui"
+ emake -C "${S}"/wpa_gui-qt4
+ fi
+
+ if use eapol_test ; then
+ emake eapol_test
+ fi
+}
+
+src_install() {
+ dosbin wpa_supplicant
+ use privsep && dosbin wpa_priv
+ dobin wpa_cli wpa_passphrase
+
+ # baselayout-1 compat
+ if has_version "<sys-apps/baselayout-2.0.0"; then
+ dodir /sbin
+ dosym ../usr/sbin/wpa_supplicant /sbin/wpa_supplicant
+ dodir /bin
+ dosym ../usr/bin/wpa_cli /bin/wpa_cli
+ fi
+
+ if has_version ">=sys-apps/openrc-0.5.0"; then
+ newinitd "${FILESDIR}/${PN}-init.d" wpa_supplicant
+ newconfd "${FILESDIR}/${PN}-conf.d" wpa_supplicant
+ fi
+
+ exeinto /etc/wpa_supplicant/
+ newexe "${FILESDIR}/wpa_cli.sh" wpa_cli.sh
+
+ readme.gentoo_create_doc
+ dodoc ChangeLog {eap_testing,todo}.txt README{,-WPS} \
+ wpa_supplicant.conf
+
+ newdoc .config build-config
+
+ doman doc/docbook/*.{5,8}
+
+ if use qt5 ; then
+ into /usr
+ dobin wpa_gui-qt4/wpa_gui
+ doicon wpa_gui-qt4/icons/wpa_gui.svg
+ make_desktop_entry wpa_gui "WPA Supplicant Administration GUI" "wpa_gui" "Qt;Network;"
+ else
+ rm "${ED}"/usr/share/man/man8/wpa_gui.8
+ fi
+
+ use wimax && emake DESTDIR="${D}" -C ../src/eap_peer install
+
+ if use dbus ; then
+ pushd "${S}"/dbus > /dev/null || die
+ insinto /etc/dbus-1/system.d
+ newins dbus-wpa_supplicant.conf wpa_supplicant.conf
+ insinto /usr/share/dbus-1/system-services
+ doins fi.epitest.hostap.WPASupplicant.service fi.w1.wpa_supplicant1.service
+ popd > /dev/null || die
+
+ # This unit relies on dbus support, bug 538600.
+ systemd_dounit systemd/wpa_supplicant.service
+ fi
+
+ if use eapol_test ; then
+ dobin eapol_test
+ fi
+
+ systemd_dounit "systemd/wpa_supplicant@.service"
+ systemd_dounit "systemd/wpa_supplicant-nl80211@.service"
+ systemd_dounit "systemd/wpa_supplicant-wired@.service"
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+
+ if [[ -e "${EROOT%/}"/etc/wpa_supplicant.conf ]] ; then
+ echo
+ ewarn "WARNING: your old configuration file ${EROOT%/}/etc/wpa_supplicant.conf"
+ ewarn "needs to be moved to ${EROOT%/}/etc/wpa_supplicant/wpa_supplicant.conf"
+ fi
+
+ # Mea culpa, feel free to remove that after some time --mgorny.
+ local fn
+ for fn in wpa_supplicant{,@wlan0}.service; do
+ if [[ -e "${EROOT%/}"/etc/systemd/system/network.target.wants/${fn} ]]
+ then
+ ebegin "Moving ${fn} to multi-user.target"
+ mv "${EROOT%/}"/etc/systemd/system/network.target.wants/${fn} \
+ "${EROOT%/}"/etc/systemd/system/multi-user.target.wants/ || die
+ eend ${?} \
+ "Please try to re-enable ${fn}"
+ fi
+ done
+
+ systemd_reenable wpa_supplicant.service
+}