wpa_supplicant-vl.spec 13 KB

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