2 * Copyright (c) 2015-2016 Cisco and/or its affiliates.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at:
7 * http://www.apache.org/licenses/LICENSE-2.0
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
16 option version = "4.0.1";
18 import "vnet/interface_types.api";
19 import "vnet/ethernet/ethernet_types.api";
20 import "vnet/devices/virtio/virtio_types.api";
22 /** \brief vhost-user interface create request
23 @param client_index - opaque cookie to identify the sender
24 @param is_server - our side is socket server
25 @param sock_filename - unix socket filename, used to speak with frontend
26 @param use_custom_mac - enable or disable the use of the provided hardware address
27 @param disable_mrg_rxbuf - disable the use of merge receive buffers
28 @param disable_indirect_desc - disable the use of indirect descriptors which driver can use
29 @param enable_gso - enable gso support (default 0)
30 @param enable_packed - enable packed ring support (default 0)
31 @param mac_address - hardware address to use if 'use_custom_mac' is set
33 define create_vhost_user_if
38 string sock_filename[256];
40 bool disable_mrg_rxbuf;
41 bool disable_indirect_desc;
44 u32 custom_dev_instance;
46 vl_api_mac_address_t mac_address;
50 /** \brief vhost-user interface create response
51 @param context - sender context, to match reply w/ request
52 @param retval - return code for the request
53 @param sw_if_index - interface the operation is applied to
55 define create_vhost_user_if_reply
59 vl_api_interface_index_t sw_if_index;
62 /** \brief vhost-user interface modify request
63 @param client_index - opaque cookie to identify the sender
64 @param is_server - our side is socket server
65 @param sock_filename - unix socket filename, used to speak with frontend
66 @param enable_gso - enable gso support (default 0)
67 @param enable_packed - enable packed ring support (default 0)
69 autoreply define modify_vhost_user_if
73 vl_api_interface_index_t sw_if_index;
75 string sock_filename[256];
79 u32 custom_dev_instance;
82 /** \brief vhost-user interface delete request
83 @param client_index - opaque cookie to identify the sender
85 autoreply define delete_vhost_user_if
89 vl_api_interface_index_t sw_if_index;
92 /** \brief Vhost-user interface details structure (fix this)
93 @param sw_if_index - index of the interface
94 @param interface_name - name of interface
95 @param virtio_net_hdr_sz - net header size
96 @param features_first_32 - interface features, first 32 bits
97 @param features_last_32 - interface features, last 32 bits
98 @param is_server - vhost-user server socket
99 @param sock_filename - socket filename
100 @param num_regions - number of used memory regions
101 @param sock_errno - socket errno
103 define sw_interface_vhost_user_details
106 vl_api_interface_index_t sw_if_index;
107 string interface_name[64];
108 u32 virtio_net_hdr_sz;
109 vl_api_virtio_net_features_first_32_t features_first_32;
110 vl_api_virtio_net_features_last_32_t features_last_32;
112 string sock_filename[256];
117 /** \brief Vhost-user interface dump request
118 @param sw_if_index - filter by sw_if_index
120 define sw_interface_vhost_user_dump
124 vl_api_interface_index_t sw_if_index [default=0xffffffff];
128 * eval: (c-set-style "gnu")