diff --git a/README.md b/README.md index c1be60c..035f385 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # wpa_supplicant +wpa_supplicant is a WPA Supplicant for Linux, BSD and Windows with support for WPA and WPA2. + diff --git a/wpa_supplicant-0.7.3-dbus_service_fix_path.patch b/wpa_supplicant-0.7.3-dbus_service_fix_path.patch new file mode 100644 index 0000000..50b3da6 --- /dev/null +++ b/wpa_supplicant-0.7.3-dbus_service_fix_path.patch @@ -0,0 +1,9 @@ +diff -Nru wpa_supplicant-0.7.3.orig//wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service wpa_supplicant-0.7.3/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service +--- wpa_supplicant-0.7.3.orig//wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service 2010-09-07 17:43:39.000000000 +0200 ++++ wpa_supplicant-0.7.3/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service 2010-12-02 23:28:35.575078721 +0100 +@@ -1,4 +1,4 @@ + [D-BUS Service] + Name=fi.epitest.hostap.WPASupplicant +-Exec=/sbin/wpa_supplicant -u ++Exec=/usr/sbin/wpa_supplicant -u + User=root diff --git a/wpa_supplicant-0.7.3-defconfig_enable_dbus.patch b/wpa_supplicant-0.7.3-defconfig_enable_dbus.patch new file mode 100644 index 0000000..5f3008e --- /dev/null +++ b/wpa_supplicant-0.7.3-defconfig_enable_dbus.patch @@ -0,0 +1,21 @@ +diff -Nru wpa_supplicant-0.7.3.orig//wpa_supplicant/defconfig wpa_supplicant-0.7.3/wpa_supplicant/defconfig +--- wpa_supplicant-0.7.3.orig//wpa_supplicant/defconfig 2010-09-07 17:43:39.000000000 +0200 ++++ wpa_supplicant-0.7.3/wpa_supplicant/defconfig 2010-12-02 22:40:09.804211706 +0100 +@@ -342,14 +342,14 @@ + + # Add support for old DBus control interface + # (fi.epitest.hostap.WPASupplicant) +-#CONFIG_CTRL_IFACE_DBUS=y ++CONFIG_CTRL_IFACE_DBUS=y + + # Add support for new DBus control interface + # (fi.w1.hostap.wpa_supplicant1) +-#CONFIG_CTRL_IFACE_DBUS_NEW=y ++CONFIG_CTRL_IFACE_DBUS_NEW=y + + # Add introspection support for new DBus control interface +-#CONFIG_CTRL_IFACE_DBUS_INTRO=y ++CONFIG_CTRL_IFACE_DBUS_INTRO=y + + # Add support for loading EAP methods dynamically as shared libraries. + # When this option is enabled, each EAP method can be either included diff --git a/wpa_supplicant-0.7.3-emit_property_changed_events_when_BSSs_property_changed.patch b/wpa_supplicant-0.7.3-emit_property_changed_events_when_BSSs_property_changed.patch new file mode 100644 index 0000000..4c50020 --- /dev/null +++ b/wpa_supplicant-0.7.3-emit_property_changed_events_when_BSSs_property_changed.patch @@ -0,0 +1,61 @@ +From b80b5639935d37b95d00f86b57f2844a9c775f57 Mon Sep 17 00:00:00 2001 +From: Dan Williams +Date: Fri, 17 Dec 2010 15:56:01 +0200 +Subject: [PATCH] dbus: Emit property changed events when adding/removing BSSes + +The supplicant was not emitting property changed events when the BSSs +property changed. + +Signed-off-by: Dan Williams +(cherry picked from commit 1e6288df6b07a353a9246b77e0de2a840b5f2c72) +--- + wpa_supplicant/dbus/dbus_new.c | 6 ++++++ + wpa_supplicant/dbus/dbus_new.h | 1 + + 2 files changed, 7 insertions(+), 0 deletions(-) + +diff --git a/wpa_supplicant/dbus/dbus_new.c b/wpa_supplicant/dbus/dbus_new.c +index bdfbbac..c66640a 100644 +--- a/wpa_supplicant/dbus/dbus_new.c ++++ b/wpa_supplicant/dbus/dbus_new.c +@@ -691,6 +691,10 @@ void wpas_dbus_signal_prop_changed(struct wpa_supplicant *wpa_s, + wpas_dbus_getter_current_network; + prop = "CurrentNetwork"; + break; ++ case WPAS_DBUS_PROP_BSSS: ++ getter = (WPADBusPropertyAccessor) wpas_dbus_getter_bsss; ++ prop = "BSSs"; ++ break; + default: + wpa_printf(MSG_ERROR, "dbus: %s: Unknown Property value %d", + __func__, property); +@@ -1199,6 +1203,7 @@ int wpas_dbus_unregister_bss(struct wpa_supplicant *wpa_s, + } + + wpas_dbus_signal_bss_removed(wpa_s, bss_obj_path); ++ wpas_dbus_signal_prop_changed(wpa_s, WPAS_DBUS_PROP_BSSS); + + return 0; + } +@@ -1263,6 +1268,7 @@ int wpas_dbus_register_bss(struct wpa_supplicant *wpa_s, + } + + wpas_dbus_signal_bss_added(wpa_s, bss_obj_path); ++ wpas_dbus_signal_prop_changed(wpa_s, WPAS_DBUS_PROP_BSSS); + + return 0; + +diff --git a/wpa_supplicant/dbus/dbus_new.h b/wpa_supplicant/dbus/dbus_new.h +index 80ea98c..9cdefcb 100644 +--- a/wpa_supplicant/dbus/dbus_new.h ++++ b/wpa_supplicant/dbus/dbus_new.h +@@ -30,6 +30,7 @@ enum wpas_dbus_prop { + WPAS_DBUS_PROP_STATE, + WPAS_DBUS_PROP_CURRENT_BSS, + WPAS_DBUS_PROP_CURRENT_NETWORK, ++ WPAS_DBUS_PROP_BSSS, + }; + + enum wpas_dbus_bss_prop { +-- +1.7.4-rc1 + diff --git a/wpa_supplicant-0.7.3-enable_NL80211.patch b/wpa_supplicant-0.7.3-enable_NL80211.patch new file mode 100644 index 0000000..6c8604a --- /dev/null +++ b/wpa_supplicant-0.7.3-enable_NL80211.patch @@ -0,0 +1,12 @@ +diff -Nru wpa_supplicant-0.7.3.orig/wpa_supplicant/defconfig wpa_supplicant-0.7.3/wpa_supplicant/defconfig +--- wpa_supplicant-0.7.3.orig/wpa_supplicant/defconfig 2011-09-18 15:40:55.316545708 +0200 ++++ wpa_supplicant-0.7.3/wpa_supplicant/defconfig 2011-09-18 15:41:15.516570524 +0200 +@@ -81,7 +81,7 @@ + CONFIG_DRIVER_WEXT=y + + # Driver interface for Linux drivers using the nl80211 kernel interface +-#CONFIG_DRIVER_NL80211=y ++CONFIG_DRIVER_NL80211=y + + # Driver interface for FreeBSD net80211 layer (e.g., Atheros driver) + #CONFIG_DRIVER_BSD=y diff --git a/wpa_supplicant-1.0-gcc-4.7.patch b/wpa_supplicant-1.0-gcc-4.7.patch new file mode 100644 index 0000000..81242ac --- /dev/null +++ b/wpa_supplicant-1.0-gcc-4.7.patch @@ -0,0 +1,11 @@ +diff -Nru wpa_supplicant-1.0.orig/wpa_supplicant/wpa_gui-qt4/wpagui.cpp wpa_supplicant-1.0/wpa_supplicant/wpa_gui-qt4/wpagui.cpp +--- wpa_supplicant-1.0.orig/wpa_supplicant/wpa_gui-qt4/wpagui.cpp 2012-10-31 02:08:40.425423875 +0100 ++++ wpa_supplicant-1.0/wpa_supplicant/wpa_gui-qt4/wpagui.cpp 2012-10-31 04:01:09.808546838 +0100 +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + #include "wpagui.h" + #include "dirent.h" diff --git a/wpa_supplicant-1.0-wpagui-getopt.patch.patch b/wpa_supplicant-1.0-wpagui-getopt.patch.patch new file mode 100644 index 0000000..ed1930b --- /dev/null +++ b/wpa_supplicant-1.0-wpagui-getopt.patch.patch @@ -0,0 +1,14 @@ +diff -up wpa_supplicant-1.0-rc1/wpa_supplicant/wpa_gui-qt4/wpagui.cpp.getopt wpa_supplicant-1.0-rc1/wpa_supplicant/wpa_gui-qt4/wpagui.cpp +--- wpa_supplicant-1.0-rc1/wpa_supplicant/wpa_gui-qt4/wpagui.cpp.getopt 2012-01-10 16:28:43.451307760 -0600 ++++ wpa_supplicant-1.0-rc1/wpa_supplicant/wpa_gui-qt4/wpagui.cpp 2012-01-10 16:28:53.999175893 -0600 +@@ -12,10 +12,7 @@ + * See README and COPYING for more details. + */ + +-#ifdef __MINGW32__ +-/* Need to get getopt() */ + #include +-#endif + + #ifdef CONFIG_NATIVE_WINDOWS + #include diff --git a/wpa_supplicant.conf b/wpa_supplicant.conf new file mode 100644 index 0000000..d3d6d27 --- /dev/null +++ b/wpa_supplicant.conf @@ -0,0 +1,2 @@ +ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=sysadmin +ap_scan=0 diff --git a/wpa_supplicant.spec b/wpa_supplicant.spec new file mode 100644 index 0000000..1722bdb --- /dev/null +++ b/wpa_supplicant.spec @@ -0,0 +1,187 @@ +Name: wpa_supplicant +Version: 2.1 +Release: 1mamba +Summary: WPA/WPA2/IEEE 802.1x Supplicant +Group: Network/Security +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: http://hostap.epitest.fi/wpa_supplicant +Source: http://hostap.epitest.fi/releases/%{name}-%{version}.tar.gz +Source1: wpa_supplicant.conf +Patch1: %{name}-0.7.3-defconfig_enable_dbus.patch +Patch2: %{name}-0.7.3-dbus_service_fix_path.patch +Patch3: %{name}-0.7.3-emit_property_changed_events_when_BSSs_property_changed.patch +Patch4: %{name}-0.7.3-enable_NL80211.patch +Patch5: %{name}-1.0-gcc-4.7.patch +Patch6: wpa_supplicant-1.0-wpagui-getopt.patch.patch +Patch7: wpa_supplicant-1.0-gcc-4.7.patch +License: GPL +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: libdbus-devel +BuildRequires: libgcc +BuildRequires: libnl1-devel +BuildRequires: libopenssl-devel +%if "%{stage1}" != "1" +BuildRequires: libqt4-devel +%endif +BuildRequires: libstdc++6-devel +## AUTOBUILDREQ-END +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +wpa_supplicant is a WPA Supplicant for Linux, BSD and Windows with support for WPA and WPA2. + +%package gui +Summary: QT4 GUI for %{name} +Group: Graphical Desktop/Applications/Networking +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} + +%description gui +wpa_supplicant is a WPA Supplicant for Linux, BSD and Windows with support for WPA and WPA2. + +This package contains the QT4 GUI. + +%prep +%setup -q +%patch1 -p1 +#%patch2 -p1 +#%patch3 -p1 +#%patch4 -p1 +#%patch5 -p1 +#%patch6 -p1 +%patch7 -p1 + +%build +cd wpa_supplicant +cp defconfig .config +%make BINDIR=/sbin CC=%{_host}-gcc \ +%if "%{_host}" != "%{_build}" + LDFLAGS="-ldl" +%endif + +%if "%{stage1}" != "1" +#% make wpa_gui UIC=uic +cd wpa_gui-qt4 +qmake-qt4 +%make UIC=uic-qt4 +cd .. +%make -C doc/docbook man +%endif + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} +cd wpa_supplicant +%makeinstall BINDIR=/sbin LIBDIR=%{_libdir} +install -D -m0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/wpa_supplicant.conf +install -D -m0644 dbus/fi.epitest.hostap.WPASupplicant.service \ + %{buildroot}%{_datadir}/dbus-1/system-services/fi.epitest.hostap.WPASupplicant.service +install -D -m0644 dbus/fi.w1.wpa_supplicant1.service \ + %{buildroot}%{_datadir}/dbus-1/system-services/fi.w1.wpa_supplicant1.service +install -D -m0644 dbus/dbus-wpa_supplicant.conf \ + %{buildroot}%{_sysconfdir}/dbus-1/system.d/wpa_supplicant.conf +install -d %{buildroot}%{_mandir}/{man5,man8} +install doc/docbook/*.5 %{buildroot}%{_mandir}/man5/ +install doc/docbook/*.8 %{buildroot}%{_mandir}/man8/ +%if "%{stage1}" != "1" +install -D -m0755 wpa_gui-qt4/wpa_gui %{buildroot}%{_bindir}/wpa_gui +install -D -m0644 wpa_gui-qt4/wpa_gui.desktop %{buildroot}%{_datadir}/applications/wpa_gui.desktop +install -D -m0644 wpa_gui-qt4/icons/wpa_gui.svg %{buildroot}%{_datadir}/pixmaps/wpa_gui.svg +%endif +# systemd service +install -d -m0755 %{buildroot}/lib/systemd/system +cp -a systemd/*.service %{buildroot}/lib/systemd/system/ + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%post +if [ "$1" -ge 1 ]; then + grep "country=" /etc/wpa_supplicant.conf >/dev/null || { + COUNTRY=`echo $LANG | sed "s|.*_\([A-Z]*\).*|\1|"` + [ "$COUNTRY" ] && echo "country=$COUNTRY" >> /etc/wpa_supplicant.conf + } +fi +: + +%files +%defattr(-,root,root) +%config(noreplace) %{_sysconfdir}/wpa_supplicant.conf +%{_sysconfdir}/dbus-1/system.d/wpa_supplicant.conf +/sbin/wpa_cli +/sbin/wpa_passphrase +/sbin/wpa_supplicant +/lib/systemd/system/wpa_supplicant-nl80211@.service +/lib/systemd/system/wpa_supplicant-wired@.service +/lib/systemd/system/wpa_supplicant.service +/lib/systemd/system/wpa_supplicant@.service +%{_datadir}/dbus-1/system-services/fi.epitest.hostap.WPASupplicant.service +%{_datadir}/dbus-1/system-services/fi.w1.wpa_supplicant1.service +%{_mandir}/man5/*.gz +%{_mandir}/man8/*.gz +%doc COPYING +#%doc wpa_supplicant/ChangeLog README + +%if "%{stage1}" != "1" +%files gui +%defattr(-,root,root) +%{_bindir}/wpa_gui +%{_datadir}/applications/wpa_gui.desktop +%{_datadir}/pixmaps/wpa_gui.svg +%endif + +%changelog +* Wed Feb 12 2014 Automatic Build System 2.1-1mamba +- automatic update by autodist + +* Tue Mar 19 2013 Silvan Calarco 2.0-2mamba +- rebuilt with systemd support + +* Mon Jan 14 2013 Automatic Build System 2.0-1mamba +- automatic version update by autodist + +* Wed Nov 21 2012 Silvan Calarco 1.0-2mamba +- pass BINDIR to make to fix wpa_supplicant path in dbus service files + +* Tue Nov 20 2012 Automatic Build System 1.0-1mamba +- update to 1.0 + +* Mon Apr 30 2012 Silvan Calarco 0.7.3-4mamba +- set country in /etc/wpa_supplicant.conf from LANG + +* Sun Sep 18 2011 Silvan Calarco 0.7.3-3mamba +- install binaries in %{_sbin} directory as required by dbus service file +- enable nl80211 driver required by NetworkManager >= 0.9 + +* Thu Dec 02 2010 Silvan Calarco 0.7.3-2mamba +- rebuilt with dBus interface support for NetworkManager + +* Wed Sep 15 2010 Automatic Build System 0.7.3-1mamba +- automatic update by autodist + +* Fri Jun 25 2010 Automatic Build System 0.7.2-1mamba +- automatic update by autodist + +* Mon Jan 18 2010 Automatic Build System 0.7.1-1mamba +- automatic update by autodist + +* Fri Jun 26 2009 Automatic Build System 0.6.9-1mamba +- automatic update by autodist + +* Mon Jan 26 2009 Silvan Calarco 0.6.7-2mamba +- build QT4 gui +- added default configuration /etc/wpa_supplicant.conf + +* Mon Jan 19 2009 Silvan Calarco 0.6.7-1mamba +- automatic update by autodist + +* Sun Apr 13 2008 Silvan Calarco 0.5.10-1mamba +- update to 0.5.10 +- added installation of man pages + +* Mon Jul 16 2007 Silvan Calarco 0.5.8-1mamba +- update to 0.5.8 + +* Tue Nov 08 2005 Marco Poet 0.4.6-1qilnx +- package created by autospec