From: Stephen Hemminger <step...@networkplumber.org> This set of patches adds JSON output to route printing. Tested for the simple cases, but there are many variations and there such as lw tunnels which have not be tested.
The color formatting may need some additional tweaks. It looks like for some tags the tag is also showing up in color. This should be fixed in print_color_string rather than having to do special case handling in so many places. This patchset also changes the default JSON output to be compressed (since the purpose of JSON is to make output machine readable); but do optional pretty print formatting with -p flag. Stephen Hemminger (4): json: make pretty printing optional man: add documentation for json and pretty flags json: fix newline at end of array iproute: implement JSON and color output include/json_print.h | 2 + include/utils.h | 5 + ip/ip.c | 7 +- ip/iproute.c | 376 +++++++++++++++++++++++++++++++++++--------------- ip/iproute_lwtunnel.c | 129 ++++++++++------- lib/json_print.c | 5 +- lib/json_writer.c | 5 + man/man8/ip.8 | 18 ++- man/man8/tc.8 | 3 +- tc/tc.c | 3 + 10 files changed, 381 insertions(+), 172 deletions(-) -- 2.15.1