aboutsummaryrefslogtreecommitdiffstats
path: root/main/quagga/musl-fix-msghdr-usage.patch
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2014-07-29 11:23:59 +0300
committerTimo Teräs <timo.teras@iki.fi>2014-07-29 11:25:13 +0300
commitc2b87ebc9e6b7aa3114187a1fbc8a39a8d424fbb (patch)
treeb5d3b51ee78ab465c899ad61f6996c7dee2ba531 /main/quagga/musl-fix-msghdr-usage.patch
parentf767b1d8e02fe18d6eea7f0364e0c8649b8cb5a7 (diff)
downloadaports-c2b87ebc9e6b7aa3114187a1fbc8a39a8d424fbb.tar.bz2
aports-c2b87ebc9e6b7aa3114187a1fbc8a39a8d424fbb.tar.xz
main/quagga: fix msghdr initializers
ref #3244
Diffstat (limited to 'main/quagga/musl-fix-msghdr-usage.patch')
-rw-r--r--main/quagga/musl-fix-msghdr-usage.patch42
1 files changed, 42 insertions, 0 deletions
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);