From: Pablo Neira Ayuso Date: Sat, 7 Dec 2013 19:06:30 +0000 (+0100) Subject: mnl: don't set NLM_F_ACK flag in mnl_nft_rule_batch_[add|del] X-Git-Tag: v0.099~38 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=330666048d97ed8fbb7fd1f80c5a04fb6649b594;p=thirdparty%2Fnftables.git mnl: don't set NLM_F_ACK flag in mnl_nft_rule_batch_[add|del] If the NLM_F_ACK flag is unset, the kernel still explicitly reports errors. Thus, we can save the handling of many explicit (useless) ack messages that indicate success. Signed-off-by: Pablo Neira Ayuso --- diff --git a/src/mnl.c b/src/mnl.c index 4f515e14..fe218fcc 100644 --- a/src/mnl.c +++ b/src/mnl.c @@ -273,7 +273,7 @@ int mnl_nft_rule_batch_add(struct nft_rule *nlr, unsigned int flags, nlh = nft_rule_nlmsg_build_hdr(mnl_nlmsg_batch_current(batch), NFT_MSG_NEWRULE, nft_rule_attr_get_u32(nlr, NFT_RULE_ATTR_FAMILY), - flags|NLM_F_ACK|NLM_F_CREATE, seqnum); + flags|NLM_F_CREATE, seqnum); nft_rule_nlmsg_build_payload(nlh, nlr); if (!mnl_nlmsg_batch_next(batch)) @@ -290,7 +290,7 @@ int mnl_nft_rule_batch_del(struct nft_rule *nlr, unsigned int flags, nlh = nft_rule_nlmsg_build_hdr(mnl_nlmsg_batch_current(batch), NFT_MSG_DELRULE, nft_rule_attr_get_u32(nlr, NFT_RULE_ATTR_FAMILY), - NLM_F_ACK, seqnum); + 0, seqnum); nft_rule_nlmsg_build_payload(nlh, nlr);