diff options
authorPablo Neira Ayuso <>2013-10-27 21:50:35 +0100
committerPablo Neira Ayuso <>2013-10-27 22:03:01 +0100
commitd8aec16c2b73a3f7b5183ccbe25d0522bf2f4f3c (patch)
parentfe59236952e037029c484b3f2ee75c658df90a9c (diff)
include: fix missing struct nlmsghdr without definition
The definition of this structure belongs to the scope of linux/netlink.h. Based on patch from Jan Engelhardt. Signed-off-by: Pablo Neira Ayuso <>
4 files changed, 8 insertions, 0 deletions
diff --git a/include/libnftables/chain.h b/include/libnftables/chain.h
index d3086ea..d85a2a2 100644
--- a/include/libnftables/chain.h
+++ b/include/libnftables/chain.h
@@ -41,6 +41,8 @@ uint32_t nft_chain_attr_get_u32(struct nft_chain *c, uint16_t attr);
int32_t nft_chain_attr_get_s32(struct nft_chain *c, uint16_t attr);
uint64_t nft_chain_attr_get_u64(struct nft_chain *c, uint16_t attr);
+struct nlmsghdr;
void nft_chain_nlmsg_build_payload(struct nlmsghdr *nlh, const struct nft_chain *t);
enum {
diff --git a/include/libnftables/rule.h b/include/libnftables/rule.h
index 09d4637..a501d2d 100644
--- a/include/libnftables/rule.h
+++ b/include/libnftables/rule.h
@@ -39,6 +39,8 @@ uint64_t nft_rule_attr_get_u64(const struct nft_rule *r, uint16_t attr);
void nft_rule_add_expr(struct nft_rule *r, struct nft_rule_expr *expr);
+struct nlmsghdr;
void nft_rule_nlmsg_build_payload(struct nlmsghdr *nlh, struct nft_rule *t);
enum {
diff --git a/include/libnftables/set.h b/include/libnftables/set.h
index e377826..14a6327 100644
--- a/include/libnftables/set.h
+++ b/include/libnftables/set.h
@@ -30,6 +30,8 @@ const void *nft_set_attr_get(struct nft_set *s, uint16_t attr);
const char *nft_set_attr_get_str(struct nft_set *s, uint16_t attr);
uint32_t nft_set_attr_get_u32(struct nft_set *s, uint16_t attr);
+struct nlmsghdr;
struct nlmsghdr *nft_set_nlmsg_build_hdr(char *buf, uint16_t cmd, uint16_t family, uint16_t type, uint32_t seq);
void nft_set_nlmsg_build_payload(struct nlmsghdr *nlh, struct nft_set *s);
int nft_set_nlmsg_parse(const struct nlmsghdr *nlh, struct nft_set *s);
diff --git a/include/libnftables/table.h b/include/libnftables/table.h
index 66574cf..42a4aa7 100644
--- a/include/libnftables/table.h
+++ b/include/libnftables/table.h
@@ -29,6 +29,8 @@ void nft_table_attr_set_str(struct nft_table *t, uint16_t attr, const char *str)
uint32_t nft_table_attr_get_u32(struct nft_table *t, uint16_t attr);
const char *nft_table_attr_get_str(struct nft_table *t, uint16_t attr);
+struct nlmsghdr;
void nft_table_nlmsg_build_payload(struct nlmsghdr *nlh, const struct nft_table *t);
enum {