Package: iproute2
Version: 4.20.0-2
Tags: patch

ip route in Buster 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": [ ]
    } ]


Small upstream fix is available since March 2019:
https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?id=073661773872709518d35d4d093f3a715281f21d

This bug renders the json output in Debian Buster unusable which is a
bad problem for my system that wants to parse it.

Best regards,
Oskar

Reply via email to