diff options
Diffstat (limited to 'main/quagga')
-rw-r--r-- | main/quagga/APKBUILD | 6 | ||||
-rw-r--r-- | main/quagga/musl-fix-msghdr-usage.patch | 42 |
2 files changed, 47 insertions, 1 deletions
diff --git a/main/quagga/APKBUILD b/main/quagga/APKBUILD index 5593a12dad..645d446711 100644 --- a/main/quagga/APKBUILD +++ b/main/quagga/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=quagga pkgver=0.99.23 -pkgrel=2 +pkgrel=3 pkgdesc="A free routing daemon replacing Zebra supporting RIP, OSPF and BGP." url="http://quagga.net/" arch="all" @@ -21,6 +21,7 @@ source="http://download.savannah.gnu.org/releases/quagga/quagga-$pkgver.tar.xz 0006-bgpd-don-t-send-NOTIFY-twice-for-malformed-attrs.patch 1001-bgpd-implement-next-hop-self-all.patch musl-fix-headers.patch + musl-fix-msghdr-usage.patch bgpd.initd zebra.initd zebra.confd @@ -86,6 +87,7 @@ d114d29e5463f910588b8a696af950bd 0005-bgpd-fix-IP-endianness-in-debug-message.p 265489d300fb6be9eb871fc3a29532ee 0006-bgpd-don-t-send-NOTIFY-twice-for-malformed-attrs.patch 2e78b3ea20041f94ff99798d37e1456e 1001-bgpd-implement-next-hop-self-all.patch df62890cccdb7d9c7cc9b96167b9da8c musl-fix-headers.patch +1ee2755d3e81e9867c518107ba9bdced musl-fix-msghdr-usage.patch e80a3df594eba8b09e19aa28d9283698 bgpd.initd 33d0e34f11460881161ab930d3d3b987 zebra.initd 34e06a1d2bc602ce691abc9ed169dd15 zebra.confd" @@ -98,6 +100,7 @@ f9d6bb23ca06ad024c75d0dbd7b1c73faa6fbc649ab11d27be16245342a1bae5 0004-bgpd-fix- 3b54a7af83a7bc2750930e9810a89709221067261b2d4326cadc7cd069beb334 0006-bgpd-don-t-send-NOTIFY-twice-for-malformed-attrs.patch 979ed4f7a3e3b604a2cd3c717df467e253a4b75160f870343e6d96af0c9687ec 1001-bgpd-implement-next-hop-self-all.patch f59f1f654e80ae9c80e6ea150e210d82aa799d44624fa361348fc242849d0ebc musl-fix-headers.patch +797c02b58640b5c6677d6288c56c6275fd8b48094d83fabc82eb944f4573ea77 musl-fix-msghdr-usage.patch 41471bfda120cb57bc0f40e87ec23a4f150d2b97c97ececdda6c408eab7cf9a3 bgpd.initd d6cc9280df63859ba711ad2071b38b9ce317d718c34840a2b101debef3fa7b56 zebra.initd f7a52d383f60270a5a8fee5d4ac522c5c0ec2b7c4b5252cff54e260f32d9b323 zebra.confd" @@ -110,6 +113,7 @@ bd99facfd6d4371d9982a8d56c36b924f6b4a8d0f4f61867ae26a07ca741bc0beb5c6522f138e499 6bfcec805233c52a8c7b042eb501c78b861386e0645cba726e4d4bd02a300219541ae0b63ff78e7fd239c2c332560ac9b4f4efcb2a50682c1df95572dd3c45af 0006-bgpd-don-t-send-NOTIFY-twice-for-malformed-attrs.patch 44677f3852b31f2f2776507b0da004431d12253b5897336d49525114a87945283a21d6dfe6162a73ff1f006fc235e31a753ac591aa70e6b8f4fbb3adb75e00f9 1001-bgpd-implement-next-hop-self-all.patch b0cbef2d1544efa8a194aa4f05bd17225073dff7526bfa84a6068d7ae5806ff045c62c914999e1ecae04c4b251713aed5d5b0a6a98db6c3176ddf122d76894c7 musl-fix-headers.patch +f0072ebcdde2f10216aa746831b5b11e49ba1a2b1499a416b7a35d80c5e2e30ae1da4f6128071d506d4f93e08bce560c1c5c7face244c8857957644044ee20ba musl-fix-msghdr-usage.patch d2bf7e8f2da49d0b039e72e76a77860b5b49d41a80550d6dc84791bbdec1d52e579393c5d42b45aa615991742421fef53ec1b92a5e740779b6060e20f5dd0413 bgpd.initd a4955fe54729ec8cb17b72f3d2205d0a4ba814a51a5eb3635a85339de9a2d2342e4814ef8b1e011803fa1dc3c6f9a23b178848e0812576876343104854feb723 zebra.initd 900972c6f98e561dfacf384111251db262326e8764b8c763a5ef639fa11c7949c03eef5e3bce324a4b1964fe45416d2db74ae1b6bc967f7d4ba48c2eeda017c4 zebra.confd" diff --git a/main/quagga/musl-fix-msghdr-usage.patch b/main/quagga/musl-fix-msghdr-usage.patch new file mode 100644 index 0000000000..77ba1a3776 --- /dev/null +++ b/main/quagga/musl-fix-msghdr-usage.patch @@ -0,0 +1,42 @@ +diff -ru quagga-0.99.23.orig/zebra/rt_netlink.c quagga-0.99.23/zebra/rt_netlink.c +--- quagga-0.99.23.orig/zebra/rt_netlink.c 2014-06-24 08:14:20.000000000 -0300 ++++ quagga-0.99.23/zebra/rt_netlink.c 2014-07-29 11:20:47.188233069 -0300 +@@ -282,9 +282,17 @@ + while (1) + { + char buf[NL_PKT_BUF_SIZE]; +- struct iovec iov = { buf, sizeof buf }; ++ struct iovec iov = { ++ .iov_base = buf, ++ .iov_len = sizeof buf ++ }; + struct sockaddr_nl snl; +- struct msghdr msg = { (void *) &snl, sizeof snl, &iov, 1, NULL, 0, 0 }; ++ struct msghdr msg = { ++ .msg_name = (void *) &snl, ++ .msg_namelen = sizeof snl, ++ .msg_iov = &iov, ++ .msg_iovlen = 1 ++ }; + struct nlmsghdr *h; + + status = recvmsg (nl->sock, &msg, 0); +@@ -1312,8 +1320,16 @@ + { + int status; + struct sockaddr_nl snl; +- struct iovec iov = { (void *) n, n->nlmsg_len }; +- struct msghdr msg = { (void *) &snl, sizeof snl, &iov, 1, NULL, 0, 0 }; ++ struct iovec iov = { ++ .iov_base = (void *) n, ++ .iov_len = n->nlmsg_len ++ }; ++ struct msghdr msg = { ++ .msg_name = (void *) &snl, ++ .msg_namelen = sizeof snl, ++ .msg_iov = &iov, ++ .msg_iovlen = 1, ++ }; + int save_errno; + + memset (&snl, 0, sizeof snl); |