diff options
author | Steven <sluong@cisco.com> | 2017-09-08 15:40:32 -0700 |
---|---|---|
committer | Damjan Marion <dmarion.lists@gmail.com> | 2017-09-11 10:15:43 +0000 |
commit | a19e1054b58024891691eaebeb13700cdce57fea (patch) | |
tree | 1fa8043e94b45a22dd27a40876534d4f5ea12983 | |
parent | 1500254bee11355bbd69cc1dd9705be4f002f2bd (diff) |
memif: mode ip is not settable from binary API
While mode ip is supported via the CLI for creating a memif interface,
it is not settable from the binary API due to missing code.
While at it, update the help usage to include the missing keyword secret.
Change-Id: Ia9c71f4017210a5e1733ce4992fbb566b7d20c1a
Signed-off-by: Steven <sluong@cisco.com>
-rw-r--r-- | src/plugins/memif/cli.c | 4 | ||||
-rw-r--r-- | src/plugins/memif/memif_api.c | 3 | ||||
-rw-r--r-- | src/plugins/memif/memif_test.c | 7 |
3 files changed, 10 insertions, 4 deletions
diff --git a/src/plugins/memif/cli.c b/src/plugins/memif/cli.c index 8af761646a8..e1bd04441e0 100644 --- a/src/plugins/memif/cli.c +++ b/src/plugins/memif/cli.c @@ -109,8 +109,8 @@ VLIB_CLI_COMMAND (memif_create_command, static) = { .path = "create memif", .short_help = "create memif [id <id>] [socket <path>] " "[ring-size <size>] [buffer-size <size>] [hw-addr <mac-address>] " - "<master|slave> [rx-queues <number>] [tx-queues <number>]" - "[mode ip]", + "<master|slave> [rx-queues <number>] [tx-queues <number>] " + "[mode ip] [secret <string>]", .function = memif_create_command_fn, }; /* *INDENT-ON* */ diff --git a/src/plugins/memif/memif_api.c b/src/plugins/memif/memif_api.c index 89afdb8d681..07347bc05a4 100644 --- a/src/plugins/memif/memif_api.c +++ b/src/plugins/memif/memif_api.c @@ -133,6 +133,9 @@ vl_api_memif_create_t_handler (vl_api_memif_create_t * mp) /* role */ args.is_master = (mp->role == 0); + /* mode */ + args.mode = mp->mode; + /* rx/tx queues */ if (args.is_master == 0) { diff --git a/src/plugins/memif/memif_test.c b/src/plugins/memif/memif_test.c index a7c23daae9c..4ca7526df13 100644 --- a/src/plugins/memif/memif_test.c +++ b/src/plugins/memif/memif_test.c @@ -129,7 +129,7 @@ api_memif_create (vat_main_t * vam) u32 rx_queues = MEMIF_DEFAULT_RX_QUEUES; u32 tx_queues = MEMIF_DEFAULT_TX_QUEUES; int ret; - + u8 mode = MEMIF_INTERFACE_MODE_ETHERNET; while (unformat_check_input (i) != UNFORMAT_END_OF_INPUT) { @@ -148,6 +148,8 @@ api_memif_create (vat_main_t * vam) else if (unformat (i, "slave %U", unformat_memif_queues, &rx_queues, &tx_queues)) role = 1; + else if (unformat (i, "mode ip")) + mode = MEMIF_INTERFACE_MODE_IP; else if (unformat (i, "hw_addr %U", unformat_ethernet_address, hw_addr)) ; else @@ -177,6 +179,7 @@ api_memif_create (vat_main_t * vam) M (MEMIF_CREATE, mp); + mp->mode = mode; mp->id = clib_host_to_net_u32 (id); mp->role = role; mp->ring_size = clib_host_to_net_u32 (ring_size); @@ -309,7 +312,7 @@ static void vl_api_memif_details_t_handler (vl_api_memif_details_t * mp) #define foreach_vpe_api_msg \ _(memif_create, "[id <id>] [socket <path>] [ring_size <size>] " \ "[buffer_size <size>] [hw_addr <mac_address>] " \ - "<master|slave>") \ + "[secret <string>] [mode ip] <master|slave>") \ _(memif_delete, "<sw_if_index>") \ _(memif_dump, "") |