Gentoo Archives: gentoo-commits

From: Sergey Popov <pinkbyte@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/quagga/files/, net-misc/quagga/
Date: Tue, 24 Jan 2017 10:36:01
Message-Id: 1485254152.20a70440a3d662b3f1fe250f5b9194aab0f3eae9.pinkbyte@gentoo
1 commit: 20a70440a3d662b3f1fe250f5b9194aab0f3eae9
2 Author: Sergey Popov <pinkbyte <AT> gentoo <DOT> org>
3 AuthorDate: Tue Jan 24 10:34:13 2017 +0000
4 Commit: Sergey Popov <pinkbyte <AT> gentoo <DOT> org>
5 CommitDate: Tue Jan 24 10:35:52 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20a70440
7
8 net-misc/quagga: fix quoting in eapply call, security cleanup
9
10 Gentoo-Bug: 581526
11
12 Package-Manager: portage-2.3.3
13
14 net-misc/quagga/Manifest | 1 -
15 .../quagga-1.0.20160315-bgpd-logging-fix.patch | 30 -----
16 ...a-1.0.20160315-ospfd-dangling-pointer-fix.patch | 134 --------------------
17 ...quagga-1.0.20160315-ripd-null-pointer-fix.patch | 40 ------
18 ...uagga-1.0.20160315-zebra-ipv6-ra-overflow.patch | 48 --------
19 net-misc/quagga/quagga-1.0.20160315-r4.ebuild | 137 ---------------------
20 net-misc/quagga/quagga-1.1.0-r2.ebuild | 2 +-
21 7 files changed, 1 insertion(+), 391 deletions(-)
22
23 diff --git a/net-misc/quagga/Manifest b/net-misc/quagga/Manifest
24 index ee21e46..ed50e66 100644
25 --- a/net-misc/quagga/Manifest
26 +++ b/net-misc/quagga/Manifest
27 @@ -1,3 +1,2 @@
28 DIST ht-20040304-classless-bgp.patch 1581 SHA256 39993890f9e31d662ed0564c732fb22392a901beb45b64261ffeadd9edf27887 SHA512 3df102d8ab88aaee1f109a2310602d6f734f2268252e5e42df752df7db7abeac526e969289481c4abfe905dcd41c35dee65196c48ac320fe9d083305451476e8 WHIRLPOOL cef99d64d52ab8c28bd672fb93dfbd8d716a31c76a5403496a6d104a5ff39531d6085134124d41fe4ff7adf895fa001cbe77b6e42846d849d6c108c81583d04e
29 -DIST quagga-1.0.20160315.tar.xz 1819488 SHA256 d284af5dd875dbba90ab875d40db5d68fdc9ede17a76f2af525f85344be56767 SHA512 ad633d189017a2cef68cf1653b85e082a0dc4fe146720a985da8cdf2aa4c61f2df8a8339419c986e9d74aa88f7f7109bc6d0c13d9ff4904a23852cee3e112edc WHIRLPOOL 6f0ac5da5fef382cf7a462f8d2c139bb0d8068e7b772cd48b63aa0752098515d6b5eb9a10a4e1fc7021085e0635248f6075d937901c6207d51bd0f284388541c
30 DIST quagga-1.1.0.tar.gz 2870278 SHA256 f7a43a9c59bfd3722002210530b2553c8d5cc05bfea5acd56d4f102b9f55dc63 SHA512 3b29a90c4f05593714bda3c702fd2c8886ce48fba2fbfb98f55cc04d1025edd5427944e9a9fb7cd630e5e8ccea388b72a8e611ab65c370e760f3f319d03f090f WHIRLPOOL ee4a78b1d20aa9e7e7aea1f0be2adee83efa0fd47a807a4ec1affb1e059fee156861b612f73716cbf80e96cc6676baed062b9440ea7664198078cd6760380573
31
32 diff --git a/net-misc/quagga/files/quagga-1.0.20160315-bgpd-logging-fix.patch b/net-misc/quagga/files/quagga-1.0.20160315-bgpd-logging-fix.patch
33 deleted file mode 100644
34 index 7c7f54c..00000000
35 --- a/net-misc/quagga/files/quagga-1.0.20160315-bgpd-logging-fix.patch
36 +++ /dev/null
37 @@ -1,30 +0,0 @@
38 -diff --git a/bgpd/bgp_packet.c b/bgpd/bgp_packet.c
39 -index 740b0f1..9cbb5b5 100644
40 ---- a/bgpd/bgp_packet.c
41 -+++ b/bgpd/bgp_packet.c
42 -@@ -1631,7 +1631,7 @@ bgp_update_receive (struct peer *peer, bgp_size_t size)
43 - NLRI_TYPE_MAX,
44 - };
45 - struct bgp_nlri nlris[NLRI_TYPE_MAX];
46 --
47 -+
48 - /* Status must be Established. */
49 - if (peer->status != Established)
50 - {
51 -@@ -1645,6 +1645,7 @@ bgp_update_receive (struct peer *peer, bgp_size_t size)
52 - memset (&attr, 0, sizeof (struct attr));
53 - memset (&extra, 0, sizeof (struct attr_extra));
54 - memset (&nlris, 0, sizeof nlris);
55 -+
56 - attr.extra = &extra;
57 -
58 - s = peer->ibuf;
59 -@@ -1781,6 +1782,8 @@ bgp_update_receive (struct peer *peer, bgp_size_t size)
60 - /* Parse any given NLRIs */
61 - for (i = NLRI_UPDATE; i < NLRI_TYPE_MAX; i++)
62 - {
63 -+ if (!nlris[i].nlri) continue;
64 -+
65 - /* We use afi and safi as indices into tables and what not. It would
66 - * be impossible, at this time, to support unknown afi/safis. And
67 - * anyway, the peer needs to be configured to enable the afi/safi
68
69 diff --git a/net-misc/quagga/files/quagga-1.0.20160315-ospfd-dangling-pointer-fix.patch b/net-misc/quagga/files/quagga-1.0.20160315-ospfd-dangling-pointer-fix.patch
70 deleted file mode 100644
71 index cc24fba..00000000
72 --- a/net-misc/quagga/files/quagga-1.0.20160315-ospfd-dangling-pointer-fix.patch
73 +++ /dev/null
74 @@ -1,134 +0,0 @@
75 -From bb01bdd740339b0c07d8ed0786811801b2a79192 Mon Sep 17 00:00:00 2001
76 -From: Jafar Al-Gharaibeh <jafar@××××××.com>
77 -Date: Thu, 21 Apr 2016 21:22:33 +0000
78 -Subject: ospfd: fix - correct neighbor index on changing/p2p/virtual links
79 -
80 -ospfd keeps a list of neighbor routers for each configured interface. This
81 - list is indexed using the neighbor router id in case of point-to-point and
82 - virtual link types, otherwise the list is indexed using the neighbor's
83 - source IP (RFC 2328, page 96). The router adds itself as a "pseudo" neighbor
84 - on each link, and also keeps a pointer called (nbr_self) to the neighbor
85 - structure. This takes place when the interface is first configured. Currently
86 - ospfd adds this pseudo neighbor before the link parameters are fully configure,
87 - including whether the link type is point-to-point or virtual link. This causes
88 - the pseudo neighbor to be always indexed using the source IP address regardless
89 - of th link type. For point-to-point and virtual links, this causes the lookup
90 - for the pseudo neighbor to always fail because the lookup is done using the
91 - router id whereas the neighbor was added using its source IP address.
92 - This becomes really problematic if there is a state change that requires a
93 - rebuild of nbr_self, changing the router id for example. When resetting
94 - nbr_self, the router first tries to remove the pseudo neighbor form its
95 - neighbor list on each link by looking it up and resetting any references to it
96 - before freeing the neighbor structure. since the lookup fails to retrieve any
97 - references in the case of point-to-point and virtual links the neighbor
98 - structure is freed leaving dangling references to it. Any access to the
99 - neighbor list after that is bound to stumble over this dangling pointer
100 - causing ospfd to crash.
101 -
102 -Signed-off-by: Jafar Al-Gharaibeh <jafar@××××××.com>
103 -Tested-by: NetDEF CI System <cisystem@××××××.org>
104 ----
105 -diff --git a/ospfd/ospf_interface.c b/ospfd/ospf_interface.c
106 -index f4242b0..d54bc47 100644
107 ---- a/ospfd/ospf_interface.c
108 -+++ b/ospfd/ospf_interface.c
109 -@@ -232,8 +232,8 @@ ospf_if_new (struct ospf *ospf, struct interface *ifp, struct prefix *p)
110 - /* Set default values. */
111 - ospf_if_reset_variables (oi);
112 -
113 -- /* Add pseudo neighbor. */
114 -- oi->nbr_self = ospf_nbr_new (oi);
115 -+ /* Set pseudo neighbor to Null */
116 -+ oi->nbr_self = NULL;
117 -
118 - oi->ls_upd_queue = route_table_init ();
119 - oi->t_ls_upd_event = NULL;
120 -@@ -902,7 +902,9 @@ ospf_vl_new (struct ospf *ospf, struct ospf_vl_data *vl_data)
121 - if (IS_DEBUG_OSPF_EVENT)
122 - zlog_debug ("ospf_vl_new(): set associated area to the backbone");
123 -
124 -- ospf_nbr_add_self (voi);
125 -+ /* Add pseudo neighbor. */
126 -+ ospf_nbr_self_reset (voi);
127 -+
128 - ospf_area_add_if (voi->area, voi);
129 -
130 - ospf_if_stream_set (voi);
131 -diff --git a/ospfd/ospf_neighbor.c b/ospfd/ospf_neighbor.c
132 -index 862de5e..06e63dd 100644
133 ---- a/ospfd/ospf_neighbor.c
134 -+++ b/ospfd/ospf_neighbor.c
135 -@@ -181,6 +181,35 @@ ospf_nbr_delete (struct ospf_neighbor *nbr)
136 -
137 - route_unlock_node (rn);
138 - }
139 -+ else
140 -+ {
141 -+ /*
142 -+ * This neighbor was not found, but before we move on and
143 -+ * free the neighbor structre, make sure that it was not
144 -+ * indexed incorrectly and ended up in the "worng" place
145 -+ */
146 -+
147 -+ /* Reverse the lookup rules */
148 -+ if (oi->type == OSPF_IFTYPE_VIRTUALLINK ||
149 -+ oi->type == OSPF_IFTYPE_POINTOPOINT)
150 -+ p.u.prefix4 = nbr->src;
151 -+ else
152 -+ p.u.prefix4 = nbr->router_id;
153 -+
154 -+ rn = route_node_lookup (oi->nbrs, &p);
155 -+ if (rn){
156 -+ /* We found the neighbor!
157 -+ * Now make sure it is not the exact same neighbor
158 -+ * structure that we are about to free
159 -+ */
160 -+ if (nbr == rn->info){
161 -+ /* Same neighbor, drop the reference to it */
162 -+ rn->info = NULL;
163 -+ route_unlock_node (rn);
164 -+ }
165 -+ route_unlock_node (rn);
166 -+ }
167 -+ }
168 -
169 - /* Free ospf_neighbor structure. */
170 - ospf_nbr_free (nbr);
171 -@@ -207,7 +236,9 @@ ospf_nbr_bidirectional (struct in_addr *router_id,
172 - void
173 - ospf_nbr_self_reset (struct ospf_interface *oi)
174 - {
175 -- ospf_nbr_delete (oi->nbr_self);
176 -+ if (oi->nbr_self)
177 -+ ospf_nbr_delete (oi->nbr_self);
178 -+
179 - oi->nbr_self = ospf_nbr_new (oi);
180 - ospf_nbr_add_self (oi);
181 - }
182 -diff --git a/ospfd/ospfd.c b/ospfd/ospfd.c
183 -index c9fcdc3..cc76e9e 100644
184 ---- a/ospfd/ospfd.c
185 -+++ b/ospfd/ospfd.c
186 -@@ -754,9 +754,6 @@ add_ospf_interface (struct connected *co, struct ospf_area *area)
187 - oi->params = ospf_lookup_if_params (co->ifp, oi->address->u.prefix4);
188 - oi->output_cost = ospf_if_get_output_cost (oi);
189 -
190 -- /* Add pseudo neighbor. */
191 -- ospf_nbr_add_self (oi);
192 --
193 - /* Relate ospf interface to ospf instance. */
194 - oi->ospf = area->ospf;
195 -
196 -@@ -765,6 +762,9 @@ add_ospf_interface (struct connected *co, struct ospf_area *area)
197 - skip network type setting. */
198 - oi->type = IF_DEF_PARAMS (co->ifp)->type;
199 -
200 -+ /* Add pseudo neighbor. */
201 -+ ospf_nbr_self_reset (oi);
202 -+
203 - ospf_area_add_if (oi->area, oi);
204 -
205 - /* if router_id is not configured, dont bring up
206 ---
207 -cgit v0.9.0.2
208 -
209
210 diff --git a/net-misc/quagga/files/quagga-1.0.20160315-ripd-null-pointer-fix.patch b/net-misc/quagga/files/quagga-1.0.20160315-ripd-null-pointer-fix.patch
211 deleted file mode 100644
212 index e48c304..00000000
213 --- a/net-misc/quagga/files/quagga-1.0.20160315-ripd-null-pointer-fix.patch
214 +++ /dev/null
215 @@ -1,40 +0,0 @@
216 -The rip_output_process function dereferenced a NULL
217 -pointer. Core file examination showed that tmp_rinfo
218 -was NULL on line 2435. Looking at the last diff
219 -associated with this commit, it was obvious that
220 -a formating mistake had been made in the loop over
221 -the route nodes list of possible paths.
222 -
223 -Signed-off-by: Donald Sharp <sharpd@×××××××××××××××.com>
224 -Reported-by: Sebastian Kricner <sebastian.kricner@×××××××.net>
225 ----
226 - ripd/ripd.c | 14 ++++++++------
227 - 1 file changed, 8 insertions(+), 6 deletions(-)
228 -
229 -diff --git a/ripd/ripd.c b/ripd/ripd.c
230 -index 82b1ada..0beb0e6 100644
231 ---- a/ripd/ripd.c
232 -+++ b/ripd/ripd.c
233 -@@ -2429,12 +2429,14 @@ rip_output_process (struct connected *ifc, struct sockaddr_in *to,
234 - struct rip_info *tmp_rinfo = NULL;
235 -
236 - for (ALL_LIST_ELEMENTS_RO (list, listnode, tmp_rinfo))
237 -- if (tmp_rinfo->type == ZEBRA_ROUTE_RIP &&
238 -- tmp_rinfo->ifindex == ifc->ifp->ifindex)
239 -- rinfo->metric_out = RIP_METRIC_INFINITY;
240 -- if (tmp_rinfo->type == ZEBRA_ROUTE_CONNECT &&
241 -- prefix_match((struct prefix *)p, ifc->address))
242 -- rinfo->metric_out = RIP_METRIC_INFINITY;
243 -+ {
244 -+ if (tmp_rinfo->type == ZEBRA_ROUTE_RIP &&
245 -+ tmp_rinfo->ifindex == ifc->ifp->ifindex)
246 -+ rinfo->metric_out = RIP_METRIC_INFINITY;
247 -+ if (tmp_rinfo->type == ZEBRA_ROUTE_CONNECT &&
248 -+ prefix_match((struct prefix *)p, ifc->address))
249 -+ rinfo->metric_out = RIP_METRIC_INFINITY;
250 -+ }
251 - }
252 -
253 - /* Prepare preamble, auth headers, if needs be */
254 ---
255 -1.9.1
256
257 diff --git a/net-misc/quagga/files/quagga-1.0.20160315-zebra-ipv6-ra-overflow.patch b/net-misc/quagga/files/quagga-1.0.20160315-zebra-ipv6-ra-overflow.patch
258 deleted file mode 100644
259 index 74b8add..00000000
260 --- a/net-misc/quagga/files/quagga-1.0.20160315-zebra-ipv6-ra-overflow.patch
261 +++ /dev/null
262 @@ -1,48 +0,0 @@
263 -commit cfb1fae25f8c092e0d17073eaf7bd428ce1cd546
264 -Author: David Lamparter <equinox@×××××××××××××××××.org>
265 -Date: Wed Aug 31 13:31:16 2016 +0200
266 -
267 - zebra: stack overrun in IPv6 RA receive code (CVE-2016-1245)
268 -
269 - The IPv6 RA code also receives ICMPv6 RS and RA messages.
270 - Unfortunately, by bad coding practice, the buffer size specified on
271 - receiving such messages mixed up 2 constants that in fact have
272 - different values.
273 -
274 - The code itself has:
275 - #define RTADV_MSG_SIZE 4096
276 - While BUFSIZ is system-dependent, in my case (x86_64 glibc):
277 - /usr/include/_G_config.h:#define _G_BUFSIZ 8192
278 - /usr/include/libio.h:#define _IO_BUFSIZ _G_BUFSIZ
279 - /usr/include/stdio.h:# define BUFSIZ _IO_BUFSIZ
280 -
281 - FreeBSD, OpenBSD, NetBSD and Illumos are not affected, since all of them
282 - have BUFSIZ == 1024.
283 -
284 - As the latter is passed to the kernel on recvmsg(), it's possible to
285 - overwrite 4kB of stack -- with ICMPv6 packets that can be globally sent
286 - to any of the system's addresses (using fragmentation to get to 8k).
287 -
288 - (The socket has filters installed limiting this to RS and RA packets,
289 - but does not have a filter for source address or TTL.)
290 -
291 - Issue discovered by trying to test other stuff, which randomly caused
292 - the stack to be smaller than 8kB in that code location, which then
293 - causes the kernel to report EFAULT (Bad address).
294 -
295 - Signed-off-by: David Lamparter <equinox@×××××××××××××××××.org>
296 - Reviewed-by: Donald Sharp <sharpd@×××××××××××××××.com>
297 -
298 -diff --git a/zebra/rtadv.c b/zebra/rtadv.c
299 -index d4ef1b8..2f62714 100644
300 ---- a/zebra/rtadv.c
301 -+++ b/zebra/rtadv.c
302 -@@ -482,7 +482,7 @@ rtadv_read (struct thread *thread)
303 - /* Register myself. */
304 - rtadv_event (zvrf, RTADV_READ, sock);
305 -
306 -- len = rtadv_recv_packet (sock, buf, BUFSIZ, &from, &ifindex, &hoplimit);
307 -+ len = rtadv_recv_packet (sock, buf, sizeof (buf), &from, &ifindex, &hoplimit);
308 -
309 - if (len < 0)
310 - {
311
312 diff --git a/net-misc/quagga/quagga-1.0.20160315-r4.ebuild b/net-misc/quagga/quagga-1.0.20160315-r4.ebuild
313 deleted file mode 100644
314 index 009b6d4..00000000
315 --- a/net-misc/quagga/quagga-1.0.20160315-r4.ebuild
316 +++ /dev/null
317 @@ -1,137 +0,0 @@
318 -# Copyright 1999-2016 Gentoo Foundation
319 -# Distributed under the terms of the GNU General Public License v2
320 -# $Id$
321 -
322 -EAPI=6
323 -
324 -CLASSLESS_BGP_PATCH=ht-20040304-classless-bgp.patch
325 -
326 -inherit autotools eutils flag-o-matic multilib pam readme.gentoo-r1 systemd user
327 -
328 -DESCRIPTION="A free routing daemon replacing Zebra supporting RIP, OSPF and BGP"
329 -HOMEPAGE="http://quagga.net/"
330 -SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz
331 - bgpclassless? ( http://hasso.linux.ee/stuff/patches/quagga/${CLASSLESS_BGP_PATCH} )"
332 -
333 -LICENSE="GPL-2"
334 -SLOT="0"
335 -KEYWORDS="alpha amd64 arm hppa ppc ~s390 sparc x86"
336 -
337 -IUSE="bgpclassless caps doc elibc_glibc ipv6 multipath ospfapi pam +readline snmp tcp-zebra"
338 -
339 -COMMON_DEPEND="
340 - caps? ( sys-libs/libcap )
341 - snmp? ( net-analyzer/net-snmp )
342 - readline? (
343 - sys-libs/readline:0
344 - pam? ( sys-libs/pam )
345 - )
346 - !elibc_glibc? ( dev-libs/libpcre )"
347 -DEPEND="${COMMON_DEPEND}
348 - app-arch/xz-utils
349 - sys-apps/gawk
350 - sys-devel/libtool:2"
351 -RDEPEND="${COMMON_DEPEND}
352 - sys-apps/iproute2"
353 -
354 -PATCHES=(
355 - "${FILESDIR}/${PN}-0.99.22.4-ipctl-forwarding.patch"
356 - "${FILESDIR}/${P}-ripd-null-pointer-fix.patch"
357 - "${FILESDIR}/${P}-ospfd-dangling-pointer-fix.patch"
358 - "${FILESDIR}/${P}-bgpd-logging-fix.patch"
359 - "${FILESDIR}/${P}-zebra-ipv6-ra-overflow.patch"
360 -)
361 -
362 -DISABLE_AUTOFORMATTING=1
363 -DOC_CONTENTS="Sample configuration files can be found in /usr/share/doc/${PF}/samples
364 -You have to create config files in /etc/quagga before
365 -starting one of the daemons.
366 -
367 -You can pass additional options to the daemon by setting the EXTRA_OPTS
368 -variable in their respective file in /etc/conf.d"
369 -
370 -pkg_setup() {
371 - enewgroup quagga
372 - enewuser quagga -1 -1 /var/empty quagga
373 -}
374 -
375 -src_prepare() {
376 - # Classless prefixes for BGP
377 - # http://hasso.linux.ee/doku.php/english:network:quagga
378 - use bgpclassless && eapply -p0 "${DISTDIR}/${CLASSLESS_BGP_PATCH}"
379 -
380 - epatch "${PATCHES[@]}"
381 - eapply_user
382 - eautoreconf
383 -}
384 -
385 -src_configure() {
386 - append-flags -fno-strict-aliasing
387 -
388 - # do not build PDF docs
389 - export ac_cv_prog_PDFLATEX=no
390 - export ac_cv_prog_LATEXMK=no
391 -
392 - econf \
393 - --enable-exampledir=/usr/share/doc/${PF}/samples \
394 - --enable-irdp \
395 - --enable-isisd \
396 - --enable-isis-topology \
397 - --enable-pimd \
398 - --enable-user=quagga \
399 - --enable-group=quagga \
400 - --enable-vty-group=quagga \
401 - --with-cflags="${CFLAGS}" \
402 - --with-pkg-extra-version="-gentoo" \
403 - --sysconfdir=/etc/quagga \
404 - --localstatedir=/run/quagga \
405 - --disable-static \
406 - $(use_enable caps capabilities) \
407 - $(usex snmp '--enable-snmp' '' '' '') \
408 - $(use_enable !elibc_glibc pcreposix) \
409 - $(use_enable tcp-zebra) \
410 - $(use_enable doc) \
411 - $(usex multipath $(use_enable multipath) '' '=0' '') \
412 - $(usex ospfapi '--enable-opaque-lsa --enable-ospf-te --enable-ospfclient' '' '' '') \
413 - $(use_enable readline vtysh) \
414 - $(use_with pam libpam) \
415 - $(use_enable ipv6 ripngd) \
416 - $(use_enable ipv6 ospf6d) \
417 - $(use_enable ipv6 rtadv)
418 -}
419 -
420 -src_install() {
421 - default
422 - prune_libtool_files
423 - readme.gentoo_create_doc
424 -
425 - keepdir /etc/quagga
426 - fowners root:quagga /etc/quagga
427 - fperms 0770 /etc/quagga
428 -
429 - # Path for PIDs before first reboot should be created here, bug #558194
430 - dodir /run/quagga
431 - fowners quagga:quagga /run/quagga
432 - fperms 0770 /run/quagga
433 -
434 - # Install systemd-related stuff, bug #553136
435 - systemd_dotmpfilesd "${FILESDIR}/systemd/quagga.conf"
436 - systemd_dounit "${FILESDIR}/systemd/zebra.service"
437 -
438 - # install zebra as a file, symlink the rest
439 - newinitd "${FILESDIR}"/quagga-services.init.3 zebra
440 -
441 - for service in bgpd isisd ospfd pimd ripd $(use ipv6 && echo ospf6d ripngd); do
442 - dosym zebra /etc/init.d/${service}
443 - systemd_dounit "${FILESDIR}/systemd/${service}.service"
444 - done
445 -
446 - use readline && use pam && newpamd "${FILESDIR}/quagga.pam" quagga
447 -
448 - insinto /etc/logrotate.d
449 - newins redhat/quagga.logrotate quagga
450 -}
451 -
452 -pkg_postinst() {
453 - readme.gentoo_print_elog
454 -}
455
456 diff --git a/net-misc/quagga/quagga-1.1.0-r2.ebuild b/net-misc/quagga/quagga-1.1.0-r2.ebuild
457 index c306fb5..a152fb2 100644
458 --- a/net-misc/quagga/quagga-1.1.0-r2.ebuild
459 +++ b/net-misc/quagga/quagga-1.1.0-r2.ebuild
460 @@ -57,7 +57,7 @@ src_prepare() {
461 # http://hasso.linux.ee/doku.php/english:network:quagga
462 use bgpclassless && eapply -p0 "${DISTDIR}/${CLASSLESS_BGP_PATCH}"
463
464 - eapply ${PATCHES[@]}
465 + eapply "${PATCHES[@]}"
466 eapply_user
467 eautoreconf
468 }