aboutsummaryrefslogtreecommitdiffstats
path: root/tools/bpf/bpftool/prog.c
diff options
context:
space:
mode:
authorQuentin Monnet <quentin.monnet@netronome.com>2017-10-23 12:24:14 -0400
committerDavid S. Miller <davem@davemloft.net>2017-10-23 20:25:09 -0400
commit004b45c0e51a8b6f20320181a946ba2d1bd3548b (patch)
treee532c699b273f8d0f937bd04cc02dacd1f840f28 /tools/bpf/bpftool/prog.c
parent9a5ab8bf1d6d16ef47fdf55dba1683ec00d751ad (diff)
tools: bpftool: provide JSON output for all possible commands
As all commands can now return JSON output (possibly just a "null" value), output of `bpftool --json batch file FILE` should also be fully JSON compliant. Signed-off-by: Quentin Monnet <quentin.monnet@netronome.com> Acked-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'tools/bpf/bpftool/prog.c')
-rw-r--r--tools/bpf/bpftool/prog.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/tools/bpf/bpftool/prog.c b/tools/bpf/bpftool/prog.c
index 41bd5390b4fc..e07f35ff80d1 100644
--- a/tools/bpf/bpftool/prog.c
+++ b/tools/bpf/bpftool/prog.c
@@ -602,11 +602,21 @@ err_free:
602 602
603static int do_pin(int argc, char **argv) 603static int do_pin(int argc, char **argv)
604{ 604{
605 return do_pin_any(argc, argv, bpf_prog_get_fd_by_id); 605 int err;
606
607 err = do_pin_any(argc, argv, bpf_prog_get_fd_by_id);
608 if (!err && json_output)
609 jsonw_null(json_wtr);
610 return err;
606} 611}
607 612
608static int do_help(int argc, char **argv) 613static int do_help(int argc, char **argv)
609{ 614{
615 if (json_output) {
616 jsonw_null(json_wtr);
617 return 0;
618 }
619
610 fprintf(stderr, 620 fprintf(stderr,
611 "Usage: %s %s show [PROG]\n" 621 "Usage: %s %s show [PROG]\n"
612 " %s %s dump xlated PROG [{ file FILE | opcodes }]\n" 622 " %s %s dump xlated PROG [{ file FILE | opcodes }]\n"