Gentoo Archives: gentoo-commits

From: "Tony Vroon (chainsaw)" <chainsaw@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in net-misc/asterisk: ChangeLog asterisk-1.8.3.3.ebuild asterisk-1.8.3.2.ebuild
Date: Tue, 26 Apr 2011 08:22:56
Message-Id: 20110426082244.2E84C20054@flycatcher.gentoo.org
1 chainsaw 11/04/26 08:22:44
2
3 Modified: ChangeLog
4 Added: asterisk-1.8.3.3.ebuild
5 Removed: asterisk-1.8.3.2.ebuild
6 Log:
7 Update in 1.8 branch for AST-2011-005 & AST-2011-006 (resource exhaustion & unauthenticated shell access, respectively). Remove vulnerable ebuild.
8
9 (Portage version: 2.1.9.46/cvs/Linux x86_64)
10
11 Revision Changes Path
12 1.305 net-misc/asterisk/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/ChangeLog?rev=1.305&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/ChangeLog?rev=1.305&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/ChangeLog?r1=1.304&r2=1.305
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/net-misc/asterisk/ChangeLog,v
21 retrieving revision 1.304
22 retrieving revision 1.305
23 diff -u -r1.304 -r1.305
24 --- ChangeLog 7 Apr 2011 21:59:16 -0000 1.304
25 +++ ChangeLog 26 Apr 2011 08:22:43 -0000 1.305
26 @@ -1,6 +1,13 @@
27 # ChangeLog for net-misc/asterisk
28 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk/ChangeLog,v 1.304 2011/04/07 21:59:16 flameeyes Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk/ChangeLog,v 1.305 2011/04/26 08:22:43 chainsaw Exp $
31 +
32 +*asterisk-1.8.3.3 (26 Apr 2011)
33 +
34 + 26 Apr 2011; Tony Vroon <chainsaw@g.o> -asterisk-1.8.3.2.ebuild,
35 + +asterisk-1.8.3.3.ebuild:
36 + Update in 1.8 branch for AST-2011-005 & AST-2011-006 (resource exhaustion &
37 + unauthenticated shell access, respectively). Remove vulnerable ebuild.
38
39 07 Apr 2011; Diego E. Pettenò <flameeyes@g.o>
40 asterisk-1.8.3.2.ebuild:
41
42
43
44 1.1 net-misc/asterisk/asterisk-1.8.3.3.ebuild
45
46 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/asterisk-1.8.3.3.ebuild?rev=1.1&view=markup
47 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/asterisk-1.8.3.3.ebuild?rev=1.1&content-type=text/plain
48
49 Index: asterisk-1.8.3.3.ebuild
50 ===================================================================
51 # Copyright 1999-2011 Gentoo Foundation
52 # Distributed under the terms of the GNU General Public License v2
53 # $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk/asterisk-1.8.3.3.ebuild,v 1.1 2011/04/26 08:22:44 chainsaw Exp $
54
55 EAPI=3
56 inherit autotools base eutils linux-info multilib
57
58 MY_P="${PN}-${PV/_/-}"
59
60 DESCRIPTION="Asterisk: A Modular Open Source PBX System"
61 HOMEPAGE="http://www.asterisk.org/"
62 SRC_URI="http://downloads.asterisk.org/pub/telephony/asterisk/${MY_P}.tar.gz
63 mirror://gentoo/gentoo-asterisk-patchset-0.3.tar.bz2"
64 LICENSE="GPL-2"
65 SLOT="0"
66 KEYWORDS="~amd64 ~x86"
67
68 IUSE="ais alsa bluetooth calendar +caps curl dahdi debug doc freetds gtalk h323 http iconv jabber jingle ldap lua misdn mysql newt +samples odbc osplookup oss portaudio postgres radius snmp span speex ssl sqlite sqlite3 srtp static syslog usb vorbis"
69
70 EPATCH_SUFFIX="patch"
71 PATCHES=( "${WORKDIR}/asterisk-patchset" )
72
73 RDEPEND="sys-libs/ncurses
74 dev-libs/popt
75 sys-libs/zlib
76 dev-libs/libxml2
77 ais? ( sys-cluster/openais )
78 alsa? ( media-libs/alsa-lib )
79 bluetooth? ( net-wireless/bluez )
80 calendar? ( net-libs/neon
81 dev-libs/libical
82 dev-libs/iksemel )
83 caps? ( sys-libs/libcap )
84 curl? ( net-misc/curl )
85 dahdi? ( >=net-libs/libpri-1.4.12_beta2
86 net-misc/dahdi-tools )
87 freetds? ( dev-db/freetds )
88 gtalk? ( dev-libs/iksemel )
89 h323? ( net-libs/openh323 )
90 http? ( dev-libs/gmime:0 )
91 iconv? ( virtual/libiconv )
92 jabber? ( dev-libs/iksemel )
93 jingle? ( dev-libs/iksemel )
94 ldap? ( net-nds/openldap )
95 lua? ( dev-lang/lua )
96 misdn? ( net-dialup/misdnuser )
97 mysql? ( dev-db/mysql )
98 newt? ( dev-libs/newt )
99 odbc? ( dev-db/unixODBC )
100 osplookup? ( net-libs/osptoolkit
101 dev-libs/openssl )
102 portaudio? ( media-libs/portaudio )
103 postgres? ( dev-db/postgresql-base )
104 radius? ( net-dialup/radiusclient-ng )
105 snmp? ( net-analyzer/net-snmp )
106 span? ( media-libs/spandsp )
107 speex? ( media-libs/speex )
108 sqlite? ( dev-db/sqlite:0 )
109 sqlite3? ( dev-db/sqlite:3 )
110 srtp? ( net-libs/libsrtp )
111 ssl? ( dev-libs/openssl )
112 usb? ( dev-libs/libusb
113 media-libs/alsa-lib )
114 vorbis? ( media-libs/libvorbis )"
115
116 DEPEND="${RDEPEND}
117 !net-misc/asterisk-addons
118 !net-misc/asterisk-chan_unistim
119 !net-misc/zaptel"
120
121 RDEPEND="${RDEPEND}
122 syslog? ( virtual/logger )"
123
124 PDEPEND="net-misc/asterisk-core-sounds
125 net-misc/asterisk-extra-sounds
126 net-misc/asterisk-moh-opsound"
127
128 S="${WORKDIR}/${MY_P}"
129
130 pkg_setup() {
131 CONFIG_CHECK="~!NF_CONNTRACK_SIP"
132 local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users
133 have reported that this module dropped critical SIP packets in their deployments. You
134 may want to disable it if you see such problems."
135 check_extra_config
136
137 enewgroup asterisk
138 enewuser asterisk -1 -1 /var/lib/asterisk "asterisk,dialout"
139 }
140
141 src_prepare() {
142 base_src_prepare
143 AT_M4DIR=autoconf eautoreconf
144 }
145
146 src_configure() {
147 econf \
148 --libdir="/usr/$(get_libdir)" \
149 --localstatedir="/var" \
150 --with-gsm=internal \
151 --with-popt \
152 --with-z \
153 $(use_with caps cap) \
154 $(use_with http gmime) \
155 $(use_with newt) \
156 $(use_with portaudio) \
157 $(use_with ssl crypto) \
158 $(use_with ssl)
159
160 #
161 # blank out sounds/sounds.xml file to prevent
162 # asterisk from installing sounds files (we pull them in via
163 # asterisk-{core,extra}-sounds and asterisk-moh-opsound.
164 #
165 >"${S}"/sounds/sounds.xml
166
167 # Compile menuselect binary for optional components
168 emake menuselect.makeopts
169 if use ais; then
170 menuselect/menuselect --enable res_ais menuselect.makeopts
171 else
172 menuselect/menuselect --disable res_ais menuselect.makeopts
173 fi
174 if use alsa; then
175 menuselect/menuselect --enable chan_alsa menuselect.makeopts
176 else
177 menuselect/menuselect --disable chan_alsa menuselect.makeopts
178 fi
179 if use bluetooth; then
180 menuselect/menuselect --enable chan_mobile menuselect.makeopts
181 else
182 menuselect/menuselect --disable chan_mobile menuselect.makeopts
183 fi
184 if use calendar; then
185 menuselect/menuselect --enable res_calendar menuselect.makeopts
186 menuselect/menuselect --enable res_calendar_caldav menuselect.makeopts
187 menuselect/menuselect --enable res_calendar_ews menuselect.makeopts
188 menuselect/menuselect --enable res_calendar_exchange menuselect.makeopts
189 menuselect/menuselect --enable res_calendar_icalendar menuselect.makeopts
190 else
191 menuselect/menuselect --disable res_calendar menuselect.makeopts
192 menuselect/menuselect --disable res_calendar_caldav menuselect.makeopts
193 menuselect/menuselect --disable res_calendar_ews menuselect.makeopts
194 menuselect/menuselect --disable res_calendar_exchange menuselect.makeopts
195 menuselect/menuselect --disable res_calendar_icalendar menuselect.makeopts
196 fi
197 if use curl; then
198 menuselect/menuselect --enable func_curl menuselect.makeopts
199 menuselect/menuselect --enable res_config_curl menuselect.makeopts
200 menuselect/menuselect --enable res_curl menuselect.makeopts
201 else
202 menuselect/menuselect --disable func_curl menuselect.makeopts
203 menuselect/menuselect --disable res_config_curl menuselect.makeopts
204 menuselect/menuselect --disable res_curl menuselect.makeopts
205 fi
206 if use dahdi; then
207 menuselect/menuselect --enable app_dahdibarge menuselect.makeopts
208 menuselect/menuselect --enable app_dahdiras menuselect.makeopts
209 menuselect/menuselect --enable chan_dahdi menuselect.makeopts
210 menuselect/menuselect --enable codec_dahdi menuselect.makeopts
211 menuselect/menuselect --enable res_timing_dahdi menuselect.makeopts
212 else
213 menuselect/menuselect --disable app_dahdibarge menuselect.makeopts
214 menuselect/menuselect --disable app_dahdiras menuselect.makeopts
215 menuselect/menuselect --disable chan_dahdi menuselect.makeopts
216 menuselect/menuselect --disable codec_dahdi menuselect.makeopts
217 menuselect/menuselect --disable res_timing_dahdi menuselect.makeopts
218 fi
219 if use freetds; then
220 menuselect/menuselect --enable cdr_tds menuselect.makeopts
221 menuselect/menuselect --enable cel_tds menuselect.makeopts
222 else
223 menuselect/menuselect --disable cdr_tds menuselect.makeopts
224 menuselect/menuselect --disable cel_tds menuselect.makeopts
225 fi
226 if use gtalk; then
227 menuselect/menuselect --enable chan_gtalk menuselect.makeopts
228 else
229 menuselect/menuselect --disable chan_gtalk menuselect.makeopts
230 fi
231 if use h323; then
232 menuselect/menuselect --enable chan_ooh323 menuselect.makeopts
233 else
234 menuselect/menuselect --disable chan_ooh323 menuselect.makeopts
235 fi
236 if use http; then
237 menuselect/menuselect --enable res_http_post menuselect.makeopts
238 else
239 menuselect/menuselect --disable res_http_post menuselect.makeopts
240 fi
241 if use iconv; then
242 menuselect/menuselect --enable func_iconv menuselect.makeopts
243 else
244 menuselect/menuselect --disable func_iconv menuselect.makeopts
245 fi
246 if use jabber; then
247 menuselect/menuselect --enable res_jabber menuselect.makeopts
248 else
249 menuselect/menuselect --disable res_jabber menuselect.makeopts
250 fi
251 if use jingle; then
252 menuselect/menuselect --enable chan_jingle menuselect.makeopts
253 else
254 menuselect/menuselect --disable chan_jingle menuselect.makeopts
255 fi
256 if use ldap; then
257 menuselect/menuselect --enable res_config_ldap menuselect.makeopts
258 else
259 menuselect/menuselect --disable res_config_ldap menuselect.makeopts
260 fi
261 if use lua; then
262 menuselect/menuselect --enable pbx_lua menuselect.makeopts
263 else
264 menuselect/menuselect --disable pbx_lua menuselect.makeopts
265 fi
266 if use misdn; then
267 menuselect/menuselect --enable chan_misdn menuselect.makeopts
268 else
269 menuselect/menuselect --disable chan_misdn menuselect.makeopts
270 fi
271 if use mysql; then
272 menuselect/menuselect --enable app_mysql menuselect.makeopts
273 menuselect/menuselect --enable cdr_mysql menuselect.makeopts
274 menuselect/menuselect --enable res_config_mysql menuselect.makeopts
275 else
276 menuselect/menuselect --disable app_mysql menuselect.makeopts
277 menuselect/menuselect --disable cdr_mysql menuselect.makeopts
278 menuselect/menuselect --disable res_config_mysql menuselect.makeopts
279 fi
280 if use odbc; then
281 menuselect/menuselect --enable cdr_adaptive_odbc menuselect.makeopts
282 menuselect/menuselect --enable cdr_odbc menuselect.makeopts
283 menuselect/menuselect --enable cel_odbc menuselect.makeopts
284 menuselect/menuselect --enable func_odbc menuselect.makeopts
285 menuselect/menuselect --enable res_config_odbc menuselect.makeopts
286 menuselect/menuselect --enable res_odbc menuselect.makeopts
287 else
288 menuselect/menuselect --disable cdr_adaptive_odbc menuselect.makeopts
289 menuselect/menuselect --disable cdr_odbc menuselect.makeopts
290 menuselect/menuselect --disable cel_odbc menuselect.makeopts
291 menuselect/menuselect --disable func_odbc menuselect.makeopts
292 menuselect/menuselect --disable res_config_odbc menuselect.makeopts
293 menuselect/menuselect --disable res_odbc menuselect.makeopts
294 fi
295 if use osplookup; then
296 menuselect/menuselect --enable app_osplookup menuselect.makeopts
297 else
298 menuselect/menuselect --disable app_osplookup menuselect.makeopts
299 fi
300 if use oss; then
301 menuselect/menuselect --enable chan_oss menuselect.makeopts
302 else
303 menuselect/menuselect --disable chan_oss menuselect.makeopts
304 fi
305 if use postgres; then
306 menuselect/menuselect --enable cdr_pgsql menuselect.makeopts
307 menuselect/menuselect --enable cel_pgsql menuselect.makeopts
308 menuselect/menuselect --enable res_config_pgsql menuselect.makeopts
309 else
310 menuselect/menuselect --disable cdr_pgsql menuselect.makeopts
311 menuselect/menuselect --disable cel_pgsql menuselect.makeopts
312 menuselect/menuselect --disable res_config_pgsql menuselect.makeopts
313 fi
314 if use radius; then
315 menuselect/menuselect --enable cdr_radius menuselect.makeopts
316 menuselect/menuselect --enable cel_radius menuselect.makeopts
317 else
318 menuselect/menuselect --disable cdr_radius menuselect.makeopts
319 menuselect/menuselect --disable cel_radius menuselect.makeopts
320 fi
321 if use snmp; then
322 menuselect/menuselect --enable res_snmp menuselect.makeopts
323 else
324 menuselect/menuselect --disable res_snmp menuselect.makeopts
325 fi
326 if use span; then
327 menuselect/menuselect --enable res_fax_spandsp menuselect.makeopts
328 else
329 menuselect/menuselect --disable res_fax_spandsp menuselect.makeopts
330 fi
331 if use speex; then
332 menuselect/menuselect --enable codec_speex menuselect.makeopts
333 menuselect/menuselect --enable func_speex menuselect.makeopts
334 else
335 menuselect/menuselect --disable codec_speex menuselect.makeopts
336 menuselect/menuselect --disable func_speex menuselect.makeopts
337 fi
338 if use sqlite; then
339 menuselect/menuselect --enable cdr_sqlite menuselect.makeopts
340 else
341 menuselect/menuselect --disable cdr_sqlite menuselect.makeopts
342 fi
343 if use sqlite3; then
344 menuselect/menuselect --enable cdr_sqlite3_custom menuselect.makeopts
345 menuselect/menuselect --enable cel_sqlite3_custom menuselect.makeopts
346 else
347 menuselect/menuselect --disable cdr_sqlite3_custom menuselect.makeopts
348 menuselect/menuselect --disable cel_sqlite3_custom menuselect.makeopts
349 fi
350 if use srtp; then
351 menuselect/menuselect --enable res_srtp menuselect.makeopts
352 else
353 menuselect/menuselect --disable res_srtp menuselect.makeopts
354 fi
355 if use syslog; then
356 menuselect/menuselect --enable cdr_syslog menuselect.makeopts
357 else
358 menuselect/menuselect --disable cdr_syslog menuselect.makeopts
359 fi
360 if use usb; then
361 menuselect/menuselect --enable chan_usbradio menuselect.makeopts
362 else
363 menuselect/menuselect --disable chan_usbradio menuselect.makeopts
364 fi
365 if use vorbis; then
366 menuselect/menuselect --enable format_ogg_vorbis menuselect.makeopts
367 else
368 menuselect/menuselect --disable format_ogg_vorbis menuselect.makeopts
369 fi
370 }
371
372 src_compile() {
373 ASTLDFLAGS="${LDFLAGS}" emake || die "emake failed"
374 }
375
376 src_install() {
377 mkdir -p "${D}"usr/$(get_libdir)/pkgconfig
378 emake DESTDIR="${D}" installdirs || die "emake installdirs failed"
379 emake DESTDIR="${D}" install || die "emake installdirs failed"
380
381 if use samples; then
382 emake DESTDIR="${D}" samples || die "emake samples failed"
383 for conffile in "${D}"etc/asterisk/*.*
384 do
385 chown asterisk:asterisk $conffile
386 chmod 0660 $conffile
387 done
388 einfo "Sample files have been installed"
389 else
390 einfo "Skipping installation of sample files..."
391 rm -f "${D}"var/lib/asterisk/mohmp3/*
392 rm -f "${D}"var/lib/asterisk/sounds/demo-*
393 rm -f "${D}"var/lib/asterisk/agi-bin/*
394 rm -f "${D}"etc/asterisk/*
395 fi
396 rm -rf "${D}"var/spool/asterisk/voicemail/default
397
398 # keep directories
399 diropts -m 0770 -o asterisk -g asterisk
400 keepdir /etc/asterisk
401 keepdir /var/lib/asterisk
402 keepdir /var/run/asterisk
403 keepdir /var/spool/asterisk
404 keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail}
405 diropts -m 0750 -o asterisk -g asterisk
406 keepdir /var/log/asterisk/{cdr-csv,cdr-custom}
407
408 newinitd "${FILESDIR}"/1.6.2/asterisk.initd2 asterisk
409 newconfd "${FILESDIR}"/1.6.0/asterisk.confd asterisk
410
411 # install the upgrade documentation
412 #
413 dodoc README UPGRADE* BUGS CREDITS
414
415 # install extra documentation
416 #
417 if use doc
418 then
419 dodoc doc/*.txt
420 dodoc doc/*.pdf
421 dodoc doc/PEERING
422 dodoc doc/CODING-GUIDELINES
423 dodoc doc/tex/*.pdf
424 fi
425
426 # install SIP scripts; bug #300832
427 #
428 dodoc "${FILESDIR}/1.6.2/sip_calc_auth"
429 dodoc "${FILESDIR}/1.6.2/find_call_sip_trace.sh"
430 dodoc "${FILESDIR}/1.6.2/find_call_ids.sh"
431 dodoc "${FILESDIR}/1.6.2/call_data.txt"
432
433 # install logrotate snippet; bug #329281
434 #
435 insinto /etc/logrotate.d
436 newins "${FILESDIR}/1.6.2/asterisk.logrotate3" asterisk
437 }
438
439 pkg_postinst() {
440 #
441 # Announcements, warnings, reminders...
442 #
443 einfo "Asterisk has been installed"
444 echo
445 elog "If you want to know more about asterisk, visit these sites:"
446 elog "http://www.asteriskdocs.org/"
447 elog "http://www.voip-info.org/wiki-Asterisk"
448 echo
449 elog "http://www.automated.it/guidetoasterisk.htm"
450 echo
451 elog "Gentoo VoIP IRC Channel:"
452 elog "#gentoo-voip @ irc.freenode.net"
453 echo
454 echo
455 elog "1.6 -> 1.8 changes that you may care about:"
456 elog "http://svn.asterisk.org/svn/${PN}/tags/${PV}/UPGRADE.txt"
457 elog "or: bzless ${ROOT}usr/share/doc/${PF}/UPGRADE.txt.bz2"
458 }
459
460 pkg_config() {
461 einfo "Do you want to reset file permissions and ownerships (y/N)?"
462
463 read tmp
464 tmp="$(echo $tmp | tr '[:upper:]' '[:lower:]')"
465
466 if [[ "$tmp" = "y" ]] ||\
467 [[ "$tmp" = "yes" ]]
468 then
469 einfo "Resetting permissions to defaults..."
470
471 for x in spool run lib log; do
472 chown -R asterisk:asterisk "${ROOT}"var/${x}/asterisk
473 chmod -R u=rwX,g=rwX,o= "${ROOT}"var/${x}/asterisk
474 done
475
476 chown -R root:asterisk "${ROOT}"etc/asterisk
477 chmod -R u=rwX,g=rwX,o= "${ROOT}"etc/asterisk
478
479 einfo "done"
480 else
481 einfo "skipping"
482 fi
483 }