diff -Naur iputils-s20121221.orig/ping.c iputils-s20121221/ping.c
--- iputils-s20121221.orig/ping.c	2014-01-24 15:05:02.082841335 +0000
+++ iputils-s20121221/ping.c	2014-01-24 15:17:12.975882203 +0000
@@ -774,9 +774,16 @@
 
 	do {
 		static struct iovec iov = {outpack, 0};
-		static struct msghdr m = { &whereto, sizeof(whereto),
-						   &iov, 1, &cmsg, 0, 0 };
-		m.msg_controllen = cmsg_len;
+		static struct msghdr m;
+
+		m.msg_name = &whereto;
+		m.msg_namelen = sizeof(whereto);
+		m.msg_iov = &iov;
+		m.msg_iovlen = 1;
+		m.msg_control = &cmsg;
+		m.msg_controllen = sizeof(cmsg);
+		m.msg_flags = 0;
+
 		iov.iov_len = cc;
 
 		i = sendmsg(icmp_sock, &m, confirm);
