wpa_supplicant-vl.spec 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426
  1. %bcond_with systemd
  2. %bcond_with gui
  3. Summary: WPA/WPA2/IEEE 802.1X Supplicant
  4. Name: wpa_supplicant
  5. Version: 2.9
  6. Release: 3%{?_dist_release}%{?with_systemd:.systemd}
  7. Group: network,system
  8. Vendor: Project Vine
  9. Distribution: Vine Linux
  10. License: BSD
  11. URL: https://w1.fi/wpa_supplicant/
  12. Source0: https://w1.fi/releases/%{name}-%{version}.tar.gz
  13. Source2: %{name}.conf
  14. Source3: %{name}.init.d
  15. Source4: %{name}.sysconfig
  16. Source6: %{name}.logrotate
  17. Source100: %{name}.service
  18. Source101: %{name}.sysconfig.systemd
  19. # distro specific customization and not suitable for upstream,
  20. # Fedora-specific updates to defconfig
  21. Patch0: wpa_supplicant-config.patch
  22. # works around busted drivers
  23. Patch1: wpa_supplicant-assoc-timeout.patch
  24. # ensures that debug output gets flushed immediately to help diagnose driver
  25. # bugs, not suitable for upstream
  26. Patch2: wpa_supplicant-flush-debug-output.patch
  27. # quiet an annoying and frequent syslog message
  28. Patch3: wpa_supplicant-quiet-scan-results-message.patch
  29. # distro specific customization for Qt4 build tools, not suitable for upstream
  30. Patch4: wpa_supplicant-gui-qt4.patch
  31. # fix AP mode PMF disconnection protection bypass
  32. Patch5: 0001-AP-Silently-ignore-management-frame-from-unexpected-.patch
  33. # fix some issues with P2P operation
  34. Patch6: 0001-P2P-Always-use-global-p2p_long_listen.patch
  35. Patch7: 0001-D-Bus-Fix-P2P-NULL-dereference-after-interface-remov.patch
  36. Patch8: 0001-p2p-Limit-P2P_DEVICE-name-to-appropriate-ifname-size.patch
  37. #fix for bz1915236
  38. Patch9: 0001-D-Bus-Allow-changing-an-interface-bridge-via-D-Bus.patch
  39. #expose OWE capability in D-Bus
  40. Patch10: 0001-dbus-Export-OWE-capability-and-OWE-BSS-key_mgmt.patch
  41. # CVE-2021-0326
  42. Patch11: 0001-P2P-Fix-copying-of-secondary-device-types-for-P2P-gr.patch
  43. # CVE-2021-27803
  44. Patch12: 0001-P2P-Fix-a-corner-case-in-peer-addition-based-on-PD-R.patch
  45. ## Vine patches
  46. BuildRoot: %{_tmppath}/%{name}-%{version}-root
  47. %if %{with gui}
  48. BuildRequires: qt4-devel
  49. %endif
  50. BuildRequires: openssl-devel
  51. BuildRequires: readline-devel
  52. BuildRequires: dbus-devel
  53. BuildRequires: libnl3-devel
  54. BuildRequires: docbook-utils
  55. %if %{with systemd}
  56. %{?systemd_requires}
  57. %else
  58. Requires(post): /sbin/chkconfig
  59. Requires(preun): /sbin/chkconfig /sbin/service
  60. Requires(postun): /sbin/service
  61. %endif
  62. %description
  63. wpa_supplicant is a WPA Supplicant for Linux, BSD and Windows with support
  64. for WPA and WPA2 (IEEE 802.11i / RSN). Supplicant is the IEEE 802.1X/WPA
  65. component that is used in the client stations. It implements key negotiation
  66. with a WPA Authenticator and it controls the roaming and IEEE 802.11
  67. authentication/association of the wlan driver.
  68. %if %{with gui}
  69. %package gui
  70. Summary: Graphical User Interface for %{name}
  71. Summary(ja): %{name} のグラフィカルユーザインタフェース
  72. Group: admin-tools
  73. %description gui
  74. Graphical User Interface for wpa_supplicant written using QT4
  75. %description -l ja gui
  76. QT4 を用いた wpa_supplicant のグラフィカルユーザインタフェース
  77. %endif
  78. %debug_package
  79. %prep
  80. %setup -q
  81. %autopatch -p1
  82. %build
  83. pushd wpa_supplicant
  84. cp defconfig .config
  85. export CFLAGS="${CFLAGS:-%optflags} -fPIE -DPIE"
  86. export CXXFLAGS="${CXXFLAGS:-%optflags} -fPIE -DPIE"
  87. export LDFLAGS="${LDFLAGS:-%optflags} -pie -Wl,-z,now"
  88. # yes, BINDIR=_sbindir
  89. export BINDIR="%{_sbindir}"
  90. export LIBDIR="%{_libdir}"
  91. make %{_smp_mflags} V=1
  92. %if %{with gui}
  93. make wpa_gui-qt4 %{_smp_mflags} V=1 QTDIR=%{_libdir}/qt4
  94. %endif
  95. make eapol_test
  96. popd
  97. %install
  98. rm -rf %{buildroot}
  99. %if %{with systemd}
  100. # systemd unit
  101. install -D -m 0644 %{SOURCE100} %{buildroot}%{_unitdir}/%{name}.service
  102. install -D -m 0644 %{SOURCE101} %{buildroot}%{_sysconfdir}/sysconfig/%{name}
  103. %else
  104. # init scripts
  105. install -D -m 0755 %{SOURCE3} %{buildroot}%{_sysconfdir}/rc.d/init.d/%{name}
  106. install -D -m 0644 %{SOURCE4} %{buildroot}%{_sysconfdir}/sysconfig/%{name}
  107. %endif
  108. # logrotate
  109. install -D -m 0644 %{SOURCE6} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
  110. # config
  111. install -D -m 0600 %{SOURCE2} %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf
  112. # binary
  113. install -d %{buildroot}/%{_sbindir}
  114. install -m 0755 %{name}/wpa_passphrase %{buildroot}/%{_sbindir}
  115. install -m 0755 %{name}/wpa_cli %{buildroot}/%{_sbindir}
  116. install -m 0755 %{name}/wpa_supplicant %{buildroot}/%{_sbindir}
  117. install -m 0755 wpa_supplicant/eapol_test %{buildroot}/%{_sbindir}
  118. install -D -m 0644 %{name}/dbus/dbus-wpa_supplicant.conf \
  119. %{buildroot}/%{_sysconfdir}/dbus-1/system.d/wpa_supplicant.conf
  120. install -D -m 0644 %{name}/dbus/fi.w1.wpa_supplicant1.service \
  121. %{buildroot}/%{_datadir}/dbus-1/system-services/fi.w1.wpa_supplicant1.service
  122. %if %{with gui}
  123. # gui
  124. install -d %{buildroot}/%{_bindir}
  125. install -m 0755 %{name}/wpa_gui-qt4/wpa_gui %{buildroot}/%{_bindir}
  126. %endif
  127. # running
  128. mkdir -p %{buildroot}/%{_localstatedir}/run/%{name}
  129. # man pages
  130. install -d %{buildroot}%{_mandir}/man{5,8}
  131. install -m 0644 %{name}/doc/docbook/*.8 %{buildroot}%{_mandir}/man8
  132. install -m 0644 %{name}/doc/docbook/*.5 %{buildroot}%{_mandir}/man5
  133. # some cleanup in docs
  134. rm -f %{name}/doc/.cvsignore
  135. rm -rf %{name}/doc/docbook
  136. chmod -R 0644 %{name}/examples/*.py
  137. %clean
  138. rm -rf %{buildroot}
  139. %post
  140. %if %{with systemd}
  141. %systemd_post wpa_supplicant.service
  142. %else
  143. if [ $1 = 1 ]; then
  144. /sbin/chkconfig --add %{name}
  145. fi
  146. %endif
  147. %preun
  148. %if %{with systemd}
  149. %systemd_preun wpa_supplicant.service
  150. %else
  151. if [ $1 = 0 -o -x /bin/systemctl ]; then
  152. /sbin/service %{name} stop > /dev/null 2>&1 ||:
  153. killall -TERM wpa_supplicant >/dev/null 2>&1 || :
  154. /sbin/chkconfig --del %{name}
  155. fi
  156. %endif
  157. %postun
  158. %if %{with systemd}
  159. %systemd_postun_with_restart wpa_supplicant.service
  160. %else
  161. if [ $1 -ge 1 ]; then
  162. /sbin/service %{name} condrestart > /dev/null 2>&1 ||:
  163. fi
  164. %endif
  165. %files
  166. %defattr(-, root, root)
  167. %license COPYING
  168. %doc %{name}/ChangeLog README %{name}/eap_testing.txt %{name}/todo.txt %{name}/wpa_supplicant.conf %{name}/examples
  169. %config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf
  170. %config(noreplace) %{_sysconfdir}/sysconfig/%{name}
  171. %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
  172. %if %{with systemd}
  173. %{_unitdir}/%{name}.service
  174. %else
  175. %{_sysconfdir}/rc.d/init.d/%{name}
  176. %endif
  177. %{_sysconfdir}/dbus-1/system.d/%{name}.conf
  178. %{_datadir}/dbus-1/system-services/fi.w1.wpa_supplicant1.service
  179. %{_sbindir}/wpa_passphrase
  180. %{_sbindir}/wpa_supplicant
  181. %{_sbindir}/wpa_cli
  182. %{_sbindir}/eapol_test
  183. %dir %{_localstatedir}/run/%{name}
  184. %dir %{_sysconfdir}/%{name}
  185. %{_mandir}/man8/*
  186. %{_mandir}/man5/*
  187. %if %{with gui}
  188. %files gui
  189. %defattr(-, root, root)
  190. %{_bindir}/wpa_gui
  191. %endif
  192. %changelog
  193. * Sat Mar 06 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 2.9-3
  194. - imported Patch11 from upstream to fix CVE-2021-0326.
  195. - imported Patch12 from upstream to fix CVE-2021-27803.
  196. * Mon Mar 01 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 2.9-2
  197. - diasabled gui as default.
  198. - added systemd support (disabled as default).
  199. - replaced all patches to rawhide's.
  200. * Tue Mar 24 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 2.9-1
  201. - new upstream release.
  202. - replaced all patches to rawhide's.
  203. * Tue Nov 27 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 2.6-2
  204. - rebuilt with openssl-1.1.1.
  205. - imported Patch62-64 from rawhide.
  206. * Sat Mar 03 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 2.6-1
  207. - updated to 2.6.
  208. - imported Patch9-60 from rawhide.
  209. * Thu Jun 30 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 2.5-3
  210. - rebuilt with new toolchain.
  211. * Tue Mar 29 2016 Yoji TOYODA <bsyamato@sea.plala.or.jp> - 2.5-2
  212. - rebuild with openssl-1.0.2g
  213. * Thu Oct 08 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> - 2.5-1
  214. - update to 2.5
  215. - update SOURCE1
  216. - remove Patch7 (libnl3-includes.patch)
  217. - add Patch 9,10,11 from Fedora
  218. - remove Patch 6, 700
  219. * Thu Feb 5 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> - 2.3-1
  220. - updated to 2.3
  221. - built with libnl3 instead of libnl
  222. - added Patch 6, 7 and 8 from Fedora
  223. - added Patch700
  224. * Mon Aug 22 2011 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 0.7.3-3
  225. - import Patch8 from Fedora 1:0.7.3-9 to fix some crashes
  226. - Wed Jul 27 2011 Dan Williams <dcbw@redhat.com> - 1:0.7.3-9
  227. - Fix various crashes with D-Bus interface (rh #678625) (rh #725517)
  228. * Mon Jan 10 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.7.3-2
  229. - rebuild with openssl-1.0.0c
  230. - add BuildRequires: qt4-designer, libnl-devel
  231. * Thu Jan 06 2011 Daisuke SUZUKI <daisuke@linux.or.jp> 0.7.3-1
  232. - new upstream release
  233. - update patches
  234. - change License to BSD due to linkage against OpsnSSL since there is no
  235. OpenSSL exception in upstream GPLv2 license text.
  236. - build with qt4
  237. - update build config
  238. * Wed Jan 28 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 0.6.4-1
  239. - new upstream release
  240. - remove hostap/madwifi/prism54 drivers, use 'wext' instead.
  241. - drop upstream patches
  242. - import some fedora patches
  243. - Handle encryption keys correctly when switching 802.11 modes (rh #459399)
  244. - Better scanning behavior on resume from suspend/hibernate
  245. - Better interaction with newer kernels and drivers
  246. * Sun Aug 03 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 0.6.3-2
  247. - start wpa_supplicant by default.
  248. * Sun Aug 03 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 0.6.3-1
  249. - new upstream release
  250. - import some fedora patches
  251. * Thu May 17 2007 Daisuke SUZUKI <daisuke@linux.or.jp> 0.5.7-0vl2
  252. - rebuild with new openssl
  253. * Mon May 14 2007 Daisuke SUZUKI <daisuke@linux.or.jp> 0.5.7-0vl1
  254. - new upstream release
  255. * Wed Jun 21 2006 Daisuke SUZUKI <daisuke@linux.or.jp> 0.4.8-0vl1
  256. - initial build for Vine Linux based on FC package.
  257. * Thu Apr 27 2006 Dan Williams <dcbw@redhat.com> - 0.4.8-10
  258. - Add fix for madwifi and WEP (wpa_supplicant/hostap bud #140) (#rh190075#)
  259. - Fix up madwifi-ng private ioctl()s for r1331 and later
  260. - Update madwifi headers to r1475
  261. * Tue Apr 25 2006 Dan Williams <dcbw@redhat.com> - 0.4.8-9
  262. - Enable Wired driver, PKCS12, and Smartcard options (#rh189805#)
  263. * Tue Apr 11 2006 Dan Williams <dcbw@redhat.com> - 0.4.8-8
  264. - Fix control interface key obfuscation a bit
  265. * Sun Apr 2 2006 Dan Williams <dcbw@redhat.com> - 0.4.8-7
  266. - Work around older & incorrect drivers that return null-terminated SSIDs
  267. * Mon Mar 27 2006 Dan Williams <dcbw@redhat.com> - 0.4.8-6
  268. - Add patch to make orinoco happy with WEP keys
  269. - Enable Prism54-specific driver
  270. - Disable ipw-specific driver; ipw2x00 should be using WEXT instead
  271. * Fri Mar 3 2006 Dan Williams <dcbw@redhat.com> - 0.4.8-5
  272. - Increase association timeout, mainly for drivers that don't
  273. fully support WPA ioctls yet
  274. * Fri Mar 3 2006 Dan Williams <dcbw@redhat.com> - 0.4.8-4
  275. - Add additional BuildRequires #rh181914#
  276. - Add prereq on chkconfig #rh182905# #rh182906#
  277. - Own /var/run/wpa_supplicant and /etc/wpa_supplicant #rh183696#
  278. * Wed Mar 1 2006 Dan Williams <dcbw@redhat.com> - 0.4.8-3
  279. - Install wpa_passphrase too #rh183480#
  280. * Mon Feb 27 2006 Dan Williams <dcbw@redhat.com> - 0.4.8-2
  281. - Don't expose private data on the control interface unless requested
  282. * Fri Feb 24 2006 Dan Williams <dcbw@redhat.com> - 0.4.8-1
  283. - Downgrade to 0.4.8 stable release rather than a dev release
  284. * Sun Feb 12 2006 Dan Williams <dcbw@redhat.com> - 0.5.1-3
  285. - Documentation cleanup (Terje Rosten <terje.rosten@ntnu.no>)
  286. * Sun Feb 12 2006 Dan Williams <dcbw@redhat.com> - 0.5.1-2
  287. - Move initscript to /etc/rc.d/init.d
  288. * Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 0.5.1-1.2
  289. - bump again for double-long bug on ppc(64)
  290. * Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 0.5.1-1.1
  291. - rebuilt for new gcc4.1 snapshot and glibc changes
  292. * Sun Feb 5 2006 Dan Williams <dcbw@redhat.com> 0.5.1-1
  293. - Update to 0.5.1
  294. - Add WE auth fallback to actually work with older drivers
  295. * Thu Jan 26 2006 Dan Williams <dcbw@redhat.com> 0.4.7-2
  296. - Bring package into Fedora Core
  297. - Add ap_scan control interface patch
  298. - Enable madwifi-ng driver
  299. * Sun Jan 15 2006 Douglas E. Warner <silfreed@silfreed.net> 0.4.7-1
  300. - upgrade to 0.4.7
  301. - added package w/ wpa_gui in it
  302. * Mon Nov 14 2005 Douglas E. Warner <silfreed@silfreed.net> 0.4.6-1
  303. - upgrade to 0.4.6
  304. - adding ctrl interface changes recommended
  305. by Hugo Paredes <hugo.paredes@e-know.org>
  306. * Sun Oct 9 2005 Douglas E. Warner <silfreed@silfreed.net> 0.4.5-1
  307. - upgrade to 0.4.5
  308. - updated config file wpa_supplicant is built with
  309. especially, the ipw2100 driver changed to just ipw
  310. and enabled a bunch more EAP
  311. - disabled dist tag
  312. * Thu Jun 30 2005 Douglas E. Warner <silfreed@silfreed.net> 0.4.2-3
  313. - fix typo in init script
  314. * Thu Jun 30 2005 Douglas E. Warner <silfreed@silfreed.net> 0.4.2-2
  315. - fixing init script using fedora-extras' template
  316. - removing chkconfig default startup
  317. * Tue Jun 21 2005 Douglas E. Warner <silfreed@silfreed.net> 0.4.2-1
  318. - upgrade to 0.4.2
  319. - new sample conf file that will use any unrestricted AP
  320. - make sysconfig config entry
  321. - new BuildRoot for Fedora Extras
  322. - adding dist tag to Release
  323. * Fri May 06 2005 Douglas E. Warner <silfreed@silfreed.net> 0.3.8-1
  324. - upgrade to 0.3.8
  325. * Thu Feb 10 2005 Douglas E. Warner <silfreed@silfreed.net> 0.3.6-2
  326. - compile ipw driver in
  327. * Wed Feb 09 2005 Douglas E. Warner <silfreed@silfreed.net> 0.3.6-1
  328. - upgrade to 0.3.6
  329. * Thu Dec 23 2004 Douglas E. Warner <silfreed@silfreed.net> 0.2.5-4
  330. - fixing init script
  331. * Mon Dec 20 2004 Douglas E. Warner <silfreed@silfreed.net> 0.2.5-3
  332. - fixing init script
  333. - adding post/preun items to add/remove via chkconfig
  334. * Mon Dec 20 2004 Douglas E. Warner <silfreed@silfreed.net> 0.2.5-2
  335. - adding sysV scripts
  336. * Mon Dec 20 2004 Douglas E. Warner <silfreed@silfreed.net> 0.2.5-1
  337. - Initial RPM release.