tnet-wireless/aircrack-ng: Update to 1.2_rc4-r1 - parlay - yet another gentoo overlay HTML git clone https://git.parazyd.org/parlay DIR Log DIR Files DIR Refs DIR README --- DIR commit c027dd3c825c93ae3b03cefa4b3d32f7c5d0b618 DIR parent 0f8f1d8eb1204943336a8f6bec28b3a03901f267 HTML Author: parazyd <parazyd@dyne.org> Date: Wed, 25 Jan 2017 17:25:25 +0100 net-wireless/aircrack-ng: Update to 1.2_rc4-r1 Diffstat: A net-wireless/aircrack-ng/aircrack-… | 120 +++++++++++++++++++++++++++++++ D net-wireless/aircrack-ng/aircrack-… | 147 ------------------------------- A net-wireless/aircrack-ng/files/air… | 49 +++++++++++++++++++++++++++++++ 3 files changed, 169 insertions(+), 147 deletions(-) --- DIR diff --git a/net-wireless/aircrack-ng/aircrack-ng-1.2_rc4-r1.ebuild b/net-wireless/aircrack-ng/aircrack-ng-1.2_rc4-r1.ebuild t@@ -0,0 +1,120 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="6" + +PYTHON_COMPAT=( python2_7 ) +DISTUTILS_OPTIONAL=1 + +inherit toolchain-funcs distutils-r1 flag-o-matic + +DESCRIPTION="WLAN tools for breaking 802.11 WEP/WPA keys" +HOMEPAGE="http://www.aircrack-ng.org" + +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" + +LICENSE="GPL-2" +SLOT="0" + +IUSE="+airdrop-ng +airgraph-ng kernel_linux kernel_FreeBSD +netlink +pcre +sqlite +experimental libressl" + +DEPEND="net-libs/libpcap + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl: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} + 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} )" + +PATCHES=( + "${FILESDIR}/${P}-openssl.patch" +) + +S="${WORKDIR}/${PN}-${MY_PV}" + +pkg_setup() { + MAKE_COMMON=( + CC="$(tc-getCC)" \ + CXX="$(tc-getCXX)" \ + 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" \ + ) +} + +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() { + emake "${MAKE_COMMON[@]}" install + + dodoc AUTHORS ChangeLog INSTALLING README + + 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 +} DIR diff --git a/net-wireless/aircrack-ng/aircrack-ng-1.2_rc4.ebuild b/net-wireless/aircrack-ng/aircrack-ng-1.2_rc4.ebuild t@@ -1,147 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -EAPI="5" - -PYTHON_COMPAT=( python2_7 ) -DISTUTILS_OPTIONAL=1 - -inherit toolchain-funcs distutils-r1 flag-o-matic - -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" - KEYWORDS="" - S="${WORKDIR}/${PN}" -else - #inherit versionator - #MY_P=${P/\_/-} - #MY_PV="$(replace_version_separator 2 '-')" - #SRC_URI="http://download.aircrack-ng.org/${PN}-${MY_PV}.tar.gz" - #KEYWORDS="~amd64 ~arm ~ppc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux" - #S="${WORKDIR}/${MY_P}" - 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 libressl" - -DEPEND="net-libs/libpcap - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl: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} - 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} )" - -src_compile() { - if [[ $($(tc-getCC) --version) == clang* ]] ; then - #https://bugs.gentoo.org/show_bug.cgi?id=472890 - filter-flags -frecord-gcc-switches - fi - - if [[ ${PV} == "9999" ]] ; then - liveflags=REVFLAGS=-D_REVISION="${ESVN_WC_REVISION}" - fi - - emake \ - CC="$(tc-getCC)" \ - CXX="$(tc-getCXX)" \ - 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) \ - ${liveflags} - - 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() { - if [[ ${PV} == "9999" ]] ; then - liveflags=REVFLAGS=-D_REVISION="${ESVN_WC_REVISION}" - fi - - emake check \ - libnl=$(usex netlink true false) \ - pcre=$(usex pcre true false) \ - sqlite=$(usex sqlite true false) \ - experimental=$(usex experimental true false) \ - ${liveflags} -} - -src_install() { - if [[ ${PV} == "9999" ]] ; then - liveflags=REVFLAGS=-D_REVISION="${ESVN_WC_REVISION}" - fi - - emake \ - prefix="${ED}/usr" \ - libnl=$(usex netlink true false) \ - pcre=$(usex pcre true false) \ - sqlite=$(usex sqlite true false) \ - experimental=$(usex experimental true false) \ - ${liveflags} \ - install - - dodoc AUTHORS ChangeLog INSTALLING README - - 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 -} DIR diff --git a/net-wireless/aircrack-ng/files/aircrack-ng-1.2_rc4-openssl.patch b/net-wireless/aircrack-ng/files/aircrack-ng-1.2_rc4-openssl.patch t@@ -0,0 +1,49 @@ +Index: a/src/crypto.c +=================================================================== +--- a/src/crypto.c (revision 2881) ++++ b/src/crypto.c (revision 2882) +@@ -288,7 +288,15 @@ + void calc_mic (struct AP_info *ap, unsigned char pmk[32], unsigned char ptk[80], unsigned char mic[20]) { + int i; + unsigned char pke[100]; ++ #if defined(USE_GCRYPT) || OPENSSL_VERSION_NUMBER < 0x10100000L ++ #define HMAC_USE_NO_PTR ++ #endif ++ ++ #ifdef HMAC_USE_NO_PTR + HMAC_CTX ctx; ++ #else ++ HMAC_CTX * ctx; ++ #endif + + memcpy( pke, "Pairwise key expansion", 23 ); + +@@ -314,6 +322,7 @@ + memcpy( pke + 67, ap->wpa.snonce, 32 ); + } + ++ #ifdef HMAC_USE_NO_PTR + HMAC_CTX_init(&ctx); + HMAC_Init_ex(&ctx, pmk, 32, EVP_sha1(), NULL); + for(i = 0; i < 4; i++ ) +@@ -325,6 +334,20 @@ + HMAC_Final(&ctx, ptk + i*20, NULL); + } + HMAC_CTX_cleanup(&ctx); ++ #else ++ ctx = HMAC_CTX_new(); ++ HMAC_Init_ex(ctx, pmk, 32, EVP_sha1(), NULL); ++ for(i = 0; i < 4; i++ ) ++ { ++ pke[99] = i; ++ //HMAC(EVP_sha1(), values[0], 32, pke, 100, ptk + i * 20, NULL); ++ HMAC_Init_ex(ctx, 0, 0, 0, 0); ++ HMAC_Update(ctx, pke, 100); ++ HMAC_Final(ctx, ptk + i*20, NULL); ++ } ++ HMAC_CTX_free(ctx); ++ #endif ++ #undef HMAC_USE_NO_PTR + + if( ap->wpa.keyver == 1 ) + {