Contents of /trunk/core/wpa-supplicant/wpa-supplicant-2.6-r3.smage2
Parent Directory | Revision Log
Revision 29918 -
(show annotations)
(download)
Thu Oct 19 09:10:46 2017 UTC (6 years, 11 months ago) by niro
File size: 7159 byte(s)
Thu Oct 19 09:10:46 2017 UTC (6 years, 11 months ago) by niro
File size: 7159 byte(s)
auto added: ver bump to 2.6-r3
1 | # $Id$ |
2 | |
3 | PNAME="wpa-supplicant" |
4 | PVER="2.6" |
5 | PBUILD="r3" |
6 | |
7 | PCAT="net-wlan" |
8 | |
9 | DESCRIPTION="Linux WPA/WPA2/IEEE 802.1X Supplicant." |
10 | HOMEPAGE="http://hostap.epitest.fi/wpa_supplicant/" |
11 | |
12 | DEPEND=">= dev-libs/openssl-1.1 |
13 | >= sys-apps/dbus-1.10 |
14 | >= sys-libs/readline-7.0 |
15 | == dev-libs/libnl3-3.2.25" |
16 | |
17 | SDEPEND=">= dev-util/pkgconfig-0.25 |
18 | >= virtual/sed" |
19 | |
20 | SRCFILE="${PNAME/-/_}-${PVER}.tar.gz" |
21 | SRCDIR="${BUILDDIR}/${PNAME/-/_}-${PVER}/" |
22 | |
23 | # confd cvs revision |
24 | CONF_CVS_REV=1.3 |
25 | SKEL_CVS_REV=1.3 |
26 | |
27 | sminclude mtools dbus systemd |
28 | |
29 | SRC_URI=( |
30 | http://hostap.epitest.fi/releases/${SRCFILE} |
31 | mirror://${PNAME}/${SRCFILE} |
32 | mirror://${PNAME}/confd-wpa_supplicant.skel-${SKEL_CVS_REV} |
33 | mirror://${PNAME}/confd-wpa_supplicant-${CONF_CVS_REV} |
34 | mirror://${PNAME}/0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch |
35 | mirror://${PNAME}/0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch |
36 | mirror://${PNAME}/0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch |
37 | mirror://${PNAME}/0004-Prevent-installation-of-an-all-zero-TK.patch |
38 | mirror://${PNAME}/0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch |
39 | mirror://${PNAME}/0006-TDLS-Reject-TPK-TK-reconfiguration.patch |
40 | mirror://${PNAME}/0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch |
41 | mirror://${PNAME}/0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch |
42 | ) |
43 | |
44 | # latest stable branch |
45 | UP2TAG="release" |
46 | # latest devel branch |
47 | #UP2TAG="development" |
48 | UP2DATE="updatecmd ${HOMEPAGE} | grep -A1 'Latest ${UP2TAG}' | sed -n 's/.*-\(.*\).tar.*/\1/;$ p'" |
49 | |
50 | src_prepare() |
51 | { |
52 | local MCONFIG=${SRCDIR}/wpa_supplicant/.config |
53 | munpack ${SRCFILE} || die |
54 | cd ${SRCDIR} |
55 | |
56 | # krackattack patches |
57 | mpatch 0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch || die |
58 | mpatch 0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch || die |
59 | mpatch 0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch || die |
60 | mpatch 0004-Prevent-installation-of-an-all-zero-TK.patch || die |
61 | mpatch 0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch || die |
62 | mpatch 0006-TDLS-Reject-TPK-TK-reconfiguration.patch || die |
63 | mpatch 0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch || die |
64 | mpatch 0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch || die |
65 | |
66 | cd ${SRCDIR}/wpa_supplicant |
67 | |
68 | # broken Makefile |
69 | sed -i 's@/usr/local@$(PREFIX)@g' Makefile || die |
70 | |
71 | # basic setup |
72 | maddconfig -b "CONFIG_CTRL_IFACE=y" || die |
73 | maddconfig -b "CONFIG_BACKEND=file" || die |
74 | maddconfig -b "CONFIG_NO_RANDOM_POOL=y" || die |
75 | |
76 | # dbus support |
77 | maddconfig -b "CONFIG_CTRL_IFACE_DBUS=y" || die |
78 | # Add support for new DBus control interface |
79 | # (fi.w1.hostap.wpa_supplicant1) |
80 | maddconfig -b "CONFIG_CTRL_IFACE_DBUS_NEW=y" || die |
81 | # Add introspection support for new DBus control interface |
82 | maddconfig -b "CONFIG_CTRL_IFACE_DBUS_INTRO=y" || die |
83 | |
84 | # readline |
85 | maddconfig -b "CONFIG_READLINE=y" || die |
86 | |
87 | # libnl-3.2 |
88 | maddconfig -b "CONFIG_LIBNL32=y" || die |
89 | |
90 | # wi-fi protected setup (WPS) support |
91 | maddconfig -b "CONFIG_WPS=y" || die |
92 | # enable WPS support with NFC config method |
93 | maddconfig -b "CONFIG_WPS_NFC=y" || die |
94 | |
95 | # # enable mitigation against certain attacks against TKIP |
96 | # maddconfig -b "CONFIG_DELAYED_MIC_ERROR_REPORT=y" || die |
97 | |
98 | # # no debug |
99 | # maddconfig -b "CONFIG_NO_STDOUT_DEBUG=y" || die |
100 | |
101 | # add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt) |
102 | maddconfig -b "CONFIG_DEBUG_FILE=y" || die |
103 | |
104 | # support HT overrides (disable HT/HT40, mask MCS rates, etc.) |
105 | maddconfig -b "CONFIG_HT_OVERRIDES=y" || die |
106 | |
107 | # AP mode operations |
108 | maddconfig -b "CONFIG_AP=y" || die |
109 | |
110 | # P2P (Wi-Fi Direct) |
111 | maddconfig -b "CONFIG_P2P=y" || die |
112 | |
113 | # autoscan |
114 | maddconfig -b "CONFIG_AUTOSCAN_EXPONENTIAL=y" || die |
115 | # for periodic module: |
116 | maddconfig -b "CONFIG_AUTOSCAN_PERIODIC=y" || die |
117 | |
118 | # RSN IBSS/AdHoc support |
119 | maddconfig -b "CONFIG_IBSS_RSN=y" || die |
120 | |
121 | # simple background scan |
122 | maddconfig -b "CONFIG_BGSCAN_SIMPLE=y" || die |
123 | |
124 | # basic authentication methods |
125 | maddconfig -b "CONFIG_EAP_GTC=y" || die |
126 | maddconfig -b "CONFIG_EAP_MD5=y" || die |
127 | maddconfig -b "CONFIG_EAP_OTP=y" || die |
128 | # maddconfig -b "CONFIG_EAP_PSK=y" || die |
129 | maddconfig -b "CONFIG_IEEE8021X_EAPOL=y" || die |
130 | maddconfig -b "CONFIG_PKCS12=y" || die |
131 | # maddconfig -b "CONFIG_PAX=y" || die |
132 | # maddconfig -b "CONFIG_TLV=y" || die |
133 | maddconfig -b "CONFIG_PEERKEY=y" || die |
134 | # maddconfig -b "CONFIG_EAP_PAX=y" || die |
135 | # maddconfig -b "CONFIG_EAP_TLV=y" || die |
136 | |
137 | # ssl authentication methods |
138 | maddconfig -b "CONFIG_TLS=openssl" || die |
139 | maddconfig -b "CONFIG_EAP_LEAP=y" || die |
140 | maddconfig -b "CONFIG_EAP_MSCHAPV2=y" || die |
141 | maddconfig -b "CONFIG_EAP_PEAP=y" || die |
142 | maddconfig -b "CONFIG_EAP_TLS=y" || die |
143 | maddconfig -b "CONFIG_EAP_TTLS=y" || die |
144 | maddconfig -b "CONFIG_SMARTCARD=y" || die |
145 | |
146 | # linux specific drivers |
147 | # maddconfig -b "CONFIG_WIRELESS_EXTENSION=y" || die |
148 | # maddconfig -b "CONFIG_DRIVER_ATMEL=y" || die |
149 | # maddconfig -b "CONFIG_DRIVER_HOSTAP=y" || die |
150 | # maddconfig -b "CONFIG_DRIVER_IPW=y" || die |
151 | # maddconfig -b "CONFIG_DRIVER_NDISWRAPPER=y" || die |
152 | maddconfig -b "CONFIG_DRIVER_NL80211=y" || die |
153 | # maddconfig -b "CONFIG_DRIVER_PRISM54=y" || die |
154 | # maddconfig -b "CONFIG_DRIVER_RALINK=y" || die |
155 | maddconfig -b "CONFIG_DRIVER_WEXT=y" || die |
156 | maddconfig -b "CONFIG_DRIVER_WIRED=y" || die |
157 | # maddconfig -b "CONFIG_DRIVER_BROADCOM=y" || die |
158 | # maddconfig -b "CONFIG_DRIVER_HERMES=y" || die |
159 | # needs madwifi headers |
160 | # maddconfig -b "CONFIG_DRIVER_MADWIFI=y" || die |
161 | } |
162 | |
163 | src_compile() |
164 | { |
165 | cd ${SRCDIR}/wpa_supplicant |
166 | mmake PREFIX=/usr BINDIR=/usr/bin LIBDIR=/usr/$(mlibdir) || die |
167 | } |
168 | |
169 | src_install() |
170 | { |
171 | cd ${SRCDIR}/wpa_supplicant |
172 | make PREFIX=/usr BINDIR=/usr/bin LIBDIR=/usr/$(mlibdir) DESTDIR=${BINDIR} install || die |
173 | |
174 | # config |
175 | minstalldir /etc/wpa_supplicant |
176 | minstallfile wpa_supplicant.conf /etc/wpa_supplicant/ || die |
177 | |
178 | # skeletons |
179 | minstallconf confd-wpa_supplicant.skel-${SKEL_CVS_REV} wpa_supplicant.skel || die |
180 | |
181 | # rc-config |
182 | minstallconf confd-wpa_supplicant-${CONF_CVS_REV} wpa_supplicant || die |
183 | |
184 | # dbus |
185 | minstalldbusconfig dbus/dbus-wpa_supplicant.conf wpa_supplicant.conf || die |
186 | minstalldbussystemservice dbus/fi.epitest.hostap.WPASupplicant.service || die |
187 | minstalldbussystemservice dbus/fi.w1.wpa_supplicant1.service || die |
188 | |
189 | # systemd services |
190 | local i |
191 | for i in systemd/*.service |
192 | do |
193 | minstallunit "${i}" || die "${i}" |
194 | done |
195 | |
196 | # man pages |
197 | minstallman doc/docbook/*.8 || die |
198 | minstallman doc/docbook/*.5 || die |
199 | # but not priv pages |
200 | rm -f ${BINDIR}/usr/share/man/man8/wpa_{priv,gui}.8 || die |
201 | |
202 | minstalldocs COPYING wpa_supplicant/ChangeLog wpa_supplicant/README* || die |
203 | } |
204 | |
205 | postinstall() |
206 | { |
207 | if [ -f ${MROOT}/etc/wpa_supplicant.conf.example ] |
208 | then |
209 | rm ${MROOT}/etc/wpa_supplicant.conf.example |
210 | fi |
211 | |
212 | # migrate config |
213 | if [ -f ${MROOT}/etc/wpa_supplicant.auto ] |
214 | then |
215 | if [ -f ${MROOT}/etc/wpa_supplicant/wpa_supplicant.auto ] |
216 | then |
217 | rm ${MROOT}/etc/wpa_supplicant.auto |
218 | else |
219 | mv ${MROOT}/etc/wpa_supplicant.auto ${MROOT}/etc/wpa_supplicant/ |
220 | sed -i 's:/var/run/wpa_supplicant:/run/wpa_supplicant:g' \ |
221 | ${MROOT}/etc/wpa_supplicant/wpa_supplicant.auto |
222 | fi |
223 | fi |
224 | |
225 | mreloadunit dbus.service |
226 | mstartunit wpa_supplicant.service |
227 | } |
228 | |
229 | postremove() |
230 | { |
231 | mreloadunit dbus.service |
232 | mstopunit wpa_supplicant.service |
233 | } |