Skip to contentSkip to conversation

tools lib traceevent: Add correct header for ipv6 definitions

tip:perf/core tip-bot for Arnaldo Carvalho de Melo 1 participant 1 message Jul 16, 2016

lore
Share & tools
lore
#0 lore raw
Commit-ID:  ca575ad2093d7ca94238146c3c9267c61d2523bc
Gitweb:     http://git.kernel.org/tip/ca575ad2093d7ca94238146c3c9267c61d2523bc
Author:     Arnaldo Carvalho de Melo <[email protected]>
AuthorDate: Thu, 14 Jul 2016 11:23:25 -0300
Committer:  Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Thu, 14 Jul 2016 11:33:32 -0300

tools lib traceevent: Add correct header for ipv6 definitions

We need to include netinet/in.h to get the in6_addr struct definition, needed to build it on the Android NDK:

In file included from event-parse.c:36:0:
/home/acme/android/android-ndk-r12/platforms/android-24/arch-arm/usr/include/netinet/ip6.h:82:18: error: field 'ip6_src' has incomplete type
struct in6_addr ip6_src; /* source address */

And it is the canonical way of getting IPv6 definitions, as described, for instance, in Linux's 'man ipv6'

Doing that uncovers another problem: this source file uses PRIu64 but doesn't include it, depending on it being included by chance via the now replaced header (netinet/ip6.h), fix it.

---
 tools/lib/traceevent/event-parse.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
tools/lib/traceevent/event-parse.c +2 -1
index 3a7bd17..664c90c 100644
@@ -23,6 +23,7 @@
  *  Frederic Weisbecker gave his permission to relicense the code to
  *  the Lesser General Public License.
  */
+#include <inttypes.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -33,7 +34,7 @@
 #include <limits.h>
 #include <linux/string.h>
 
-#include <netinet/ip6.h>
+#include <netinet/in.h>
 #include "event-parse.h"
 #include "event-utils.h"