From: Jiri Pirko <j...@mellanox.com> An example json output:
$ tc -s -j filter show dev ens8 egress [{ "protocol": "ip", "pref": 6001, "kind": "flower", "chain": 0 },{ "protocol": "ip", "pref": 6001, "kind": "flower", "chain": 0, "options": { "handle": 1, "keys": { "eth_type": "ipv4", "dst_ip": "192.168.250.1" }, "not_in_hw": true, "actions": [{ "order": 1, "kind": "gact", "control_action": { "type": "drop" }, "prob": { "random_type": "none", "control_action": { "type": "pass" }, "val": 0 }, "index": 1, "ref": 1, "bind": 1, "installed": 1667830, "last_used": 1667830, "stats": { "bytes": 0, "packets": 0, "drops": 0, "overlimits": 0, "requeues": 0, "backlog": 0, "qlen": 0, "requeues": 0 }, "cookie": "a1b2c3d4aaaaaaaabb" } } } } ] $ tc -s filter show dev ens8 egress filter pref 6001 flower chain 0 filter pref 6001 flower chain 0 handle 0x1 eth_type ipv4 dst_ip 192.168.250.1 not_in_hw action order 1: gact action drop random type none pass val 0 index 1 ref 1 bind 1 installed 16689 sec used 16689 sec Action statistics: Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) backlog 0b 0p requeues 0 cookie a1b2c3d4aaaaaaaabb --- To be applied on top of my cookie fix patchset Jiri Pirko (11): tc: jsonify qdisc core tc: jsonify stats2 tc: jsonify fq_codel qdisc tc: jsonify htb qdisc tc: jsonify filter core tc: jsonify flower filter tc: jsonify matchall filter tc: jsonify actions core tc: jsonify gact action tc: jsonify mirred action tc: jsonify vlan action tc/f_flower.c | 287 +++++++++++++++++++++++++++++++++----------------------- tc/f_matchall.c | 12 +-- tc/m_action.c | 22 +++-- tc/m_gact.c | 18 ++-- tc/m_mirred.c | 46 +++++++-- tc/m_vlan.c | 26 +++-- tc/q_fq_codel.c | 25 +++-- tc/q_htb.c | 20 ++-- tc/tc.c | 5 +- tc/tc_filter.c | 47 ++++++---- tc/tc_qdisc.c | 52 ++++++---- tc/tc_util.c | 66 +++++++++---- tc/tc_util.h | 1 + 13 files changed, 396 insertions(+), 231 deletions(-) -- 2.9.5