When you flush multiple messages/ops on a connection, and if flush fails to apply, the netlink connection returns errors per command. Since we are returning on noticing the first error, the rest of the errors are buffered and leaks into the result of next flush. This pull request invokes `conn.Receive()` * number of messages to drain any buffered errors in the connection. |
||
---|---|---|
.github/workflows | ||
alignedbuff | ||
binaryutil | ||
expr | ||
internal | ||
userdata | ||
xt | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md | ||
chain.go | ||
compat_policy.go | ||
compat_policy_test.go | ||
conn.go | ||
counter.go | ||
doc.go | ||
flowtable.go | ||
go.mod | ||
go.sum | ||
nftables_test.go | ||
obj.go | ||
rule.go | ||
set.go | ||
set_test.go | ||
table.go | ||
util.go |
README.md
This is not the correct repository for issues with the Linux nftables project! This repository contains a third-party Go package to programmatically interact with nftables. Find the official nftables website at https://wiki.nftables.org/
This package manipulates Linux nftables (the iptables successor). It is implemented in pure Go, i.e. does not wrap libnftnl.
This is not an official Google product.
Breaking changes
This package is in very early stages, and only contains enough data types and functions to install very basic nftables rules. It is likely that mistakes with the data types/API will be identified as more functionality is added.
Contributions
Contributions are very welcome!