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