Gentoo Archives: gentoo-commits

From: "Lars Wendler (polynomial-c)" <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-admin/rsyslog: ChangeLog rsyslog-8.4.1.ebuild metadata.xml rsyslog-7.2.7.ebuild rsyslog-7.4.10.ebuild rsyslog-7.6.3-r1.ebuild
Date: Tue, 30 Sep 2014 13:09:43
Message-Id: 20140930130939.2A029696D@oystercatcher.gentoo.org
1 polynomial-c 14/09/30 13:09:39
2
3 Modified: ChangeLog metadata.xml
4 Added: rsyslog-8.4.1.ebuild
5 Removed: rsyslog-7.2.7.ebuild rsyslog-7.4.10.ebuild
6 rsyslog-7.6.3-r1.ebuild
7 Log:
8 Security bump (bug #524058). Removed old. Remote syslog PRI vulnerability (CVE-2014-3634)
9
10 (Portage version: 2.2.14_rc1/cvs/Linux x86_64, signed Manifest commit with key 0x981CA6FC)
11
12 Revision Changes Path
13 1.120 app-admin/rsyslog/ChangeLog
14
15 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/ChangeLog?rev=1.120&view=markup
16 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/ChangeLog?rev=1.120&content-type=text/plain
17 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/ChangeLog?r1=1.119&r2=1.120
18
19 Index: ChangeLog
20 ===================================================================
21 RCS file: /var/cvsroot/gentoo-x86/app-admin/rsyslog/ChangeLog,v
22 retrieving revision 1.119
23 retrieving revision 1.120
24 diff -u -r1.119 -r1.120
25 --- ChangeLog 20 Aug 2014 15:36:45 -0000 1.119
26 +++ ChangeLog 30 Sep 2014 13:09:39 -0000 1.120
27 @@ -1,6 +1,18 @@
28 # ChangeLog for app-admin/rsyslog
29 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
30 -# $Header: /var/cvsroot/gentoo-x86/app-admin/rsyslog/ChangeLog,v 1.119 2014/08/20 15:36:45 jer Exp $
31 +# $Header: /var/cvsroot/gentoo-x86/app-admin/rsyslog/ChangeLog,v 1.120 2014/09/30 13:09:39 polynomial-c Exp $
32 +
33 +*rsyslog-8.4.1 (30 Sep 2014)
34 +
35 + 30 Sep 2014; Lars Wendler <polynomial-c@g.o> -rsyslog-7.2.7.ebuild,
36 + -rsyslog-7.4.10.ebuild, -rsyslog-7.6.3-r1.ebuild, +rsyslog-8.4.1.ebuild,
37 + -files/6-stable/rsyslog-6.6.0-fix-runtime.patch,
38 + +files/8-stable/README.gentoo, +files/8-stable/rsyslog.confd,
39 + -files/rsyslog-7.2.5-json-c-pkgconfig.patch, +files/8-stable/50-default.conf,
40 + +files/8-stable/rsyslog.conf, +files/8-stable/rsyslog.initd,
41 + +files/8-stable/rsyslog.logrotate, metadata.xml:
42 + Security bump (bug #524058). Removed old. Remote syslog PRI vulnerability
43 + (CVE-2014-3634).
44
45 20 Aug 2014; Jeroen Roovers <jer@g.o> metadata.xml:
46 Add proxy-maint herd.
47
48
49
50 1.18 app-admin/rsyslog/metadata.xml
51
52 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/metadata.xml?rev=1.18&view=markup
53 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/metadata.xml?rev=1.18&content-type=text/plain
54 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/metadata.xml?r1=1.17&r2=1.18
55
56 Index: metadata.xml
57 ===================================================================
58 RCS file: /var/cvsroot/gentoo-x86/app-admin/rsyslog/metadata.xml,v
59 retrieving revision 1.17
60 retrieving revision 1.18
61 diff -u -r1.17 -r1.18
62 --- metadata.xml 20 Aug 2014 15:36:45 -0000 1.17
63 +++ metadata.xml 30 Sep 2014 13:09:39 -0000 1.18
64 @@ -1,7 +1,6 @@
65 <?xml version="1.0" encoding="UTF-8"?>
66 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
67 <pkgmetadata>
68 - <herd>proxy-maintainers</herd>
69 <maintainer>
70 <email>ultrabug@g.o</email>
71 <name>Ultrabug</name>
72 @@ -17,6 +16,7 @@
73 <flag name="elasticsearch">Build the Elasticsearch output module (requires <pkg>net-misc/curl</pkg>)</flag>
74 <flag name="extras">Add support for the UDP spoofing module (omudpspoof) using <pkg>net-libs/libnet</pkg></flag>
75 <flag name="gcrypt">Add support for encrypted log files using <pkg>dev-libs/libgcrypt</pkg></flag>
76 + <flag name="jemalloc">Use <pkg>dev-libs/jemalloc</pkg> for allocations.</flag>
77 <flag name="kerberos">Build the GSSAPI input and output module (requires <pkg>virtual/krb5</pkg>)</flag>
78 <flag name="mongodb">Build the MongoDB output module (requires <pkg>dev-libs/libmongo-client</pkg>)</flag>
79 <flag name="mysql">Build the MySQL databse output module (requires <pkg>virtual/mysql</pkg>)</flag>
80
81
82
83 1.1 app-admin/rsyslog/rsyslog-8.4.1.ebuild
84
85 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/rsyslog-8.4.1.ebuild?rev=1.1&view=markup
86 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/rsyslog-8.4.1.ebuild?rev=1.1&content-type=text/plain
87
88 Index: rsyslog-8.4.1.ebuild
89 ===================================================================
90 # Copyright 1999-2014 Gentoo Foundation
91 # Distributed under the terms of the GNU General Public License v2
92 # $Header: /var/cvsroot/gentoo-x86/app-admin/rsyslog/rsyslog-8.4.1.ebuild,v 1.1 2014/09/30 13:09:39 polynomial-c Exp $
93
94 EAPI=5
95 AUTOTOOLS_AUTORECONF=1
96
97 inherit autotools-utils eutils systemd
98
99 DESCRIPTION="An enhanced multi-threaded syslogd with database support and more"
100 HOMEPAGE="http://www.rsyslog.com/"
101 SRC_URI="
102 http://www.rsyslog.com/files/download/${PN}/${P}.tar.gz
103 doc? ( http://www.rsyslog.com/files/download/${PN}/${PN}-doc-${PV}.tar.gz )
104 "
105
106 LICENSE="GPL-3 LGPL-3 Apache-2.0"
107 KEYWORDS="~amd64 ~arm ~hppa ~x86"
108 SLOT="0"
109 IUSE="dbi debug doc elasticsearch +gcrypt jemalloc kerberos mongodb mysql normalize omudpspoof oracle postgres rabbitmq redis relp rfc3195 rfc5424hmac snmp ssl systemd usertools zeromq"
110
111 RDEPEND="
112 >=dev-libs/json-c-0.11:=
113 >=dev-libs/libestr-0.1.9
114 >=dev-libs/liblogging-1.0.1:=[stdlog]
115 >=sys-libs/zlib-1.2.5
116 dbi? ( >=dev-db/libdbi-0.8.3 )
117 elasticsearch? ( >=net-misc/curl-7.35.0 )
118 gcrypt? ( >=dev-libs/libgcrypt-1.5.3:= )
119 jemalloc? ( >=dev-libs/jemalloc-3.3.1 )
120 kerberos? ( virtual/krb5 )
121 mongodb? ( >=dev-libs/libmongo-client-0.1.4 )
122 mysql? ( virtual/mysql )
123 normalize? (
124 >=dev-libs/libee-0.4.0
125 >=dev-libs/liblognorm-1.0.0:=
126 )
127 omudpspoof? ( >=net-libs/libnet-1.1.6 )
128 oracle? ( >=dev-db/oracle-instantclient-basic-10.2 )
129 postgres? ( >=dev-db/postgresql-base-8.4.20 )
130 rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0 )
131 redis? ( >=dev-libs/hiredis-0.11.0 )
132 relp? ( >=dev-libs/librelp-1.2.5 )
133 rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
134 rfc5424hmac? ( >=dev-libs/openssl-0.9.8y )
135 snmp? ( >=net-analyzer/net-snmp-5.7.2 )
136 ssl? ( >=net-libs/gnutls-2.12.23 )
137 systemd? ( >=sys-apps/systemd-208 )
138 zeromq? ( >=net-libs/czmq-1.2.0 )"
139 DEPEND="${RDEPEND}
140 virtual/pkgconfig"
141
142 BRANCH="8-stable"
143
144 # Test suite requires a special setup or will always fail
145 RESTRICT="test"
146
147 # Maitainer note : open a bug to upstream
148 # showing that building in a separate dir fails
149 AUTOTOOLS_IN_SOURCE_BUILD=1
150
151 AUTOTOOLS_PRUNE_LIBTOOL_FILES="modules"
152
153 DOCS=(
154 AUTHORS
155 ChangeLog
156 "${FILESDIR}"/${BRANCH}/README.gentoo
157 )
158
159 src_unpack() {
160 unpack ${P}.tar.gz
161
162 if use doc; then
163 local doc_tarball="${PN}-doc-${PV}.tar.gz"
164
165 cd "${S}" || die "Cannot change dir into '$S'"
166 mkdir docs || die "Failed to create docs directory"
167 cd docs || die "Failed to change dir into '${S}/docs'"
168 unpack ${doc_tarball}
169 fi
170 }
171
172 src_configure() {
173 # Maintainer notes:
174 # * Guardtime support is missing because libgt isn't yet available
175 # in portage.
176 # * Hadoop's HDFS file system output module is currently not
177 # supported in Gentoo because nobody is able to test it
178 # (JAVA dependency).
179 # * dev-libs/hiredis doesn't provide pkg-config (see #504614,
180 # upstream PR 129 and 136) so we need to export HIREDIS_*
181 # variables because rsyslog's build system depends on pkg-config.
182
183 if use redis; then
184 export HIREDIS_LIBS="-L${EPREFIX}/usr/$(get_libdir) -lhiredis"
185 export HIREDIS_CFLAGS="-I${EPREFIX}/usr/include"
186 fi
187
188 local myeconfargs=(
189 --disable-generate-man-pages
190 # Input Plugins without depedencies
191 --enable-imfile
192 --enable-impstats
193 --enable-imptcp
194 --enable-imttcp
195 # Message Modificiation Plugins without depedencies
196 --enable-mmanon
197 --enable-mmaudit
198 --enable-mmfields
199 --enable-mmjsonparse
200 --enable-mmpstrucdata
201 --enable-mmsequence
202 --enable-mmutf8fix
203 # Output Modification Plugins without dependencies
204 --enable-mail
205 --enable-omprog
206 --enable-omruleset
207 --enable-omstdout
208 --enable-omuxsock
209 # Misc
210 --enable-pmaixforwardedfrom
211 --enable-pmciscoios
212 --enable-pmcisconames
213 --enable-pmlastmsg
214 --enable-pmrfc3164sd
215 --enable-pmsnare
216 # DB
217 $(use_enable dbi libdbi)
218 $(use_enable mongodb ommongodb)
219 $(use_enable mysql)
220 $(use_enable oracle)
221 $(use_enable postgres pgsql)
222 $(use_enable redis omhiredis)
223 # Debug
224 $(use_enable debug)
225 $(use_enable debug diagtools)
226 $(use_enable debug imdiag)
227 $(use_enable debug memcheck)
228 $(use_enable debug rtinst)
229 $(use_enable debug valgrind)
230 # Misc
231 $(use_enable elasticsearch)
232 $(use_enable gcrypt libgcrypt)
233 $(use_enable jemalloc)
234 $(use_enable kerberos gssapi-krb5)
235 $(use_enable normalize mmnormalize)
236 $(use_enable omudpspoof)
237 $(use_enable rabbitmq omrabbitmq)
238 $(use_enable relp)
239 $(use_enable rfc3195)
240 $(use_enable rfc5424hmac mmrfc5424addhmac)
241 $(use_enable snmp)
242 $(use_enable snmp mmsnmptrapd)
243 $(use_enable ssl gnutls)
244 $(use_enable systemd imjournal)
245 $(use_enable systemd omjournal)
246 $(use_enable usertools)
247 $(use_enable zeromq imzmq3)
248 $(use_enable zeromq omzmq3)
249 "$(systemd_with_unitdir)"
250 )
251
252 autotools-utils_src_configure
253 }
254
255 src_install() {
256 use doc && HTML_DOCS=( "${S}/docs/build/" )
257 autotools-utils_src_install
258
259 newconfd "${FILESDIR}/${BRANCH}/${PN}.confd" ${PN}
260 newinitd "${FILESDIR}/${BRANCH}/${PN}.initd" ${PN}
261
262 keepdir /var/empty/dev
263 keepdir /var/spool/${PN}
264 keepdir /etc/ssl/${PN}
265 keepdir /etc/${PN}.d
266
267 insinto /etc
268 newins "${FILESDIR}/${BRANCH}/${PN}.conf" ${PN}.conf
269
270 insinto /etc/rsyslog.d/
271 doins "${FILESDIR}/${BRANCH}/50-default.conf"
272
273 insinto /etc/logrotate.d/
274 newins "${FILESDIR}/${BRANCH}/${PN}.logrotate" ${PN}
275
276 if use mysql; then
277 insinto /usr/share/doc/${PF}/scripts/mysql
278 doins plugins/ommysql/{createDB.sql,contrib/delete_mysql}
279 fi
280
281 if use postgres; then
282 insinto /usr/share/doc/${PF}/scripts/pgsql
283 doins plugins/ompgsql/createDB.sql
284 fi
285 }
286
287 pkg_postinst() {
288 local advertise_readme=0
289
290 if [[ -z "${REPLACING_VERSIONS}" ]]; then
291 # This is a new installation
292
293 advertise_readme=1
294
295 if use mysql || use postgres; then
296 echo
297 elog "Sample SQL scripts for MySQL & PostgreSQL have been installed to:"
298 elog " /usr/share/doc/${PF}/scripts"
299 fi
300
301 if use ssl; then
302 echo
303 elog "To create a default CA and certificates for your server and clients, run:"
304 elog " emerge --config =${PF}"
305 elog "on your logging server. You can run it several times,"
306 elog "once for each logging client. The client certificates will be signed"
307 elog "using the CA certificate generated during the first run."
308 fi
309 fi
310
311 if [[ -z "${REPLACING_VERSIONS}" ]] || [[ ${REPLACING_VERSIONS} < 8.0 ]]; then
312 # Show this message until rsyslog-8.x
313 echo
314 elog "Since ${PN}-7.6.3 we no longer use the catch-all log target"
315 elog "\"/var/log/syslog\" due to its redundancy to the other log targets."
316
317 advertise_readme=1
318 fi
319
320 if [[ ${advertise_readme} -gt 0 ]]; then
321 # We need to show the README file location
322
323 echo ""
324 elog "Please read"
325 elog ""
326 elog " ${EPREFIX}/usr/share/doc/${PF}/README.gentoo*"
327 elog ""
328 elog "for more details."
329 fi
330 }
331
332 pkg_config() {
333 if ! use ssl ; then
334 einfo "There is nothing to configure for rsyslog unless you"
335 einfo "used USE=ssl to build it."
336 return 0
337 fi
338
339 # Make sure the certificates directory exists
340 CERTDIR="${EROOT}/etc/ssl/${PN}"
341 if [ ! -d "${CERTDIR}" ]; then
342 mkdir "${CERTDIR}" || die
343 fi
344 einfo "Your certificates will be stored in ${CERTDIR}"
345
346 # Create a default CA if needed
347 if [ ! -f "${CERTDIR}/${PN}_ca.cert.pem" ]; then
348 einfo "No CA key and certificate found in ${CERTDIR}, creating them for you..."
349 certtool --generate-privkey \
350 --outfile "${CERTDIR}/${PN}_ca.privkey.pem" &>/dev/null
351 chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
352
353 cat > "${T}/${PF}.$$" <<- _EOF
354 cn = Portage automated CA
355 ca
356 cert_signing_key
357 expiration_days = 3650
358 _EOF
359
360 certtool --generate-self-signed \
361 --load-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
362 --outfile "${CERTDIR}/${PN}_ca.cert.pem" \
363 --template "${T}/${PF}.$$" &>/dev/null
364 chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
365
366 # Create the server certificate
367 echo
368 einfon "Please type the Common Name of the SERVER you wish to create a certificate for: "
369 read -r CN
370
371 einfo "Creating private key and certificate for server ${CN}..."
372 certtool --generate-privkey \
373 --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null
374 chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
375
376 cat > "${T}/${PF}.$$" <<- _EOF
377 cn = ${CN}
378 tls_www_server
379 dns_name = ${CN}
380 expiration_days = 3650
381 _EOF
382
383 certtool --generate-certificate \
384 --outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
385 --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
386 --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
387 --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
388 --template "${T}/${PF}.$$" &>/dev/null
389 chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
390
391 else
392 einfo "Found existing ${CERTDIR}/${PN}_ca.cert.pem, skipping CA and SERVER creation."
393 fi
394
395 # Create a client certificate
396 echo
397 einfon "Please type the Common Name of the CLIENT you wish to create a certificate for: "
398 read -r CN
399
400 einfo "Creating private key and certificate for client ${CN}..."
401 certtool --generate-privkey \
402 --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null
403 chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
404
405 cat > "${T}/${PF}.$$" <<- _EOF
406 cn = ${CN}
407 tls_www_client
408 dns_name = ${CN}
409 expiration_days = 3650
410 _EOF
411
412 certtool --generate-certificate \
413 --outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
414 --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
415 --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
416 --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
417 --template "${T}/${PF}.$$" &>/dev/null
418 chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
419
420 rm -f "${T}/${PF}.$$"
421
422 echo
423 einfo "Here is the documentation on how to encrypt your log traffic:"
424 einfo " http://www.rsyslog.com/doc/rsyslog_tls.html"
425 }