* rtnl_tc_action.c: Include "nlattr.h" and "xlat/rtnl_tc_action_attrs.h". (decode_tcamsg): Call decode_nlattr. * xlat/rtnl_tc_action_attrs.in: New file.
Co-authored-by: Fabien Siron <fabien.si...@epita.fr> --- rtnl_tc_action.c | 11 +++++++++++ xlat/rtnl_tc_action_attrs.in | 7 +++++++ 2 files changed, 18 insertions(+) create mode 100644 xlat/rtnl_tc_action_attrs.in diff --git a/rtnl_tc_action.c b/rtnl_tc_action.c index 5b6b49b..ca0b72b 100644 --- a/rtnl_tc_action.c +++ b/rtnl_tc_action.c @@ -29,15 +29,26 @@ #include "defs.h" #include "netlink_route.h" +#include "nlattr.h" #include "print_fields.h" #include "netlink.h" #include <linux/rtnetlink.h> +#include "xlat/rtnl_tc_action_attrs.h" + DECL_NETLINK_ROUTE_DECODER(decode_tcamsg) { struct tcamsg tca = { .tca_family = family }; PRINT_FIELD_XVAL("{", tca, tca_family, addrfams, "AF_???"); tprints("}"); + + const size_t offset = NLMSG_ALIGN(sizeof(tca)); + if (len > offset) { + tprints(", "); + decode_nlattr(tcp, addr + offset, len - offset, + rtnl_tc_action_attrs, "TCA_ACT_???", + NULL, 0, NULL); + } } diff --git a/xlat/rtnl_tc_action_attrs.in b/xlat/rtnl_tc_action_attrs.in new file mode 100644 index 0000000..ebb3dd4 --- /dev/null +++ b/xlat/rtnl_tc_action_attrs.in @@ -0,0 +1,7 @@ +TCA_ACT_UNSPEC 0 +TCA_ACT_KIND 1 +TCA_ACT_OPTIONS 2 +TCA_ACT_INDEX 3 +TCA_ACT_STATS 4 +TCA_ACT_PAD 5 +TCA_ACT_COOKIE 6 -- 2.7.4 ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Strace-devel mailing list Strace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/strace-devel