On Mon, 18 Mar 2019 18:19:29 +0100 Matteo Croce <mcr...@redhat.com> wrote:
> ip route generates an invalid JSON if the route type has to be printed, > eg. when detailed mode is active, or the type is different that unicast: > > $ ip -d -j -p route show > [ {"unicast", > "dst": "192.168.122.0/24", > "dev": "virbr0", > "protocol": "kernel", > "scope": "link", > "prefsrc": "192.168.122.1", > "flags": [ "linkdown" ] > } ] > > $ ip -j -p route show > [ {"unreachable", > "dst": "192.168.23.0/24", > "flags": [ ] > },{"prohibit", > "dst": "192.168.24.0/24", > "flags": [ ] > },{"blackhole", > "dst": "192.168.25.0/24", > "flags": [ ] > } ] > > Fix it by printing the route type as the "type" attribute: > > $ ip -d -j -p route show > [ { > "type": "unicast", > "dst": "default", > "gateway": "192.168.85.1", > "dev": "wlp3s0", > "protocol": "dhcp", > "scope": "global", > "metric": 600, > "flags": [ ] > },{ > "type": "unreachable", > "dst": "192.168.23.0/24", > "protocol": "boot", > "scope": "global", > "flags": [ ] > },{ > "type": "prohibit", > "dst": "192.168.24.0/24", > "protocol": "boot", > "scope": "global", > "flags": [ ] > },{ > "type": "blackhole", > "dst": "192.168.25.0/24", > "protocol": "boot", > "scope": "global", > "flags": [ ] > } ] > > Fixes: 663c3cb23103 ("iproute: implement JSON and color output") > Acked-by: Phil Sutter <p...@nwl.cc> > Reviewed-and-tested-by: Andrea Claudi <acla...@redhat.com> > Signed-off-by: Matteo Croce <mcr...@redhat.com> Applied both of these just before tagging 5.0