commit: f469ae69f5f647aeb091ada20079ad19709a67da
Author: Zero_Chaos <zerochaos <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 8 17:10:47 2017 +0000
Commit: Richard Farina <zerochaos <AT> gentoo <DOT> org>
CommitDate: Fri Dec 8 17:11:02 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f469ae69
net-wireless/wpa_supplicant: mostly fix bug #598138
Package-Manager: Portage-2.3.16, Repoman-2.3.6
net-wireless/wpa_supplicant/metadata.xml | 2 ++
.../wpa_supplicant/wpa_supplicant-2.6-r4.ebuild | 33 +++++++++++++++++++++-
2 files changed, 34 insertions(+), 1 deletion(-)
diff --git a/net-wireless/wpa_supplicant/metadata.xml
b/net-wireless/wpa_supplicant/metadata.xml
index f0eca57a1d8..807ccfc0e03 100644
--- a/net-wireless/wpa_supplicant/metadata.xml
+++ b/net-wireless/wpa_supplicant/metadata.xml
@@ -12,10 +12,12 @@
<use>
<flag name="ap">Add support for access point mode</flag>
<flag name="eap-sim">Add support for EAP-SIM authentication
algorithm</flag>
+ <flag name="eapol_test">Build and install eapol_test
binary</flag>
<flag name="fasteap">Add support for FAST-EAP authentication
algorithm</flag>
<flag name="hs2-0">Add support for 802.11u and Passpoint for
HotSpot 2.0</flag>
<flag name="p2p">Add support for Wi-Fi Direct mode</flag>
<flag name="ps3">Add support for ps3 hypervisor driven gelic
wifi</flag>
+ <flag name="privsep">Enable wpa_priv privledge separation
binary</flag>
<flag name="tdls">Add support for Tunneled Direct Link Setup
(802.11z)</flag>
<flag name="uncommon-eap-types">Add support for GPSK, SAKE,
GPSK_SHA256, IKEV2 and EKE</flag>
<flag name="wps">Add support for Wi-Fi Protected Setup</flag>
diff --git a/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r4.ebuild
b/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r4.ebuild
index bbcfd91a660..d33978b98b0 100644
--- a/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r4.ebuild
+++ b/net-wireless/wpa_supplicant/wpa_supplicant-2.6-r4.ebuild
@@ -12,7 +12,7 @@ LICENSE="|| ( GPL-2 BSD )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86
~x86-fbsd"
-IUSE="ap dbus gnutls eap-sim fasteap +hs2-0 libressl p2p ps3 qt5 readline
selinux smartcard ssl tdls uncommon-eap-types wimax wps kernel_linux
kernel_FreeBSD"
+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 )"
CDEPEND="dbus? ( sys-apps/dbus )
@@ -72,6 +72,9 @@ Kconfig_style_config() {
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"
@@ -188,6 +191,10 @@ src_configure() {
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
@@ -289,9 +296,22 @@ src_configure() {
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
@@ -320,10 +340,15 @@ src_compile() {
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
@@ -355,6 +380,8 @@ src_install() {
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
@@ -371,6 +398,10 @@ src_install() {
systemd_dounit systemd/wpa_supplicant.service
fi
+ if use eapol_test ; then
+ dobin eapol_test
+ fi
+
systemd_dounit "systemd/[email protected]"
systemd_dounit "systemd/[email protected]"
systemd_dounit "systemd/[email protected]"