summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/netlink-private/types.h4
-rw-r--r--include/netlink/addr.h2
-rw-r--r--include/netlink/attr.h2
-rw-r--r--include/netlink/cli/ct.h1
-rw-r--r--include/netlink/cli/exp.h1
-rw-r--r--include/netlink/data.h2
-rw-r--r--include/netlink/handlers.h5
-rw-r--r--include/netlink/idiag/idiagnl.h19
-rw-r--r--include/netlink/msg.h2
-rw-r--r--include/netlink/netfilter/exp.h2
-rw-r--r--include/netlink/netlink.h5
-rw-r--r--include/netlink/route/act/gact.h1
-rw-r--r--include/netlink/route/act/mirred.h1
-rw-r--r--include/netlink/route/act/skbedit.h1
-rw-r--r--include/netlink/route/cls/ematch.h1
-rw-r--r--include/netlink/route/cls/ematch/cmp.h3
-rw-r--r--include/netlink/route/cls/ematch/meta.h1
-rw-r--r--include/netlink/route/cls/ematch/nbyte.h1
-rw-r--r--include/netlink/route/cls/ematch/text.h1
-rw-r--r--include/netlink/route/link/can.h5
-rw-r--r--include/netlink/route/link/macsec.h4
-rw-r--r--include/netlink/route/link/vxlan.h2
-rw-r--r--include/netlink/route/pktloc.h1
-rw-r--r--include/netlink/route/qdisc/hfsc.h2
-rw-r--r--include/netlink/route/route.h1
-rw-r--r--include/netlink/route/rule.h1
-rw-r--r--include/netlink/route/tc.h2
-rw-r--r--include/netlink/xfrm/ae.h1
-rw-r--r--include/netlink/xfrm/lifetime.h1
-rw-r--r--include/netlink/xfrm/sa.h1
-rw-r--r--include/netlink/xfrm/selector.h1
-rw-r--r--include/netlink/xfrm/sp.h1
-rw-r--r--include/netlink/xfrm/template.h1
-rw-r--r--lib/cli/qdisc/hfsc.c1
-rw-r--r--lib/netfilter/nfnl.c2
-rw-r--r--lib/route/cls/ematch.c1
-rw-r--r--lib/route/cls/ematch/meta.c1
-rw-r--r--lib/route/cls/ematch/nbyte.c1
-rw-r--r--lib/route/cls/ematch/text.c1
-rw-r--r--lib/route/cls/ematch_grammar.l1
-rw-r--r--lib/route/cls/ematch_syntax.y2
-rw-r--r--lib/route/pktloc_grammar.l1
-rw-r--r--lib/route/route_obj.c1
-rw-r--r--lib/route/rule.c1
-rw-r--r--src/genl-ctrl-list.c2
-rw-r--r--src/nf-ct-add.c2
-rw-r--r--src/nf-ct-list.c2
-rw-r--r--src/nf-exp-add.c2
-rw-r--r--src/nf-exp-delete.c2
-rw-r--r--src/nf-exp-list.c2
-rw-r--r--src/nf-log.c4
-rw-r--r--src/nf-monitor.c3
-rw-r--r--src/nf-queue.c2
-rw-r--r--src/nl-addr-add.c2
-rw-r--r--src/nl-addr-delete.c2
-rw-r--r--src/nl-addr-list.c2
-rw-r--r--src/nl-class-add.c2
-rw-r--r--src/nl-class-delete.c2
-rw-r--r--src/nl-class-list.c2
-rw-r--r--src/nl-classid-lookup.c1
-rw-r--r--src/nl-cls-add.c2
-rw-r--r--src/nl-cls-delete.c2
-rw-r--r--src/nl-cls-list.c2
-rw-r--r--src/nl-fib-lookup.c2
-rw-r--r--src/nl-link-enslave.c2
-rw-r--r--src/nl-link-ifindex2name.c2
-rw-r--r--src/nl-link-list.c2
-rw-r--r--src/nl-link-name2ifindex.c2
-rw-r--r--src/nl-link-release.c2
-rw-r--r--src/nl-link-set.c4
-rw-r--r--src/nl-link-stats.c2
-rw-r--r--src/nl-monitor.c2
-rw-r--r--src/nl-neigh-add.c2
-rw-r--r--src/nl-neigh-delete.c2
-rw-r--r--src/nl-neigh-list.c2
-rw-r--r--src/nl-neightbl-list.c2
-rw-r--r--src/nl-pktloc-lookup.c1
-rw-r--r--src/nl-qdisc-add.c2
-rw-r--r--src/nl-qdisc-delete.c2
-rw-r--r--src/nl-qdisc-list.c3
-rw-r--r--src/nl-route-add.c2
-rw-r--r--src/nl-route-delete.c2
-rw-r--r--src/nl-route-get.c2
-rw-r--r--src/nl-route-list.c2
-rw-r--r--src/nl-rule-list.c2
-rw-r--r--src/nl-tctree-list.c2
-rw-r--r--tests/check-attr.c2
-rw-r--r--tests/test-cache-mngr.c2
-rw-r--r--tests/test-complex-HTB-with-hash-filters.c3
-rw-r--r--tests/test-create-bond.c2
-rw-r--r--tests/test-create-bridge.c2
-rw-r--r--tests/test-create-ifb.c2
-rw-r--r--tests/test-create-ipvlan.c2
-rw-r--r--tests/test-create-macsec.c4
-rw-r--r--tests/test-create-macvlan.c2
-rw-r--r--tests/test-create-macvtap.c2
-rw-r--r--tests/test-create-veth.c2
-rw-r--r--tests/test-create-vlan.c2
-rw-r--r--tests/test-create-vrf.c2
-rw-r--r--tests/test-create-vxlan.c2
-rw-r--r--tests/test-delete-link.c2
-rw-r--r--tests/test-genl.c2
-rw-r--r--tests/test-nf-cache-mngr.c2
-rw-r--r--tests/test-u32-filter-with-actions.c7
104 files changed, 179 insertions, 45 deletions
diff --git a/include/netlink-private/types.h b/include/netlink-private/types.h
index 41396193..36fd3a5a 100644
--- a/include/netlink-private/types.h
+++ b/include/netlink-private/types.h
@@ -23,9 +23,13 @@
#include <netlink-private/object-api.h>
#include <netlink-private/route/tc-api.h>
#include <netlink-private/route/link/sriov.h>
+#include <linux/netlink.h>
+#include <linux/rtnetlink.h>
+#include <linux/genetlink.h>
#include <linux/tc_act/tc_mirred.h>
#include <linux/tc_act/tc_skbedit.h>
#include <linux/tc_act/tc_gact.h>
+#include <linux/sock_diag.h>
#define NL_SOCK_PASSCRED (1<<1)
#define NL_OWN_PORT (1<<2)
diff --git a/include/netlink/addr.h b/include/netlink/addr.h
index 9d0d24a1..00ca7846 100644
--- a/include/netlink/addr.h
+++ b/include/netlink/addr.h
@@ -18,6 +18,8 @@
extern "C" {
#endif
+struct nlattr;
+
struct nl_addr;
/* Creation */
diff --git a/include/netlink/attr.h b/include/netlink/attr.h
index e941a1a7..2157fe17 100644
--- a/include/netlink/attr.h
+++ b/include/netlink/attr.h
@@ -21,6 +21,8 @@
extern "C" {
#endif
+struct nlattr;
+
struct nl_msg;
/**
diff --git a/include/netlink/cli/ct.h b/include/netlink/cli/ct.h
index ebe7c9dc..518d63e6 100644
--- a/include/netlink/cli/ct.h
+++ b/include/netlink/cli/ct.h
@@ -13,7 +13,6 @@
#define __NETLINK_CLI_CT_H_
#include <netlink/netfilter/ct.h>
-#include <linux/netfilter/nf_conntrack_common.h>
extern struct nfnl_ct *nl_cli_ct_alloc(void);
extern struct nl_cache *nl_cli_ct_alloc_cache(struct nl_sock *);
diff --git a/include/netlink/cli/exp.h b/include/netlink/cli/exp.h
index b2418f8d..27440dd4 100644
--- a/include/netlink/cli/exp.h
+++ b/include/netlink/cli/exp.h
@@ -14,7 +14,6 @@
#define __NETLINK_CLI_EXP_H_
#include <netlink/netfilter/exp.h>
-#include <linux/netfilter/nf_conntrack_common.h>
extern struct nfnl_exp *nl_cli_exp_alloc(void);
extern struct nl_cache *nl_cli_exp_alloc_cache(struct nl_sock *);
diff --git a/include/netlink/data.h b/include/netlink/data.h
index b091c4b5..45010fe6 100644
--- a/include/netlink/data.h
+++ b/include/netlink/data.h
@@ -18,6 +18,8 @@
extern "C" {
#endif
+struct nlattr;
+
struct nl_data;
/* General */
diff --git a/include/netlink/handlers.h b/include/netlink/handlers.h
index e94cd348..4fac1481 100644
--- a/include/netlink/handlers.h
+++ b/include/netlink/handlers.h
@@ -22,10 +22,13 @@
extern "C" {
#endif
+struct nlmsgerr;
+struct sockaddr_nl;
+struct ucred;
+
struct nl_cb;
struct nl_sock;
struct nl_msg;
-struct ucred;
/**
* @name Callback Typedefs
diff --git a/include/netlink/idiag/idiagnl.h b/include/netlink/idiag/idiagnl.h
index c99f83b3..d5419558 100644
--- a/include/netlink/idiag/idiagnl.h
+++ b/include/netlink/idiag/idiagnl.h
@@ -13,7 +13,6 @@
#define NETLINK_IDIAGNL_H_
#include <netlink/netlink.h>
-#include <linux/sock_diag.h>
#ifdef __cplusplus
extern "C" {
@@ -90,15 +89,15 @@ enum {
/* deprectated keep these only for compatibility, DO NOT USE THEM */
-#define IDIAG_SK_MEMINFO_RMEM_ALLOC SK_MEMINFO_RMEM_ALLOC
-#define IDIAG_SK_MEMINFO_RCVBUF SK_MEMINFO_RCVBUF
-#define IDIAG_SK_MEMINFO_WMEM_ALLOC SK_MEMINFO_WMEM_ALLOC
-#define IDIAG_SK_MEMINFO_SNDBUF SK_MEMINFO_SNDBUF
-#define IDIAG_SK_MEMINFO_FWD_ALLOC SK_MEMINFO_FWD_ALLOC
-#define IDIAG_SK_MEMINFO_WMEM_QUEUED SK_MEMINFO_WMEM_QUEUED
-#define IDIAG_SK_MEMINFO_OPTMEM SK_MEMINFO_OPTMEM
-#define IDIAG_SK_MEMINFO_BACKLOG SK_MEMINFO_BACKLOG
-#define IDIAG_SK_MEMINFO_VARS SK_MEMINFO_VARS
+#define IDIAG_SK_MEMINFO_RMEM_ALLOC 0 /* SK_MEMINFO_RMEM_ALLOC */
+#define IDIAG_SK_MEMINFO_RCVBUF 1 /* SK_MEMINFO_RCVBUF */
+#define IDIAG_SK_MEMINFO_WMEM_ALLOC 2 /* SK_MEMINFO_WMEM_ALLOC */
+#define IDIAG_SK_MEMINFO_SNDBUF 3 /* SK_MEMINFO_SNDBUF */
+#define IDIAG_SK_MEMINFO_FWD_ALLOC 4 /* SK_MEMINFO_FWD_ALLOC */
+#define IDIAG_SK_MEMINFO_WMEM_QUEUED 5 /* SK_MEMINFO_WMEM_QUEUED */
+#define IDIAG_SK_MEMINFO_OPTMEM 6 /* SK_MEMINFO_OPTMEM */
+#define IDIAG_SK_MEMINFO_BACKLOG 7 /* SK_MEMINFO_BACKLOG */
+#define IDIAG_SK_MEMINFO_VARS SK_MEMINFO_VARS
/* deprecated names. */
#define IDIAG_TIMER_OFF IDIAGNL_TIMER_OFF
diff --git a/include/netlink/msg.h b/include/netlink/msg.h
index f3d50ae2..5aee97d3 100644
--- a/include/netlink/msg.h
+++ b/include/netlink/msg.h
@@ -20,6 +20,8 @@
extern "C" {
#endif
+struct nlmsghdr;
+
#define NL_DONTPAD 0
/**
diff --git a/include/netlink/netfilter/exp.h b/include/netlink/netfilter/exp.h
index 736af24e..8a8a13e2 100644
--- a/include/netlink/netfilter/exp.h
+++ b/include/netlink/netfilter/exp.h
@@ -20,8 +20,6 @@
#include <netlink/cache.h>
#include <netlink/msg.h>
-#include <linux/version.h>
-
#ifdef __cplusplus
extern "C" {
#endif
diff --git a/include/netlink/netlink.h b/include/netlink/netlink.h
index f8f2082f..08f366e1 100644
--- a/include/netlink/netlink.h
+++ b/include/netlink/netlink.h
@@ -22,10 +22,6 @@
#include <sys/time.h>
#include <netdb.h>
#include <netlink/netlink-compat.h>
-#include <linux/netlink.h>
-#include <linux/rtnetlink.h>
-#include <linux/genetlink.h>
-#include <linux/netfilter/nfnetlink.h>
#include <netinet/tcp.h>
#include <netlink/version.h>
#include <netlink/errno.h>
@@ -38,6 +34,7 @@
extern "C" {
#endif
+struct nlmsghdr;
struct ucred;
struct nl_cache_ops;
struct nl_parser_param;
diff --git a/include/netlink/route/act/gact.h b/include/netlink/route/act/gact.h
index 9538711b..7ea138ab 100644
--- a/include/netlink/route/act/gact.h
+++ b/include/netlink/route/act/gact.h
@@ -15,7 +15,6 @@
#include <netlink/netlink.h>
#include <netlink/cache.h>
#include <netlink/route/action.h>
-#include <linux/tc_act/tc_gact.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/route/act/mirred.h b/include/netlink/route/act/mirred.h
index d65ed378..2ed2cd8b 100644
--- a/include/netlink/route/act/mirred.h
+++ b/include/netlink/route/act/mirred.h
@@ -15,7 +15,6 @@
#include <netlink/netlink.h>
#include <netlink/cache.h>
#include <netlink/route/action.h>
-#include <linux/tc_act/tc_mirred.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/route/act/skbedit.h b/include/netlink/route/act/skbedit.h
index 69829e83..1ff01c3c 100644
--- a/include/netlink/route/act/skbedit.h
+++ b/include/netlink/route/act/skbedit.h
@@ -15,7 +15,6 @@
#include <netlink/netlink.h>
#include <netlink/cache.h>
#include <netlink/route/action.h>
-#include <linux/tc_act/tc_skbedit.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/route/cls/ematch.h b/include/netlink/route/cls/ematch.h
index 13f9c323..728884de 100644
--- a/include/netlink/route/cls/ematch.h
+++ b/include/netlink/route/cls/ematch.h
@@ -15,7 +15,6 @@
#include <netlink/netlink.h>
#include <netlink/msg.h>
#include <netlink/route/classifier.h>
-#include <linux/pkt_cls.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/route/cls/ematch/cmp.h b/include/netlink/route/cls/ematch/cmp.h
index 308113e0..0ae38511 100644
--- a/include/netlink/route/cls/ematch/cmp.h
+++ b/include/netlink/route/cls/ematch/cmp.h
@@ -14,12 +14,13 @@
#include <netlink/netlink.h>
#include <netlink/route/cls/ematch.h>
-#include <linux/tc_ematch/tc_em_cmp.h>
#ifdef __cplusplus
extern "C" {
#endif
+struct tcf_em_cmp;
+
extern void rtnl_ematch_cmp_set(struct rtnl_ematch *,
struct tcf_em_cmp *);
extern struct tcf_em_cmp *
diff --git a/include/netlink/route/cls/ematch/meta.h b/include/netlink/route/cls/ematch/meta.h
index 2fe58990..7c397c83 100644
--- a/include/netlink/route/cls/ematch/meta.h
+++ b/include/netlink/route/cls/ematch/meta.h
@@ -14,7 +14,6 @@
#include <netlink/netlink.h>
#include <netlink/route/cls/ematch.h>
-#include <linux/tc_ematch/tc_em_meta.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/route/cls/ematch/nbyte.h b/include/netlink/route/cls/ematch/nbyte.h
index 014c719b..25b07d9d 100644
--- a/include/netlink/route/cls/ematch/nbyte.h
+++ b/include/netlink/route/cls/ematch/nbyte.h
@@ -14,7 +14,6 @@
#include <netlink/netlink.h>
#include <netlink/route/cls/ematch.h>
-#include <linux/tc_ematch/tc_em_nbyte.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/route/cls/ematch/text.h b/include/netlink/route/cls/ematch/text.h
index e599abf0..190ce8e1 100644
--- a/include/netlink/route/cls/ematch/text.h
+++ b/include/netlink/route/cls/ematch/text.h
@@ -14,7 +14,6 @@
#include <netlink/netlink.h>
#include <netlink/route/cls/ematch.h>
-#include <linux/tc_ematch/tc_em_text.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/route/link/can.h b/include/netlink/route/link/can.h
index 61c9f47e..442cd8d8 100644
--- a/include/netlink/route/link/can.h
+++ b/include/netlink/route/link/can.h
@@ -14,12 +14,15 @@
#include <netlink/netlink.h>
#include <netlink/route/link.h>
-#include <linux/can/netlink.h>
#ifdef __cplusplus
extern "C" {
#endif
+struct can_bittiming_const;
+struct can_bittiming;
+struct can_berr_counter;
+
extern int rtnl_link_is_can(struct rtnl_link *link);
extern char *rtnl_link_can_ctrlmode2str(int, char *, size_t);
diff --git a/include/netlink/route/link/macsec.h b/include/netlink/route/link/macsec.h
index d9cf7da5..58ff7b6e 100644
--- a/include/netlink/route/link/macsec.h
+++ b/include/netlink/route/link/macsec.h
@@ -14,13 +14,13 @@
#include <netlink/netlink.h>
#include <netlink/route/link.h>
-#include <linux/if_link.h>
-#include <linux/if_macsec.h>
#ifdef __cplusplus
extern "C" {
#endif
+enum macsec_validation_type;
+
struct rtnl_link *rtnl_link_macsec_alloc(void);
int rtnl_link_macsec_set_sci(struct rtnl_link *, uint64_t);
diff --git a/include/netlink/route/link/vxlan.h b/include/netlink/route/link/vxlan.h
index 05657776..a929a9fa 100644
--- a/include/netlink/route/link/vxlan.h
+++ b/include/netlink/route/link/vxlan.h
@@ -19,6 +19,8 @@
extern "C" {
#endif
+struct ifla_vxlan_port_range;
+
#define VXLAN_ID_MAX 16777215
enum {
diff --git a/include/netlink/route/pktloc.h b/include/netlink/route/pktloc.h
index c3768ce9..a54659ae 100644
--- a/include/netlink/route/pktloc.h
+++ b/include/netlink/route/pktloc.h
@@ -16,7 +16,6 @@
#include <netlink/cache.h>
#include <netlink/route/tc.h>
-#include <linux/tc_ematch/tc_em_cmp.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/route/qdisc/hfsc.h b/include/netlink/route/qdisc/hfsc.h
index dd0a2b74..4c338099 100644
--- a/include/netlink/route/qdisc/hfsc.h
+++ b/include/netlink/route/qdisc/hfsc.h
@@ -21,6 +21,8 @@
extern "C" {
#endif
+struct tc_service_curve;
+
extern uint32_t rtnl_qdisc_hfsc_get_defcls(const struct rtnl_qdisc *);
extern int rtnl_qdisc_hfsc_set_defcls(struct rtnl_qdisc *, uint32_t);
diff --git a/include/netlink/route/route.h b/include/netlink/route/route.h
index 477250dd..80e6bc98 100644
--- a/include/netlink/route/route.h
+++ b/include/netlink/route/route.h
@@ -18,7 +18,6 @@
#include <netlink/data.h>
#include <netlink/route/nexthop.h>
#include <netlink/route/rtnl.h>
-#include <linux/in_route.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/route/rule.h b/include/netlink/route/rule.h
index 760b782a..450c5a98 100644
--- a/include/netlink/route/rule.h
+++ b/include/netlink/route/rule.h
@@ -16,7 +16,6 @@
#include <netlink/cache.h>
#include <netlink/addr.h>
#include <netlink/route/route.h>
-#include <linux/fib_rules.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/route/tc.h b/include/netlink/route/tc.h
index f1f0f8d1..266f48d4 100644
--- a/include/netlink/route/tc.h
+++ b/include/netlink/route/tc.h
@@ -16,8 +16,6 @@
#include <netlink/cache.h>
#include <netlink/data.h>
#include <netlink/route/link.h>
-#include <linux/pkt_sched.h>
-#include <linux/pkt_cls.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/xfrm/ae.h b/include/netlink/xfrm/ae.h
index 95112dd5..558474ac 100644
--- a/include/netlink/xfrm/ae.h
+++ b/include/netlink/xfrm/ae.h
@@ -37,7 +37,6 @@
#include <netlink/netlink.h>
#include <netlink/cache.h>
#include <netlink/addr.h>
-#include <linux/xfrm.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/xfrm/lifetime.h b/include/netlink/xfrm/lifetime.h
index a5d5955d..cb9fdc5f 100644
--- a/include/netlink/xfrm/lifetime.h
+++ b/include/netlink/xfrm/lifetime.h
@@ -37,7 +37,6 @@
#include <netlink/netlink.h>
#include <netlink/cache.h>
#include <netlink/addr.h>
-#include <linux/xfrm.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/xfrm/sa.h b/include/netlink/xfrm/sa.h
index 7362c361..e2e54e2b 100644
--- a/include/netlink/xfrm/sa.h
+++ b/include/netlink/xfrm/sa.h
@@ -37,7 +37,6 @@
#include <netlink/netlink.h>
#include <netlink/cache.h>
#include <netlink/addr.h>
-#include <linux/xfrm.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/xfrm/selector.h b/include/netlink/xfrm/selector.h
index 2ee6842a..3e3ec5ab 100644
--- a/include/netlink/xfrm/selector.h
+++ b/include/netlink/xfrm/selector.h
@@ -37,7 +37,6 @@
#include <netlink/netlink.h>
#include <netlink/cache.h>
#include <netlink/addr.h>
-#include <linux/xfrm.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/xfrm/sp.h b/include/netlink/xfrm/sp.h
index 84cbfb26..053c4de6 100644
--- a/include/netlink/xfrm/sp.h
+++ b/include/netlink/xfrm/sp.h
@@ -39,7 +39,6 @@
#include <netlink/addr.h>
#include <netlink/xfrm/template.h>
#include <netlink/xfrm/lifetime.h>
-#include <linux/xfrm.h>
#ifdef __cplusplus
extern "C" {
diff --git a/include/netlink/xfrm/template.h b/include/netlink/xfrm/template.h
index da51e7d8..ac7189c5 100644
--- a/include/netlink/xfrm/template.h
+++ b/include/netlink/xfrm/template.h
@@ -37,7 +37,6 @@
#include <netlink/netlink.h>
#include <netlink/cache.h>
#include <netlink/addr.h>
-#include <linux/xfrm.h>
#ifdef __cplusplus
extern "C" {
diff --git a/lib/cli/qdisc/hfsc.c b/lib/cli/qdisc/hfsc.c
index 6a0c9606..619befcf 100644
--- a/lib/cli/qdisc/hfsc.c
+++ b/lib/cli/qdisc/hfsc.c
@@ -12,6 +12,7 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/tc.h>
#include <netlink/route/qdisc/hfsc.h>
+#include <linux/pkt_sched.h>
static void print_qdisc_usage(void)
{
diff --git a/lib/netfilter/nfnl.c b/lib/netfilter/nfnl.c
index 9b524470..fab7904f 100644
--- a/lib/netfilter/nfnl.c
+++ b/lib/netfilter/nfnl.c
@@ -65,6 +65,8 @@
#include <netlink/netlink.h>
#include <netlink/netfilter/nfnl.h>
+#include <linux/netfilter/nfnetlink.h>
+
/**
* @name Socket Creating
* @{
diff --git a/lib/route/cls/ematch.c b/lib/route/cls/ematch.c
index 6cbe2744..95f9b3da 100644
--- a/lib/route/cls/ematch.c
+++ b/lib/route/cls/ematch.c
@@ -22,6 +22,7 @@
#include <netlink/route/classifier.h>
#include <netlink/route/cls/ematch.h>
#include <netlink/route/cls/ematch/cmp.h>
+#include <linux/tc_ematch/tc_em_cmp.h>
#include "ematch_syntax.h"
#include "ematch_grammar.h"
diff --git a/lib/route/cls/ematch/meta.c b/lib/route/cls/ematch/meta.c
index e33c405a..cf9fdae2 100644
--- a/lib/route/cls/ematch/meta.c
+++ b/lib/route/cls/ematch/meta.c
@@ -21,6 +21,7 @@
#include <netlink/netlink.h>
#include <netlink/route/cls/ematch.h>
#include <netlink/route/cls/ematch/meta.h>
+#include <linux/tc_ematch/tc_em_meta.h>
struct rtnl_meta_value
{
diff --git a/lib/route/cls/ematch/nbyte.c b/lib/route/cls/ematch/nbyte.c
index 88524893..e4216d65 100644
--- a/lib/route/cls/ematch/nbyte.c
+++ b/lib/route/cls/ematch/nbyte.c
@@ -21,6 +21,7 @@
#include <netlink/netlink.h>
#include <netlink/route/cls/ematch.h>
#include <netlink/route/cls/ematch/nbyte.h>
+#include <linux/tc_ematch/tc_em_nbyte.h>
struct nbyte_data
{
diff --git a/lib/route/cls/ematch/text.c b/lib/route/cls/ematch/text.c
index e8cdcaec..b14c4abb 100644
--- a/lib/route/cls/ematch/text.c
+++ b/lib/route/cls/ematch/text.c
@@ -21,6 +21,7 @@
#include <netlink/netlink.h>
#include <netlink/route/cls/ematch.h>
#include <netlink/route/cls/ematch/text.h>
+#include <linux/tc_ematch/tc_em_text.h>
struct text_data
{
diff --git a/lib/route/cls/ematch_grammar.l b/lib/route/cls/ematch_grammar.l
index c3f02b02..e97f9fef 100644
--- a/lib/route/cls/ematch_grammar.l
+++ b/lib/route/cls/ematch_grammar.l
@@ -15,6 +15,7 @@
#include <netlink/netlink.h>
#include <netlink/route/cls/ematch.h>
#include <netlink/route/cls/ematch/cmp.h>
+ #include <linux/tc_ematch/tc_em_cmp.h>
#include "ematch_syntax.h"
int ematch_get_column(yyscan_t);
diff --git a/lib/route/cls/ematch_syntax.y b/lib/route/cls/ematch_syntax.y
index b28eb3cf..a0ca4bb6 100644
--- a/lib/route/cls/ematch_syntax.y
+++ b/lib/route/cls/ematch_syntax.y
@@ -20,6 +20,8 @@
#include <netlink/route/cls/ematch/nbyte.h>
#include <netlink/route/cls/ematch/text.h>
#include <netlink/route/cls/ematch/meta.h>
+#include <linux/tc_ematch/tc_em_meta.h>
+#include <linux/tc_ematch/tc_em_cmp.h>
#define META_ALLOC rtnl_meta_value_alloc_id
#define META_ID(name) TCF_META_ID_##name
diff --git a/lib/route/pktloc_grammar.l b/lib/route/pktloc_grammar.l
index 646ba563..ab592d1b 100644
--- a/lib/route/pktloc_grammar.l
+++ b/lib/route/pktloc_grammar.l
@@ -4,6 +4,7 @@
#include <netlink/netlink.h>
#include <netlink/utils.h>
#include <netlink/route/pktloc.h>
+ #include <linux/tc_ematch/tc_em_cmp.h>
#include "pktloc_syntax.h"
int pktloc_get_column(yyscan_t);
diff --git a/lib/route/route_obj.c b/lib/route/route_obj.c
index 21b67b19..b8e9f77c 100644
--- a/lib/route/route_obj.c
+++ b/lib/route/route_obj.c
@@ -41,6 +41,7 @@
#include <netlink/route/route.h>
#include <netlink/route/link.h>
#include <netlink/route/nexthop.h>
+#include <linux/in_route.h>
/** @cond SKIP */
#define ROUTE_ATTR_FAMILY 0x000001
diff --git a/lib/route/rule.c b/lib/route/rule.c
index 883df812..2e40bb19 100644
--- a/lib/route/rule.c
+++ b/lib/route/rule.c
@@ -22,6 +22,7 @@
#include <netlink/route/rtnl.h>
#include <netlink/route/rule.h>
#include <inttypes.h>
+#include <linux/fib_rules.h>
/** @cond SKIP */
#define RULE_ATTR_FAMILY 0x0001
diff --git a/src/genl-ctrl-list.c b/src/genl-ctrl-list.c
index 078c30c7..e6d09c35 100644
--- a/src/genl-ctrl-list.c
+++ b/src/genl-ctrl-list.c
@@ -11,6 +11,8 @@
#include <netlink/cli/utils.h>
+#include <linux/genetlink.h>
+
static struct nl_cache *alloc_genl_family_cache(struct nl_sock *sk)
{
return nl_cli_alloc_cache(sk, "generic netlink family",
diff --git a/src/nf-ct-add.c b/src/nf-ct-add.c
index 8ad4c534..fa988acf 100644
--- a/src/nf-ct-add.c
+++ b/src/nf-ct-add.c
@@ -14,6 +14,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/ct.h>
+#include <linux/rtnetlink.h>
+
static int quiet = 0;
static void print_usage(void)
diff --git a/src/nf-ct-list.c b/src/nf-ct-list.c
index bc6a3375..6355d108 100644
--- a/src/nf-ct-list.c
+++ b/src/nf-ct-list.c
@@ -14,6 +14,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/ct.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf(
diff --git a/src/nf-exp-add.c b/src/nf-exp-add.c
index a81147e8..68e2ec6d 100644
--- a/src/nf-exp-add.c
+++ b/src/nf-exp-add.c
@@ -16,6 +16,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/exp.h>
+#include <linux/netlink.h>
+
static int quiet = 0;
static void print_usage(void)
diff --git a/src/nf-exp-delete.c b/src/nf-exp-delete.c
index 0965e90b..43493d55 100644
--- a/src/nf-exp-delete.c
+++ b/src/nf-exp-delete.c
@@ -15,6 +15,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/exp.h>
+#include <linux/rtnetlink.h>
+
static int quiet = 0;
static void print_usage(void)
diff --git a/src/nf-exp-list.c b/src/nf-exp-list.c
index 7f5624d1..d14b1fa5 100644
--- a/src/nf-exp-list.c
+++ b/src/nf-exp-list.c
@@ -15,6 +15,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/exp.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf(
diff --git a/src/nf-log.c b/src/nf-log.c
index 1e2c1e48..c0fd9788 100644
--- a/src/nf-log.c
+++ b/src/nf-log.c
@@ -13,10 +13,12 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/link.h>
-#include <linux/netfilter/nfnetlink_log.h>
#include <netlink/netfilter/nfnl.h>
#include <netlink/netfilter/log.h>
+#include <linux/netfilter/nfnetlink_log.h>
+#include <linux/netlink.h>
+
static struct nfnl_log *alloc_log(void)
{
struct nfnl_log *log;
diff --git a/src/nf-monitor.c b/src/nf-monitor.c
index fe99af48..0b74473e 100644
--- a/src/nf-monitor.c
+++ b/src/nf-monitor.c
@@ -14,6 +14,9 @@
#include <netlink/cli/utils.h>
#include <netlink/netfilter/nfnl.h>
+#include <linux/netlink.h>
+#include <linux/netfilter/nfnetlink.h>
+
static void obj_input(struct nl_object *obj, void *arg)
{
struct nl_dump_params dp = {
diff --git a/src/nf-queue.c b/src/nf-queue.c
index b043c80e..de069b04 100644
--- a/src/nf-queue.c
+++ b/src/nf-queue.c
@@ -20,6 +20,8 @@
#include <netlink/netfilter/queue.h>
#include <netlink/netfilter/queue_msg.h>
+#include <linux/netlink.h>
+
static struct nl_sock *nf_sock;
static struct nfnl_queue *alloc_queue(void)
diff --git a/src/nl-addr-add.c b/src/nl-addr-add.c
index 19d07b3a..0467f676 100644
--- a/src/nl-addr-add.c
+++ b/src/nl-addr-add.c
@@ -12,6 +12,8 @@
#include <netlink/cli/addr.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static int quiet = 0;
static void print_usage(void)
diff --git a/src/nl-addr-delete.c b/src/nl-addr-delete.c
index 981930ff..0f3ae2f9 100644
--- a/src/nl-addr-delete.c
+++ b/src/nl-addr-delete.c
@@ -12,6 +12,8 @@
#include <netlink/cli/addr.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static struct nl_sock *sock;
static int interactive = 0, default_yes = 0, quiet = 0;
static int deleted = 0;
diff --git a/src/nl-addr-list.c b/src/nl-addr-list.c
index 20995a84..f9e40801 100644
--- a/src/nl-addr-list.c
+++ b/src/nl-addr-list.c
@@ -12,6 +12,8 @@
#include <netlink/cli/addr.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf(
diff --git a/src/nl-class-add.c b/src/nl-class-add.c
index 45934713..bbba6197 100644
--- a/src/nl-class-add.c
+++ b/src/nl-class-add.c
@@ -17,6 +17,8 @@
#include <netlink-private/route/tc-api.h>
+#include <linux/netlink.h>
+
static int quiet = 0;
static void print_usage(void)
diff --git a/src/nl-class-delete.c b/src/nl-class-delete.c
index e4be2c07..4570258b 100644
--- a/src/nl-class-delete.c
+++ b/src/nl-class-delete.c
@@ -13,6 +13,8 @@
#include <netlink/cli/class.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static int quiet = 0, default_yes = 0, deleted = 0, interactive = 0;
static struct nl_sock *sock;
diff --git a/src/nl-class-list.c b/src/nl-class-list.c
index e8cc71a4..4cace9a5 100644
--- a/src/nl-class-list.c
+++ b/src/nl-class-list.c
@@ -14,6 +14,8 @@
#include <netlink/cli/class.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static struct nl_sock *sock;
static struct nl_dump_params params = {
diff --git a/src/nl-classid-lookup.c b/src/nl-classid-lookup.c
index 1493ebff..b633ab66 100644
--- a/src/nl-classid-lookup.c
+++ b/src/nl-classid-lookup.c
@@ -10,6 +10,7 @@
*/
#include <netlink/cli/utils.h>
+#include <linux/pkt_sched.h>
static void print_usage(void)
{
diff --git a/src/nl-cls-add.c b/src/nl-cls-add.c
index 6ac85900..e4a080a3 100644
--- a/src/nl-cls-add.c
+++ b/src/nl-cls-add.c
@@ -15,6 +15,8 @@
#include <netlink-private/route/tc-api.h>
+#include <linux/netlink.h>
+
static int quiet = 0;
static void print_usage(void)
diff --git a/src/nl-cls-delete.c b/src/nl-cls-delete.c
index 78b93ecf..32979926 100644
--- a/src/nl-cls-delete.c
+++ b/src/nl-cls-delete.c
@@ -13,6 +13,8 @@
#include <netlink/cli/cls.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static int quiet = 0, default_yes = 0, deleted = 0, interactive = 0;
static struct nl_sock *sock;
diff --git a/src/nl-cls-list.c b/src/nl-cls-list.c
index 08956e09..2ab3d12c 100644
--- a/src/nl-cls-list.c
+++ b/src/nl-cls-list.c
@@ -14,6 +14,8 @@
#include <netlink/cli/cls.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static struct nl_sock *sock;
static struct nl_dump_params params = {
diff --git a/src/nl-fib-lookup.c b/src/nl-fib-lookup.c
index 705cf329..95e6acd8 100644
--- a/src/nl-fib-lookup.c
+++ b/src/nl-fib-lookup.c
@@ -11,6 +11,8 @@
#include <netlink/cli/utils.h>
+#include <linux/rtnetlink.h>
+
static void print_usage(void)
{
printf(
diff --git a/src/nl-link-enslave.c b/src/nl-link-enslave.c
index 2b5d47db..1a75939d 100644
--- a/src/nl-link-enslave.c
+++ b/src/nl-link-enslave.c
@@ -13,6 +13,8 @@
#include <netlink/cli/link.h>
#include <netlink/route/link/bonding.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct nl_sock *sock;
diff --git a/src/nl-link-ifindex2name.c b/src/nl-link-ifindex2name.c
index 68e5158a..c4ed827b 100644
--- a/src/nl-link-ifindex2name.c
+++ b/src/nl-link-ifindex2name.c
@@ -12,6 +12,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf("Usage: nl-link-ifindex2name <ifindex>\n");
diff --git a/src/nl-link-list.c b/src/nl-link-list.c
index b5c98b40..47d5c06e 100644
--- a/src/nl-link-list.c
+++ b/src/nl-link-list.c
@@ -12,6 +12,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf(
diff --git a/src/nl-link-name2ifindex.c b/src/nl-link-name2ifindex.c
index b8ae4bcd..1be1d18a 100644
--- a/src/nl-link-name2ifindex.c
+++ b/src/nl-link-name2ifindex.c
@@ -12,6 +12,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf("Usage: nl-link-name2ifindex <name>\n");
diff --git a/src/nl-link-release.c b/src/nl-link-release.c
index 4c9f15a5..6f9de0e4 100644
--- a/src/nl-link-release.c
+++ b/src/nl-link-release.c
@@ -13,6 +13,8 @@
#include <netlink/cli/link.h>
#include <netlink/route/link/bonding.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct nl_sock *sock;
diff --git a/src/nl-link-set.c b/src/nl-link-set.c
index 6a6bac8d..a3ff8a13 100644
--- a/src/nl-link-set.c
+++ b/src/nl-link-set.c
@@ -9,10 +9,12 @@
* Copyright (c) 2003-2010 Thomas Graf <tgraf@suug.ch>
*/
-#include <linux/if.h>
#include <netlink/cli/utils.h>
#include <netlink/cli/link.h>
+#include <linux/if.h>
+#include <linux/netlink.h>
+
static struct nl_sock *sock;
static int quiet = 0;
diff --git a/src/nl-link-stats.c b/src/nl-link-stats.c
index 9bb11c87..82132f85 100644
--- a/src/nl-link-stats.c
+++ b/src/nl-link-stats.c
@@ -12,6 +12,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf(
diff --git a/src/nl-monitor.c b/src/nl-monitor.c
index 16ecac00..754f8dca 100644
--- a/src/nl-monitor.c
+++ b/src/nl-monitor.c
@@ -12,6 +12,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/link.h>
+#include <linux/rtnetlink.h>
+
static void obj_input(struct nl_object *obj, void *arg)
{
struct nl_dump_params dp = {
diff --git a/src/nl-neigh-add.c b/src/nl-neigh-add.c
index 09cef9aa..d98330b6 100644
--- a/src/nl-neigh-add.c
+++ b/src/nl-neigh-add.c
@@ -13,6 +13,8 @@
#include <netlink/cli/neigh.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static int quiet = 0;
static void print_usage(void)
diff --git a/src/nl-neigh-delete.c b/src/nl-neigh-delete.c
index b6be44c9..2d3be37c 100644
--- a/src/nl-neigh-delete.c
+++ b/src/nl-neigh-delete.c
@@ -13,6 +13,8 @@
#include <netlink/cli/neigh.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static int quiet = 0, default_yes = 0, deleted = 0, interactive = 0;
static struct nl_sock *sock;
diff --git a/src/nl-neigh-list.c b/src/nl-neigh-list.c
index c99d237f..ba4ade8b 100644
--- a/src/nl-neigh-list.c
+++ b/src/nl-neigh-list.c
@@ -13,6 +13,8 @@
#include <netlink/cli/neigh.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf(
diff --git a/src/nl-neightbl-list.c b/src/nl-neightbl-list.c
index 2380e015..5c28e910 100644
--- a/src/nl-neightbl-list.c
+++ b/src/nl-neightbl-list.c
@@ -12,6 +12,8 @@
#include <netlink/cli/utils.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf(
diff --git a/src/nl-pktloc-lookup.c b/src/nl-pktloc-lookup.c
index 7d244021..68dbdf92 100644
--- a/src/nl-pktloc-lookup.c
+++ b/src/nl-pktloc-lookup.c
@@ -11,6 +11,7 @@
#include <netlink/cli/utils.h>
#include <netlink/route/pktloc.h>
+#include <linux/tc_ematch/tc_em_cmp.h>
static void print_usage(void)
{
diff --git a/src/nl-qdisc-add.c b/src/nl-qdisc-add.c
index d8a1f73e..dc0b4f1d 100644
--- a/src/nl-qdisc-add.c
+++ b/src/nl-qdisc-add.c
@@ -16,6 +16,8 @@
#include <netlink-private/route/tc-api.h>
+#include <linux/netlink.h>
+
static int quiet = 0;
static void print_usage(void)
diff --git a/src/nl-qdisc-delete.c b/src/nl-qdisc-delete.c
index c4acbfe5..4a63a7e5 100644
--- a/src/nl-qdisc-delete.c
+++ b/src/nl-qdisc-delete.c
@@ -14,6 +14,8 @@
#include <netlink/cli/qdisc.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static int quiet = 0, default_yes = 0, deleted = 0, interactive = 0;
static struct nl_sock *sock;
diff --git a/src/nl-qdisc-list.c b/src/nl-qdisc-list.c
index b8110f1b..eb73e5fd 100644
--- a/src/nl-qdisc-list.c
+++ b/src/nl-qdisc-list.c
@@ -16,6 +16,9 @@
#include <netlink/cli/cls.h>
#include <netlink/cli/link.h>
+#include <linux/pkt_sched.h>
+#include <linux/netlink.h>
+
#define NUM_INDENT 4
static struct nl_sock *sock;
diff --git a/src/nl-route-add.c b/src/nl-route-add.c
index d4aa767e..3a2dd61b 100644
--- a/src/nl-route-add.c
+++ b/src/nl-route-add.c
@@ -13,6 +13,8 @@
#include <netlink/cli/route.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static int quiet = 0;
static struct nl_cache *link_cache, *route_cache;
diff --git a/src/nl-route-delete.c b/src/nl-route-delete.c
index 884fd7fc..56d52eb7 100644
--- a/src/nl-route-delete.c
+++ b/src/nl-route-delete.c
@@ -13,6 +13,8 @@
#include <netlink/cli/route.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static int interactive = 0, default_yes = 0, quiet = 0;
static int deleted = 0;
static struct nl_sock *sock;
diff --git a/src/nl-route-get.c b/src/nl-route-get.c
index 1ee47e47..b031ae4a 100644
--- a/src/nl-route-get.c
+++ b/src/nl-route-get.c
@@ -13,6 +13,8 @@
#include <netlink/cli/route.h>
#include <netlink/cli/link.h>
+#include <linux/rtnetlink.h>
+
static void print_usage(void)
{
printf("Usage: nl-route-get <addr>\n");
diff --git a/src/nl-route-list.c b/src/nl-route-list.c
index e0e57be2..06ef01a6 100644
--- a/src/nl-route-list.c
+++ b/src/nl-route-list.c
@@ -13,6 +13,8 @@
#include <netlink/cli/route.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf(
diff --git a/src/nl-rule-list.c b/src/nl-rule-list.c
index 7c450e24..ec73aca3 100644
--- a/src/nl-rule-list.c
+++ b/src/nl-rule-list.c
@@ -13,6 +13,8 @@
#include <netlink/cli/rule.h>
#include <netlink/cli/link.h>
+#include <linux/netlink.h>
+
static void print_usage(void)
{
printf(
diff --git a/src/nl-tctree-list.c b/src/nl-tctree-list.c
index d90cb28f..7c3b7e60 100644
--- a/src/nl-tctree-list.c
+++ b/src/nl-tctree-list.c
@@ -13,6 +13,8 @@
#include <netlink/cli/link.h>
#include <netlink/cli/qdisc.h>
#include <netlink/cli/class.h>
+
+#include <linux/netlink.h>
#include <linux/pkt_sched.h>
static struct nl_sock *sock;
diff --git a/tests/check-attr.c b/tests/check-attr.c
index d8622301..0390997c 100644
--- a/tests/check-attr.c
+++ b/tests/check-attr.c
@@ -13,6 +13,8 @@
#include <netlink/attr.h>
#include <netlink/msg.h>
+#include <linux/netlink.h>
+
START_TEST(attr_size)
{
fail_if(nla_attr_size(0) != NLA_HDRLEN,
diff --git a/tests/test-cache-mngr.c b/tests/test-cache-mngr.c
index 8999e587..97614520 100644
--- a/tests/test-cache-mngr.c
+++ b/tests/test-cache-mngr.c
@@ -5,6 +5,8 @@
#include <netlink-private/cache-api.h>
+#include <linux/netlink.h>
+
static int quit = 0;
static struct nl_dump_params dp = {
diff --git a/tests/test-complex-HTB-with-hash-filters.c b/tests/test-complex-HTB-with-hash-filters.c
index 453f8016..c2ac7830 100644
--- a/tests/test-complex-HTB-with-hash-filters.c
+++ b/tests/test-complex-HTB-with-hash-filters.c
@@ -18,6 +18,7 @@
#include <netlink/route/classifier.h>
#include <netlink/route/class.h>
#include <linux/if_ether.h>
+#include <linux/pkt_cls.h>
#include <netlink/attr.h>
//#include "include/rtnl_u32.h"
@@ -26,6 +27,8 @@
#include <string.h>
//#include "include/rtnl_u32_addon.h"
+#include <linux/netlink.h>
+
#define TC_HANDLE(maj, min) (TC_H_MAJ((maj) << 16) | TC_H_MIN(min))
/* some functions are copied from iproute-tc tool */
diff --git a/tests/test-create-bond.c b/tests/test-create-bond.c
index 11bc5b09..326e0ef7 100644
--- a/tests/test-create-bond.c
+++ b/tests/test-create-bond.c
@@ -2,6 +2,8 @@
#include <netlink/route/link.h>
#include <netlink/route/link/bonding.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct rtnl_link *link;
diff --git a/tests/test-create-bridge.c b/tests/test-create-bridge.c
index c4bec375..fe10c639 100644
--- a/tests/test-create-bridge.c
+++ b/tests/test-create-bridge.c
@@ -2,6 +2,8 @@
#include <netlink/route/link.h>
#include <netlink/route/link/bridge.h>
+#include <linux/netlink.h>
+
#define TEST_BRIDGE_NAME "testbridge"
#define TEST_INTERFACE_NAME "testtap1"
diff --git a/tests/test-create-ifb.c b/tests/test-create-ifb.c
index 99336f55..d154ffdc 100644
--- a/tests/test-create-ifb.c
+++ b/tests/test-create-ifb.c
@@ -1,6 +1,8 @@
#include <netlink/netlink.h>
#include <netlink/route/link.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct rtnl_link *link;
diff --git a/tests/test-create-ipvlan.c b/tests/test-create-ipvlan.c
index dd61b800..50bac541 100644
--- a/tests/test-create-ipvlan.c
+++ b/tests/test-create-ipvlan.c
@@ -2,6 +2,8 @@
#include <netlink/route/link.h>
#include <netlink/route/link/ipvlan.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct rtnl_link *link;
diff --git a/tests/test-create-macsec.c b/tests/test-create-macsec.c
index abdb7f60..efadf6b5 100644
--- a/tests/test-create-macsec.c
+++ b/tests/test-create-macsec.c
@@ -1,5 +1,9 @@
#include <netlink/netlink.h>
#include <netlink/route/link.h>
+
+#include <linux/netlink.h>
+#include <linux/if_link.h>
+
#include <netlink/route/link/macsec.h>
int main(int argc, char *argv[])
diff --git a/tests/test-create-macvlan.c b/tests/test-create-macvlan.c
index d94839be..f520b674 100644
--- a/tests/test-create-macvlan.c
+++ b/tests/test-create-macvlan.c
@@ -4,6 +4,8 @@
#include <netlink/route/link.h>
#include <netlink/route/link/macvlan.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct rtnl_link *link;
diff --git a/tests/test-create-macvtap.c b/tests/test-create-macvtap.c
index dc7df952..27d1969d 100644
--- a/tests/test-create-macvtap.c
+++ b/tests/test-create-macvtap.c
@@ -4,6 +4,8 @@
#include <netlink/route/link.h>
#include <netlink/route/link/macvtap.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct rtnl_link *link;
diff --git a/tests/test-create-veth.c b/tests/test-create-veth.c
index db5ab8b1..9600f8dd 100644
--- a/tests/test-create-veth.c
+++ b/tests/test-create-veth.c
@@ -2,6 +2,8 @@
#include <netlink/route/link.h>
#include <netlink/route/link/veth.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct rtnl_link *link;
diff --git a/tests/test-create-vlan.c b/tests/test-create-vlan.c
index 64e478f4..04756d4a 100644
--- a/tests/test-create-vlan.c
+++ b/tests/test-create-vlan.c
@@ -2,6 +2,8 @@
#include <netlink/route/link.h>
#include <netlink/route/link/vlan.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct rtnl_link *link;
diff --git a/tests/test-create-vrf.c b/tests/test-create-vrf.c
index 7db6d8a5..c3d23e7f 100644
--- a/tests/test-create-vrf.c
+++ b/tests/test-create-vrf.c
@@ -2,6 +2,8 @@
#include <netlink/route/link.h>
#include <netlink/route/link/vrf.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct nl_cache *link_cache;
diff --git a/tests/test-create-vxlan.c b/tests/test-create-vxlan.c
index 98a5103c..855fdb5d 100644
--- a/tests/test-create-vxlan.c
+++ b/tests/test-create-vxlan.c
@@ -2,6 +2,8 @@
#include <netlink/route/link.h>
#include <netlink/route/link/vxlan.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct rtnl_link *link;
diff --git a/tests/test-delete-link.c b/tests/test-delete-link.c
index 9cf1034e..86331239 100644
--- a/tests/test-delete-link.c
+++ b/tests/test-delete-link.c
@@ -1,6 +1,8 @@
#include <netlink/netlink.h>
#include <netlink/route/link.h>
+#include <linux/netlink.h>
+
int main(int argc, char *argv[])
{
struct rtnl_link *link;
diff --git a/tests/test-genl.c b/tests/test-genl.c
index 74aea106..d96daddf 100644
--- a/tests/test-genl.c
+++ b/tests/test-genl.c
@@ -1,5 +1,7 @@
#include <netlink/cli/utils.h>
+
#include <linux/taskstats.h>
+#include <linux/genetlink.h>
static struct nla_policy attr_policy[TASKSTATS_TYPE_MAX+1] = {
[TASKSTATS_TYPE_PID] = { .type = NLA_U32 },
diff --git a/tests/test-nf-cache-mngr.c b/tests/test-nf-cache-mngr.c
index b4f30223..7625e3fe 100644
--- a/tests/test-nf-cache-mngr.c
+++ b/tests/test-nf-cache-mngr.c
@@ -1,5 +1,7 @@
#include <netlink/cli/utils.h>
+#include <linux/netlink.h>
+
static void change_cb(struct nl_cache *cache, struct nl_object *obj,
int action, void *data)
{
diff --git a/tests/test-u32-filter-with-actions.c b/tests/test-u32-filter-with-actions.c
index 70bab4df..0ca216cb 100644
--- a/tests/test-u32-filter-with-actions.c
+++ b/tests/test-u32-filter-with-actions.c
@@ -20,12 +20,15 @@
#include <netlink/route/act/mirred.h>
#include <netlink/route/act/skbedit.h>
#include <netlink/route/class.h>
-#include <linux/if_ether.h>
-
#include <netlink/attr.h>
+
#include <stdio.h>
#include <string.h>
+#include <linux/if_ether.h>
+#include <linux/tc_act/tc_mirred.h>
+#include <linux/netlink.h>
+
#define TC_HANDLE(maj, min) (TC_H_MAJ((maj) << 16) | TC_H_MIN(min))
/* some functions are copied from iproute-tc tool */