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: asterisk-11.13.0.ebuild ChangeLog asterisk-11.10.2.ebuild
Date: Mon, 29 Sep 2014 10:20:20
Message-Id: 20140929102016.C6B27430@oystercatcher.gentoo.org
1 chainsaw 14/09/29 10:20:16
2
3 Modified: ChangeLog
4 Added: asterisk-11.13.0.ebuild
5 Removed: asterisk-11.10.2.ebuild
6 Log:
7 Additional resilience against invalid (ao2) object references. FORTIFY_SOURCE fix now upstream. Modify permissions to suit a multi-daemon setup as per Jaco Kroon in bug #507894.
8
9 (Portage version: 2.2.13/cvs/Linux x86_64, signed Manifest commit with key 0xB5058F9A)
10
11 Revision Changes Path
12 1.496 net-misc/asterisk/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/ChangeLog?rev=1.496&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/ChangeLog?rev=1.496&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/ChangeLog?r1=1.495&r2=1.496
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/net-misc/asterisk/ChangeLog,v
21 retrieving revision 1.495
22 retrieving revision 1.496
23 diff -u -r1.495 -r1.496
24 --- ChangeLog 20 Sep 2014 17:55:13 -0000 1.495
25 +++ ChangeLog 29 Sep 2014 10:20:16 -0000 1.496
26 @@ -1,6 +1,17 @@
27 # ChangeLog for net-misc/asterisk
28 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk/ChangeLog,v 1.495 2014/09/20 17:55:13 ago Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk/ChangeLog,v 1.496 2014/09/29 10:20:16 chainsaw Exp $
31 +
32 +*asterisk-11.13.0 (29 Sep 2014)
33 +
34 + 29 Sep 2014; Tony Vroon <chainsaw@g.o> +asterisk-11.13.0.ebuild:
35 + Additional resilience against invalid (ao2) object references. FORTIFY_SOURCE
36 + fix now upstream. Modify permissions to suit a multi-daemon setup as per Jaco
37 + Kroon in bug #507894.
38 +
39 + 22 Sep 2014; Tony Vroon <chainsaw@g.o> -asterisk-11.10.2.ebuild:
40 + Remove vulnerable ebuild for security bug #523216 as stabilisation is
41 + complete. 1.8 branch not affected.
42
43 20 Sep 2014; Agostino Sarubbo <ago@g.o> asterisk-11.12.1.ebuild:
44 Stable for x86, wrt bug #523216
45
46
47
48 1.1 net-misc/asterisk/asterisk-11.13.0.ebuild
49
50 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/asterisk-11.13.0.ebuild?rev=1.1&view=markup
51 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/asterisk-11.13.0.ebuild?rev=1.1&content-type=text/plain
52
53 Index: asterisk-11.13.0.ebuild
54 ===================================================================
55 # Copyright 1999-2014 Gentoo Foundation
56 # Distributed under the terms of the GNU General Public License v2
57 # $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk/asterisk-11.13.0.ebuild,v 1.1 2014/09/29 10:20:16 chainsaw Exp $
58
59 EAPI=5
60 inherit autotools base eutils linux-info multilib user
61
62 MY_P="${PN}-${PV/_/-}"
63
64 DESCRIPTION="Asterisk: A Modular Open Source PBX System"
65 HOMEPAGE="http://www.asterisk.org/"
66 SRC_URI="http://downloads.asterisk.org/pub/telephony/asterisk/releases/${MY_P}.tar.gz
67 mirror://gentoo/gentoo-asterisk-patchset-3.13.tar.bz2"
68 LICENSE="GPL-2"
69 SLOT="0"
70 KEYWORDS="~amd64 ~x86"
71
72 IUSE_VOICEMAIL_STORAGE="
73 +voicemail_storage_file
74 voicemail_storage_odbc
75 voicemail_storage_imap
76 "
77 IUSE="${IUSE_VOICEMAIL_STORAGE} alsa bluetooth calendar +caps cluster curl dahdi debug doc freetds gtalk http iconv ilbc jabber ldap libedit lua mysql newt +samples odbc osplookup oss portaudio postgres radius selinux snmp span speex srtp static syslog vorbis"
78 IUSE_EXPAND="VOICEMAIL_STORAGE"
79 REQUIRED_USE="gtalk? ( jabber )
80 ^^ ( ${IUSE_VOICEMAIL_STORAGE/+/} )
81 voicemail_storage_odbc? ( odbc )
82 "
83
84 EPATCH_SUFFIX="patch"
85 PATCHES=( "${WORKDIR}/asterisk-patchset" )
86
87 RDEPEND="dev-db/sqlite:3
88 dev-libs/popt
89 dev-libs/libxml2
90 dev-libs/openssl
91 sys-libs/ncurses
92 sys-libs/zlib
93 alsa? ( media-libs/alsa-lib )
94 bluetooth? ( net-wireless/bluez )
95 calendar? ( net-libs/neon
96 dev-libs/libical
97 dev-libs/iksemel )
98 caps? ( sys-libs/libcap )
99 cluster? ( sys-cluster/corosync )
100 curl? ( net-misc/curl )
101 dahdi? ( >=net-libs/libpri-1.4.12_beta2
102 net-misc/dahdi-tools )
103 freetds? ( dev-db/freetds )
104 gtalk? ( dev-libs/iksemel )
105 http? ( dev-libs/gmime:2.6 )
106 iconv? ( virtual/libiconv )
107 ilbc? ( dev-libs/ilbc-rfc3951 )
108 jabber? ( dev-libs/iksemel )
109 ldap? ( net-nds/openldap )
110 libedit? ( dev-libs/libedit )
111 lua? ( dev-lang/lua )
112 mysql? ( virtual/mysql )
113 newt? ( dev-libs/newt )
114 odbc? ( dev-db/unixODBC )
115 osplookup? ( net-libs/osptoolkit )
116 portaudio? ( media-libs/portaudio )
117 postgres? ( dev-db/postgresql-base )
118 radius? ( net-dialup/radiusclient-ng )
119 selinux? ( sec-policy/selinux-asterisk )
120 snmp? ( net-analyzer/net-snmp )
121 span? ( media-libs/spandsp )
122 speex? ( media-libs/speex )
123 srtp? ( net-libs/libsrtp )
124 vorbis? ( media-libs/libvorbis )"
125
126 DEPEND="${RDEPEND}
127 !net-libs/openh323
128 !net-libs/pjsip
129 voicemail_storage_imap? ( virtual/imap-c-client )
130 virtual/pkgconfig
131 "
132
133 RDEPEND="${RDEPEND}
134 syslog? ( virtual/logger )"
135
136 PDEPEND="net-misc/asterisk-core-sounds
137 net-misc/asterisk-extra-sounds
138 net-misc/asterisk-moh-opsound"
139
140 S="${WORKDIR}/${MY_P}"
141
142 pkg_setup() {
143 CONFIG_CHECK="~!NF_CONNTRACK_SIP"
144 local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users
145 have reported that this module dropped critical SIP packets in their deployments. You
146 may want to disable it if you see such problems."
147 check_extra_config
148
149 enewgroup asterisk
150 enewgroup dialout 20
151 enewuser asterisk -1 -1 /var/lib/asterisk "asterisk,dialout"
152 }
153
154 src_prepare() {
155 base_src_prepare
156 AT_M4DIR=autoconf eautoreconf
157 }
158
159 src_configure() {
160 local vmst
161
162 econf \
163 --libdir="/usr/$(get_libdir)" \
164 --localstatedir="/var" \
165 --with-crypto \
166 --with-gsm=internal \
167 --with-popt \
168 --with-ssl \
169 --with-z \
170 --without-pwlib \
171 $(use_with caps cap) \
172 $(use_with http gmime) \
173 $(use_with newt) \
174 $(use_with portaudio)
175
176 # Blank out sounds/sounds.xml file to prevent
177 # asterisk from installing sounds files (we pull them in via
178 # asterisk-{core,extra}-sounds and asterisk-moh-opsound.
179 >"${S}"/sounds/sounds.xml
180
181 # That NATIVE_ARCH chatter really is quite bothersome
182 sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system"
183
184 # Compile menuselect binary for optional components
185 emake menuselect.makeopts
186
187 # Broken functionality is forcibly disabled (bug #360143)
188 menuselect/menuselect --disable chan_misdn menuselect.makeopts
189 menuselect/menuselect --disable chan_ooh323 menuselect.makeopts
190
191 # Utility set is forcibly enabled (bug #358001)
192 menuselect/menuselect --enable smsq menuselect.makeopts
193 menuselect/menuselect --enable streamplayer menuselect.makeopts
194 menuselect/menuselect --enable aelparse menuselect.makeopts
195 menuselect/menuselect --enable astman menuselect.makeopts
196
197 # this is connected, otherwise it would not find
198 # ast_pktccops_gate_alloc symbol
199 menuselect/menuselect --enable chan_mgcp menuselect.makeopts
200 menuselect/menuselect --enable res_pktccops menuselect.makeopts
201
202 # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available
203 menuselect/menuselect --enable pbx_dundi menuselect.makeopts
204 menuselect/menuselect --enable func_aes menuselect.makeopts
205 menuselect/menuselect --enable chan_iax2 menuselect.makeopts
206
207 # SQlite3 is now the main database backend, enable related features
208 menuselect/menuselect --enable cdr_sqlite3_custom menuselect.makeopts
209 menuselect/menuselect --enable cel_sqlite3_custom menuselect.makeopts
210
211 # The others are based on USE-flag settings
212 use_select() {
213 local state=$(use "$1" && echo enable || echo disable)
214 shift # remove use from parameters
215
216 while [[ -n $1 ]]; do
217 menuselect/menuselect --${state} "$1" menuselect.makeopts
218 shift
219 done
220 }
221
222 use_select alsa chan_alsa
223 use_select bluetooth chan_mobile
224 use_select calendar res_calendar res_calendar_{caldav,ews,exchange,icalendar}
225 use_select cluster res_corosync
226 use_select curl func_curl res_config_curl res_curl
227 use_select dahdi app_dahdibarge app_dahdiras chan_dahdi codec_dahdi res_timing_dahdi
228 use_select freetds {cdr,cel}_tds
229 use_select gtalk chan_motif
230 use_select http res_http_post
231 use_select iconv func_iconv
232 use_select jabber res_xmpp
233 use_select ilbc codec_ilbc format_ilbc
234 use_select ldap res_config_ldap
235 use_select lua pbx_lua
236 use_select mysql app_mysql cdr_mysql res_config_mysql
237 use_select odbc cdr_adaptive_odbc res_config_odbc {cdr,cel,res,func}_odbc
238 use_select osplookup app_osplookup
239 use_select oss chan_oss
240 use_select postgres {cdr,cel}_pgsql res_config_pgsql
241 use_select radius {cdr,cel}_radius
242 use_select snmp res_snmp
243 use_select span res_fax_spandsp
244 use_select speex {codec,func}_speex
245 use_select srtp res_srtp
246 use_select syslog cdr_syslog
247 use_select vorbis format_ogg_vorbis
248
249 # Voicemail storage ...
250 for vmst in ${IUSE_VOICEMAIL_STORAGE/+/}; do
251 if use ${vmst}; then
252 menuselect/menuselect --enable $(echo ${vmst##*_} | tr '[:lower:]' '[:upper:]')_STORAGE menuselect.makeopts
253 fi
254 done
255
256 if use debug; then
257 for o in DONT_OPTIMIZE DEBUG_THREADS BETTER_BACKTRACES; do
258 menuselect/menuselect --enable $o menuselect.makeopts
259 done
260 fi
261 }
262
263 src_compile() {
264 ASTLDFLAGS="${LDFLAGS}" emake
265 }
266
267 src_install() {
268 mkdir -p "${D}"usr/$(get_libdir)/pkgconfig || die
269 emake DESTDIR="${D}" installdirs
270 emake DESTDIR="${D}" install
271
272 if use radius; then
273 insinto /etc/radiusclient-ng/
274 doins contrib/dictionary.digium
275 fi
276 diropts -m 0750 -o root -g asterisk
277 keepdir /etc/asterisk
278 if use samples; then
279 emake DESTDIR="${D}" samples
280 for conffile in "${D}"etc/asterisk/*.*
281 do
282 chown root:root $conffile
283 chmod 0644 $conffile
284 done
285 einfo "Sample files have been installed"
286 else
287 einfo "Skipping installation of sample files..."
288 rm -f "${D}"var/lib/asterisk/mohmp3/* || die
289 rm -f "${D}"var/lib/asterisk/sounds/demo-* || die
290 rm -f "${D}"var/lib/asterisk/agi-bin/* || die
291 rm -f "${D}"etc/asterisk/* || die
292 fi
293 rm -rf "${D}"var/spool/asterisk/voicemail/default || die
294
295 # keep directories
296 diropts -m 0770 -o asterisk asterisk
297 keepdir /var/lib/asterisk
298 keepdir /var/spool/asterisk
299 keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail}
300 diropts -m 0750 -o asterisk -g asterisk
301 keepdir /var/log/asterisk/{cdr-csv,cdr-custom}
302
303 newinitd "${FILESDIR}"/1.8.0/asterisk.initd7 asterisk
304 newconfd "${FILESDIR}"/1.8.0/asterisk.confd asterisk
305
306 # install the upgrade documentation
307 #
308 dodoc README UPGRADE* BUGS CREDITS
309
310 # install extra documentation
311 #
312 if use doc
313 then
314 dodoc doc/*.txt
315 dodoc doc/*.pdf
316 fi
317
318 # install SIP scripts; bug #300832
319 #
320 dodoc "${FILESDIR}/1.6.2/sip_calc_auth"
321 dodoc "${FILESDIR}/1.8.0/find_call_sip_trace.sh"
322 dodoc "${FILESDIR}/1.8.0/find_call_ids.sh"
323 dodoc "${FILESDIR}/1.6.2/call_data.txt"
324
325 # install logrotate snippet; bug #329281
326 #
327 insinto /etc/logrotate.d
328 newins "${FILESDIR}/1.6.2/asterisk.logrotate3" asterisk
329 }
330
331 pkg_postinst() {
332 #
333 # Announcements, warnings, reminders...
334 #
335 einfo "Asterisk has been installed"
336 echo
337 elog "If you want to know more about asterisk, visit these sites:"
338 elog "http://www.asteriskdocs.org/"
339 elog "http://www.voip-info.org/wiki-Asterisk"
340 echo
341 elog "http://www.automated.it/guidetoasterisk.htm"
342 echo
343 elog "Gentoo VoIP IRC Channel:"
344 elog "#gentoo-voip @ irc.freenode.net"
345 echo
346 echo
347 elog "Please read the Asterisk 11 upgrade document:"
348 elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+11"
349 }
350
351 pkg_config() {
352 einfo "Do you want to reset file permissions and ownerships (y/N)?"
353
354 read tmp
355 tmp="$(echo $tmp | tr '[:upper:]' '[:lower:]')"
356
357 if [[ "$tmp" = "y" ]] ||\
358 [[ "$tmp" = "yes" ]]
359 then
360 einfo "Resetting permissions to defaults..."
361
362 for x in spool run lib log; do
363 chown -R asterisk:asterisk "${ROOT}"var/${x}/asterisk
364 chmod -R u=rwX,g=rwX,o= "${ROOT}"var/${x}/asterisk
365 done
366
367 chown -R root:asterisk "${ROOT}"etc/asterisk
368 chmod -R u=rwX,g=rwX,o= "${ROOT}"etc/asterisk
369
370 einfo "done"
371 else
372 einfo "skipping"
373 fi
374 }