summaryrefslogtreecommitdiff
path: root/user/iputils/fix-init-of-cmsg.patch
diff options
context:
space:
mode:
Diffstat (limited to 'user/iputils/fix-init-of-cmsg.patch')
-rw-r--r--user/iputils/fix-init-of-cmsg.patch20
1 files changed, 20 insertions, 0 deletions
diff --git a/user/iputils/fix-init-of-cmsg.patch b/user/iputils/fix-init-of-cmsg.patch
new file mode 100644
index 000000000..76ebc16c2
--- /dev/null
+++ b/user/iputils/fix-init-of-cmsg.patch
@@ -0,0 +1,20 @@
+Fixes ping on s390x.
+
+diff --git a/ping.c b/ping.c
+index a0857a1..329553d 100644
+--- a/ping.c
++++ b/ping.c
+@@ -108,8 +108,11 @@ static int parsetos(char *str);
+ static struct {
+ struct cmsghdr cm;
+ struct in_pktinfo ipi;
+-} cmsg = { {sizeof(struct cmsghdr) + sizeof(struct in_pktinfo), SOL_IP, IP_PKTINFO},
+- {0, }};
++} cmsg = { .cm = {
++ .cmsg_len = sizeof(struct cmsghdr) + sizeof(struct in_pktinfo),
++ .cmsg_level = SOL_IP,
++ .cmsg_type = IP_PKTINFO},
++ .ipi = {0, }};
+ int cmsg_len;
+
+ struct sockaddr_in source;