Real patch is the last one, first two do preparation work: 1. Allow removal of the dependency for the reject statement 2. Keep exact icmp type for bridge when printing. This is needed so we do not lose the l3 protocol information. In the ip family, "reject" and "reject with icmp type port-unreachable" are the same, but in case of bridge the latter adds a protocol dependency on ipv4, whereas the former rejects ip with icmp and ipv6 with a similar icmp-v6 error packet. 3. Prefer meta protocol for bridge family for all implicit depencencies. include/statement.h | 3 src/json.c | 6 - src/meta.c | 6 - src/netlink_delinearize.c | 10 + src/payload.c | 18 +++ src/statement.c | 6 - tests/py/bridge/ether.t | 4 tests/py/bridge/ether.t.json.output | 48 --------- tests/py/bridge/ether.t.payload | 24 +++- tests/py/bridge/icmpX.t.payload | 4 tests/py/bridge/reject.t | 28 ++--- tests/py/bridge/reject.t.json.output | 170 +++++--------------------------- tests/py/bridge/reject.t.payload | 24 ++-- tests/py/inet/ip_tcp.t.payload.bridge | 8 - tests/py/inet/sets.t.payload.bridge | 4 tests/py/ip/ip.t.payload.bridge | 180 +++++++++++++++++----------------- 16 files changed, 217 insertions(+), 326 deletions(-)