hostapd/hostapd.spec

443 lines
16 KiB
RPMSpec
Raw Normal View History

%global _hardened_build 1
2009-12-21 20:06:43 +00:00
Name: hostapd
2019-08-09 14:13:57 +00:00
Version: 2.9
Release: 7%{?dist}
2009-12-21 20:06:43 +00:00
Summary: IEEE 802.11 AP, IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator
License: BSD
URL: http://w1.fi/hostapd
2013-08-08 07:27:02 +00:00
Source0: http://w1.fi/releases/%{name}-%{version}.tar.gz
2012-02-28 14:25:16 +00:00
Source1: %{name}.service
2009-12-21 20:06:43 +00:00
Source2: %{name}.conf
Source3: %{name}.sysconfig
2013-08-08 07:27:02 +00:00
Source4: %{name}.init
# https://github.com/openbsd/src/blob/master/usr.sbin/hostapd/hostapd.conf.5
Source5: %{name}.conf.5
2009-12-21 20:06:43 +00:00
# https://w1.fi/security/2019-7/ap-mode-pmf-disconnection-protection-bypass.txt
Patch1: https://w1.fi/security/2019-7/0001-AP-Silently-ignore-management-frame-from-unexpected-.patch
# https://w1.fi/security/2020-1/upnp-subscribe-misbehavior-wps-ap.txt
Patch2: https://w1.fi/security/2020-1/0001-WPS-UPnP-Do-not-allow-event-subscriptions-with-URLs-.patch
Patch3: https://w1.fi/security/2020-1/0002-WPS-UPnP-Fix-event-message-generation-using-a-long-U.patch
Patch4: https://w1.fi/security/2020-1/0003-WPS-UPnP-Handle-HTTP-initiation-failures-for-events-.patch
BuildRequires: libnl3-devel
2009-12-21 20:06:43 +00:00
BuildRequires: openssl-devel
BuildRequires: perl-generators
BuildRequires: gcc
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%if 0%{?fedora} || 0%{?rhel} >= 7
BuildRequires: systemd
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%endif
%if 0%{?rhel} == 6
Requires(post): /sbin/chkconfig
Requires(preun): /sbin/chkconfig
Requires(preun): /sbin/service
Requires(postun): /sbin/service
%endif
2009-12-21 20:06:43 +00:00
%description
2013-08-08 07:27:02 +00:00
%{name} is a user space daemon for access point and authentication servers. It
implements IEEE 802.11 access point management, IEEE 802.1X/WPA/WPA2/EAP
Authenticators and RADIUS authentication server.
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%{name} is designed to be a "daemon" program that runs in the back-ground and
acts as the backend component controlling authentication. %{name} supports
separate frontend programs and an example text-based frontend, hostapd_cli, is
included with %{name}.
2009-12-21 20:06:43 +00:00
%package logwatch
2013-08-08 07:27:02 +00:00
Summary: Logwatch scripts for hostapd
Requires: %{name} = %{version}-%{release}
Requires: logwatch
%if 0%{?rhel} == 6 || 0%{?rhel} == 7
Requires: perl
%else
Requires: perl-interpreter
%endif
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%description logwatch
Logwatch scripts for hostapd.
2009-12-21 20:06:43 +00:00
%prep
%setup -q
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
2009-12-21 20:06:43 +00:00
%build
cd hostapd
cat defconfig | sed \
2019-07-03 14:51:28 +00:00
-e '$ a CONFIG_SAE=y' \
-e '/^#CONFIG_DRIVER_NL80211=y/s/^#//' \
-e '/^#CONFIG_RADIUS_SERVER=y/s/^#//' \
-e '/^#CONFIG_DRIVER_WIRED=y/s/^#//' \
-e '/^#CONFIG_DRIVER_NONE=y/s/^#//' \
-e '/^#CONFIG_IEEE80211N=y/s/^#//' \
-e '/^#CONFIG_IEEE80211R=y/s/^#//' \
-e '/^#CONFIG_IEEE80211AC=y/s/^#//' \
-e '/^#CONFIG_FULL_DYNAMIC_VLAN=y/s/^#//' \
-e '/^#CONFIG_LIBNL32=y/s/^#//' \
-e '/^#CONFIG_ACS=y/s/^#//' \
> .config
2014-02-22 10:07:28 +00:00
echo "CFLAGS += -I%{_includedir}/libnl3" >> .config
echo "LIBS += -L%{_libdir}" >> .config
2009-12-21 20:06:43 +00:00
make %{?_smp_mflags} EXTRA_CFLAGS="$RPM_OPT_FLAGS"
%install
2013-08-08 07:27:02 +00:00
%if 0%{?fedora} || 0%{?rhel} >= 7
# Systemd unit files
install -p -m 644 -D %{SOURCE1} %{buildroot}%{_unitdir}/%{name}.service
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%else
# Initscripts
install -p -m 755 -D %{SOURCE4} %{buildroot}%{_initrddir}/%{name}
%endif
2009-12-21 20:06:43 +00:00
# logwatch files
install -d %{buildroot}/%{_sysconfdir}/logwatch/conf/services
2013-08-08 07:27:02 +00:00
install -pm 0644 %{name}/logwatch/%{name}.conf \
%{buildroot}/%{_sysconfdir}/logwatch/conf/services/%{name}.conf
2009-12-21 20:06:43 +00:00
install -d %{buildroot}/%{_sysconfdir}/logwatch/scripts/services
2013-08-08 07:27:02 +00:00
install -pm 0755 %{name}/logwatch/%{name} \
%{buildroot}/%{_sysconfdir}/logwatch/scripts/services/%{name}
2009-12-21 20:06:43 +00:00
# config files
install -d %{buildroot}/%{_sysconfdir}/%{name}
install -pm 0600 %{SOURCE2} %{buildroot}/%{_sysconfdir}/%{name}
2009-12-21 20:06:43 +00:00
install -d %{buildroot}/%{_sysconfdir}/sysconfig
2013-08-08 07:27:02 +00:00
install -pm 0644 %{SOURCE3} %{buildroot}/%{_sysconfdir}/sysconfig/%{name}
2009-12-21 20:06:43 +00:00
# binaries
install -d %{buildroot}/%{_sbindir}
2013-08-08 07:27:02 +00:00
install -pm 0755 %{name}/%{name} %{buildroot}%{_sbindir}/%{name}
install -pm 0755 %{name}/%{name}_cli %{buildroot}%{_sbindir}/%{name}_cli
2009-12-21 20:06:43 +00:00
# man pages
install -d %{buildroot}%{_mandir}/man{1,5,8}
2013-08-08 07:27:02 +00:00
install -pm 0644 %{name}/%{name}_cli.1 %{buildroot}%{_mandir}/man1
install -pm 0644 %{SOURCE5} %{buildroot}%{_mandir}/man5
2013-08-08 07:27:02 +00:00
install -pm 0644 %{name}/%{name}.8 %{buildroot}%{_mandir}/man8
2009-12-21 20:06:43 +00:00
# prepare docs
2013-08-08 07:27:02 +00:00
cp %{name}/README ./README.%{name}
cp %{name}/README-WPS ./README-WPS.%{name}
cp %{name}/logwatch/README ./README.logwatch
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%if 0%{?fedora} || 0%{?rhel} >= 7
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%post
%systemd_post %{name}.service
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%preun
%systemd_preun %{name}.service
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%postun
%systemd_postun_with_restart %{name}.service
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%endif
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%if 0%{?rhel} == 6
2009-12-21 20:06:43 +00:00
%post
2013-08-08 07:27:02 +00:00
/sbin/chkconfig --add %{name}
2009-12-21 20:06:43 +00:00
%preun
2013-08-08 07:27:02 +00:00
if [ $1 -eq 0 ]; then
/sbin/service %{name} stop >/dev/null 2>&1 || :
/sbin/chkconfig --del %{name}
fi
2012-02-28 14:25:16 +00:00
%postun
2013-08-08 07:27:02 +00:00
if [ $1 -ge 1 ]; then
/sbin/service %{name} condrestart >/dev/null 2>&1 || :
fi
2009-12-21 20:06:43 +00:00
2013-08-08 07:27:02 +00:00
%endif
2012-02-28 14:25:16 +00:00
2013-08-08 07:27:02 +00:00
%files
%license COPYING
%doc README README.hostapd README-WPS.hostapd
2013-08-08 07:27:02 +00:00
%doc %{name}/%{name}.conf %{name}/wired.conf
%doc %{name}/%{name}.accept %{name}/%{name}.deny
%doc %{name}/%{name}.eap_user %{name}/%{name}.radius_clients
%doc %{name}/%{name}.vlan %{name}/%{name}.wpa_psk
%config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf
%config(noreplace) %{_sysconfdir}/sysconfig/%{name}
%{_sbindir}/%{name}
%{_sbindir}/%{name}_cli
%dir %{_sysconfdir}/%{name}
%{_mandir}/man1/*
%{_mandir}/man5/*
2013-08-08 07:27:02 +00:00
%{_mandir}/man8/*
%if 0%{?fedora} || 0%{?rhel} >= 7
%{_unitdir}/%{name}.service
%else
%{_initrddir}/%{name}
%endif
2012-02-28 14:25:16 +00:00
2013-08-08 07:27:02 +00:00
%files logwatch
%doc %{name}/logwatch/README
%config(noreplace) %{_sysconfdir}/logwatch/conf/services/%{name}.conf
%{_sysconfdir}/logwatch/scripts/services/%{name}
2009-12-21 20:06:43 +00:00
%changelog
* Thu Dec 16 2020 John W. Linville <linville@redhat.com> - 2.9-7
- Borrow hostapd.conf.5 man page from OpenBSD
* Thu Dec 10 2020 John W. Linville <linville@redhat.com> - 2.9-6
- Enable environment file in hostapd service definition
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.9-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jun 24 2020 John W. Linville <linville@redhat.com> - 2.9-4
- Fix CVE-2020-12695 (UPnP SUBSCRIBE misbehavior in hostapd WPS AP)
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.9-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Oct 30 2019 John W. Linville <linville@redhat.com> - 2.9-2
- Fix CVE-2019-16275 (AP mode PMF disconnection protection bypass)
2019-08-09 14:13:57 +00:00
* Fri Aug 09 2019 John W. Linville <linville@redhat.com> - 2.9-1
- Update to version 2.9 from upstream
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
2019-07-03 14:51:28 +00:00
* Wed Jul 03 2019 Lubomir Rintel <lkundrak@v3.sk> - 2.8-2
- Enable SAE
* Wed May 15 2019 John W. Linville <linville@redhat.com> - 2.8-1
- Update to version 2.8 from upstream
- Drop obsoleted patches
2019-04-12 17:44:37 +00:00
* Fri Apr 12 2019 John W. Linville <linville@redhat.com> - 2.7-2
- Bump N-V-R for rebuild
* Fri Apr 12 2019 John W. Linville <linville@redhat.com> - 2.7-1
2019-04-12 17:43:04 +00:00
- Update to version 2.7 from upstream
- Remove obsolete patches for NL80211_ATTR_SMPS_MODE encoding and KRACK
- Fix CVE-2019-9494 (cache attack against SAE)
- Fix CVE-2019-9495 (cache attack against EAP-pwd)
- Fix CVE-2019-9496 (SAE confirm missing state validation in hostapd/AP)
- Fix CVE-2019-9497 (EAP-pwd server not checking for reflection attack)
- Fix CVE-2019-9498 (EAP-pwd server missing commit validation for scalar/element)
- Fix CVE-2019-9499 (EAP-pwd peer missing commit validation for scalar/element)
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 20 2018 John W. Linville <linville@redhat.com> - 2.6-11
- Add previously unnecessary BuildRequires for gcc
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue May 29 2018 Davide Caratti <dcaratti@redhat.com> - 2.6-9
- backport fix for Fix NL80211_ATTR_SMPS_MODE encoding (rh #1582839)
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Dec 07 2017 Simone Caronni <negativo17@gmail.com> - 2.6-7
- Fix dependencies on the logwatch package for RHEL/CentOS.
* Fri Nov 03 2017 Xavier Bachelot <xavier@bachelot.org> - 2.6-6
- Add patches for KRACK : CVE-2017-13077, CVE-2017-13078, CVE-2017-13079,
CVE-2017-13080, CVE-2017-13081, CVE-2017-13082, CVE-2017-13086,
CVE-2017-13087, CVE-2017-13088 (RHBZ#1502588).
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Thu Jul 13 2017 Petr Pisar <ppisar@redhat.com> - 2.6-3
- perl dependency renamed to perl-interpreter
<https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules>
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Mon Oct 03 2016 John W. Linville <linville@redhat.com> - 2.6-1
- Update to version 2.6 from upstream
- Remove patch for CVE-2016-4476, now included in base tarball
* Fri Jul 15 2016 John W. Linville <linville@redhat.com> - 2.5-5
- Bump NVR and rebuild to resolve GLIBC_2.24 symbol issue
2016-06-06 19:00:44 +00:00
* Mon Jun 06 2016 John W. Linville <linville@redhat.com> - 2.5-4
- Add WPS patch for CVE-2016-4476
* Tue Apr 19 2016 Sascha Spreitzer <sspreitz@redhat.com> - 2.5-3
- Enable ACS feature (automatic channel switching)
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Oct 13 2015 John W. Linville <linville@redhat.com> - 2.5-1
- Update to version 2.5 from upstream
- Remove patches made redundant by version update
* Fri Jul 10 2015 John W. Linville <linville@redhat.com> - 2.4-3
- apply fix for NDEF record payload length checking
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Fri May 15 2015 John W. Linville <linville@redhat.com> - 2.4-2
- apply fix for underflow in WMM action frame parser
* Tue Apr 21 2015 John W. Linville <linville@redhat.com> - 2.4-1
- Update to version 2.4 from upstream
- Enable support for IEEE802.11r and IEEE802.11ac
* Wed Feb 4 2015 John W. Linville <linville@redhat.com> - 2.3-4
- Use %%license instead of %%doc for file containing license information
* Sun Nov 02 2014 poma <poma@gmail.com> - 2.3-3
- Further simplify hostapd.conf installation
- Rebase "EAP-TLS server" patch to 2.3
* Tue Oct 28 2014 John W. Linville <linville@redhat.com> - 2.3-2
- Remove version info from /usr/share/doc/hostapd/hostapd.conf
2014-10-23 18:18:13 +00:00
* Thu Oct 23 2014 John W. Linville <linville@redhat.com> - 2.3-1
- Update to version 2.3 from upstream
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
2014-06-05 18:35:27 +00:00
* Thu Jun 5 2014 John W. Linville <linville@redhat.com> - 2.2-1
- Update to version 2.2 from upstream
2014-02-22 10:07:28 +00:00
* Sat Feb 22 2014 Simone Caronni <negativo17@gmail.com> - 2.1-2
- Re-enable drivers (#1068849).
* Fri Feb 14 2014 John W. Linville <linville@redhat.com> - 2.1-1
- Update to version 2.1 from upstream
- Remove obsolete patch for libnl build documentation
* Mon Feb 03 2014 Simone Caronni <negativo17@gmail.com> - 2.0-6
- Add libnl build documentation and switch libnl-devel to libnl3-devel build
dependency (#1041471).
* Fri Nov 22 2013 John W. Linville <linville@redhat.com> - 2.0-5
- Enable CONFIG_FULL_DYNAMIC_VLAN build option
2013-08-08 07:27:02 +00:00
* Wed Aug 07 2013 Simone Caronni <negativo17@gmail.com> - 2.0-4
- Add EPEL 6 support.
- Remove obsolete EPEL 5 tags.
- Little spec file formatting.
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
2013-07-17 20:59:10 +00:00
* Wed Jul 17 2013 Petr Pisar <ppisar@redhat.com> - 2.0-2
- Perl 5.18 rebuild
* Thu May 30 2013 John W. Linville <linville@redhat.com> - 2.0-1
- Update to version 2.0 from upstream
- Convert to use of systemd-rpm macros
- Build with PIE flags
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Mon Oct 8 2012 John W. Linville <linville@redhat.com> - 1.0-3
- EAP-TLS: Add extra validation for TLS Message Length
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
2012-06-08 15:43:55 +00:00
* Fri Jun 8 2012 John W. Linville <linville@redhat.com> - 1.0-1
- Update to version 1.0 from upstream
* Fri Jun 8 2012 John W. Linville <linville@redhat.com> - 0.7.3-9
- Remove hostapd-specific runtime state directory
* Wed Jun 6 2012 John W. Linville <linville@redhat.com> - 0.7.3-8
- Fixup typo in pid file path in hostapd.service
2012-05-30 13:40:36 +00:00
* Wed May 30 2012 John W. Linville <linville@redhat.com> - 0.7.3-7
- Add BuildRequires for systemd-units
* Fri May 25 2012 John W. Linville <linville@redhat.com> - 0.7.3-6
- Fixup typo in configuration file path in hostapd.service
- Tighten-up default permissions for hostapd.conf
2012-02-28 14:25:16 +00:00
* Tue Feb 28 2012 Jon Ciesla <limburgher@gmail.com> - 0.7.3-5
- Migrate to systemd, BZ 770310.
* Wed Jan 18 2012 John W. Linville <linville@redhat.com> - 0.7.3-4
- Add reference to sample hostapd.conf in the default installed version
- Include README-WPS from the hostapd distribution as part of the docs
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
2010-12-23 17:03:29 +00:00
* Thu Dec 23 2010 John W. Linville <linville@redhat.com> - 0.7.3-1
- Update to version 0.7.3
* Wed Nov 24 2010 John W. Linville <linville@redhat.com> - 0.6.10-3
- Use ghost directive for /var/run/hostapd
- Remove some rpmlint warnings
* Thu May 27 2010 John W. Linville <linville@redhat.com> - 0.6.10-2
- Move DTIM period configuration into Beacon set operation
2010-05-10 17:29:08 +00:00
* Mon May 10 2010 John W. Linville <linville@redhat.com> - 0.6.10-1
- Update to version 0.6.10
* Tue Jan 19 2010 John W. Linville <linville@redhat.com> - 0.6.9-8
- Do not compress man pages manually in spec file
- Correct date of previous changelog entry
* Thu Jan 14 2010 John W. Linville <linville@redhat.com> - 0.6.9-7
2010-01-14 19:31:27 +00:00
- Enable 802.11n support
2009-12-21 20:06:43 +00:00
* Thu Dec 17 2009 John W. Linville <linville@redhat.com> - 0.6.9-6
- Enable RADIUS server
- Enable "wired" and "none" drivers
- Use BSD license option
* Wed Dec 16 2009 John W. Linville <linville@redhat.com> - 0.6.9-5
- Use openssl instead of gnutls (broken)
* Wed Dec 16 2009 John W. Linville <linville@redhat.com> - 0.6.9-4
- Remove wired.conf from doc (not in chosen configuration)
2009-12-21 20:06:43 +00:00
- Use $RPM_OPT_FLAGS
- Add dist tag
2009-12-21 20:06:43 +00:00
* Wed Dec 16 2009 John W. Linville <linville@redhat.com> - 0.6.9-3
- Use gnutls instead of openssl
- Turn-off internal EAP server (broken w/ gnutls)
- Remove doc files not applicable to chosen configuration
2009-12-21 20:06:43 +00:00
- Un-mangle README filename for logwatch sub-package
* Wed Dec 16 2009 John W. Linville <linville@redhat.com> - 0.6.9-2
- Initial build
- Start release at 2 to avoid conflicts w/ previous attempts by others