X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=tests%2Ftest-jsonrpc.c;h=f66dc651b6bfaa77ef0be456364f29d2d7ef0dbe;hb=1636c76112b63c50bb586186eb0c3aa16f9541c7;hp=d44543224cfbe056404ff5d1678b7aa3175e2c60;hpb=1774d762da192d26f0f1a6176d20358adfe57dd5;p=cascardo%2Fovs.git diff --git a/tests/test-jsonrpc.c b/tests/test-jsonrpc.c index d44543224..f66dc651b 100644 --- a/tests/test-jsonrpc.c +++ b/tests/test-jsonrpc.c @@ -40,11 +40,14 @@ static struct ovs_cmdl_command *get_all_commands(void); static void test_jsonrpc_main(int argc, char *argv[]) { + struct ovs_cmdl_context ctx = { .argc = 0, }; ovs_cmdl_proctitle_init(argc, argv); set_program_name(argv[0]); service_start(&argc, &argv); parse_options(argc, argv); - ovs_cmdl_run_command(argc - optind, argv + optind, get_all_commands()); + ctx.argc = argc - optind; + ctx.argv = argv + optind; + ovs_cmdl_run_command(&ctx, get_all_commands()); } static void @@ -166,7 +169,7 @@ handle_rpc(struct jsonrpc *rpc, struct jsonrpc_msg *msg, bool *done) } static void -do_listen(int argc OVS_UNUSED, char *argv[]) +do_listen(struct ovs_cmdl_context *ctx) { struct pstream *pstream; struct jsonrpc **rpcs; @@ -174,9 +177,9 @@ do_listen(int argc OVS_UNUSED, char *argv[]) bool done; int error; - error = jsonrpc_pstream_open(argv[1], &pstream, DSCP_DEFAULT); + error = jsonrpc_pstream_open(ctx->argv[1], &pstream, DSCP_DEFAULT); if (error) { - ovs_fatal(error, "could not listen on \"%s\"", argv[1]); + ovs_fatal(error, "could not listen on \"%s\"", ctx->argv[1]); } daemonize(); @@ -249,7 +252,7 @@ do_listen(int argc OVS_UNUSED, char *argv[]) } static void -do_request(int argc OVS_UNUSED, char *argv[]) +do_request(struct ovs_cmdl_context *ctx) { struct jsonrpc_msg *msg; struct jsonrpc *rpc; @@ -259,18 +262,18 @@ do_request(int argc OVS_UNUSED, char *argv[]) char *string; int error; - method = argv[2]; - params = parse_json(argv[3]); + method = ctx->argv[2]; + params = parse_json(ctx->argv[3]); msg = jsonrpc_create_request(method, params, NULL); string = jsonrpc_msg_is_valid(msg); if (string) { ovs_fatal(0, "not a valid JSON-RPC request: %s", string); } - error = stream_open_block(jsonrpc_stream_open(argv[1], &stream, + error = stream_open_block(jsonrpc_stream_open(ctx->argv[1], &stream, DSCP_DEFAULT), &stream); if (error) { - ovs_fatal(error, "could not open \"%s\"", argv[1]); + ovs_fatal(error, "could not open \"%s\"", ctx->argv[1]); } rpc = jsonrpc_open(stream); @@ -289,7 +292,7 @@ do_request(int argc OVS_UNUSED, char *argv[]) } static void -do_notify(int argc OVS_UNUSED, char *argv[]) +do_notify(struct ovs_cmdl_context *ctx) { struct jsonrpc_msg *msg; struct jsonrpc *rpc; @@ -299,18 +302,18 @@ do_notify(int argc OVS_UNUSED, char *argv[]) char *string; int error; - method = argv[2]; - params = parse_json(argv[3]); + method = ctx->argv[2]; + params = parse_json(ctx->argv[3]); msg = jsonrpc_create_notify(method, params); string = jsonrpc_msg_is_valid(msg); if (string) { ovs_fatal(0, "not a JSON RPC-valid notification: %s", string); } - error = stream_open_block(jsonrpc_stream_open(argv[1], &stream, + error = stream_open_block(jsonrpc_stream_open(ctx->argv[1], &stream, DSCP_DEFAULT), &stream); if (error) { - ovs_fatal(error, "could not open \"%s\"", argv[1]); + ovs_fatal(error, "could not open \"%s\"", ctx->argv[1]); } rpc = jsonrpc_open(stream); @@ -322,7 +325,7 @@ do_notify(int argc OVS_UNUSED, char *argv[]) } static void -do_help(int argc OVS_UNUSED, char *argv[] OVS_UNUSED) +do_help(struct ovs_cmdl_context *ctx OVS_UNUSED) { usage(); }