netlink, RTM_NEWTCLASS, nested attributes

From: Denys Fedoryshchenko
Date: Tue Feb 19 2013 - 16:45:35 EST


I tried recently to write my own tool based on amazing libmnl (which makes understanding of netlink - easy), written
by Pablo Neira Ayuso, to manage QoS in Linux and faced problem, which i think probably
a bug in handling netlink messages in kernel.

For example if i send message, RTM_NEWTCLASS, after attribute TCA_OPTIONS i have nested attributes,
libmnl, if i use nested attribute, adding a bit to it, by OR - NLA_F_NESTED(1 << 15).
If i remove this flag - everything works fine. And here is the case, iproute2 tools
just update length of TCA_OPTIONS, without setting flag, and it works because of that fine too.

So there is basically 3 solutions:
1)New function in libmnl to do nested attributes without setting by OR flag
2)AND-ing attribute type in kernel to ignore nested flag
3)Keeping as is, who cares?

Thank you for your attention.

Denys Fedoryshchenko, Network Engineer, Virtual ISP S.A.L.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at