Hi Pablo, 2016-10-22 0:58 GMT+08:00 Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>: > We still need datatype information for the inet family, from the > netlink_delinearize step, when dumping back the policy to userspace. > Given that we cannot infer the datatype from the data size, as this > would be 16 bytes for both cases, we would still need to annotate this > context information somewhere. The existing approach is providing this > datatype information. Yes, the NFTA_RT_FAMILY attr will simplify our work, without this we will have much more work in nft utility. Since Anders suggests the following usage in INET family: # nft add rule inet filter postrouting ether type ip6 rt ip6 nexthop... ^^^^^^^^^^^^^ So I think it's better to add implict dependency rules in inet family: for rt ip nexthop: we add "meta nfproto ipv4" for rt ip6 nexthop: we add "meta nfproto ipv6" Then like NFT_CT_SRC do, we can implement a similar *ct_expr_update_type*, and call it in netlink_delinearize step. I agree this will add much more work in nft utility, and actually, use the NFTA_RT_FAMILY attr, if we did not add "ether type ip6" or "meta nfproto ipv6", "rt ip6 nexthop" can still work well in INET family. -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html