Hi Duncan, On Wed, Feb 14, 2024 at 08:07:06AM +1100, Duncan Roe wrote: > And no libnfnetlink headers either. > Submitted as a single patch because the first change essentially broke > it until the job was nearly finished. This is too large. Can you start with smaller chunks? For example, use mnl_attr_get_*(), then pick the next target incrementally, so there is a chance of evaluating what could break, because this conversion to libmnl _cannot_ break existing userspace applications, that's the challenge. > diff --git a/src/iftable.c b/src/iftable.c > new file mode 100644 > index 0000000..d0ee7dd > --- /dev/null > +++ b/src/iftable.c There is a iftable implementation that has been working for years with no bug reports: http://git.netfilter.org/nftables/tree/src/iface.c It coiuld be reused for this purpose, this could be your second patch after the one your suggest above. Thanks.