blob: b819847e99846effb817a50799b6055a2c5d1875 [file] [log] [blame]
Chenmin Sund0236f72020-07-27 17:54:40 +08001/*
2 * Copyright (c) 2020 Intel 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:
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
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.
14 */
15
16option version = "0.0.1";
17
18import "vnet/interface_types.api";
19import "vnet/ip/ip_types.api";
20import "vnet/flow/flow_types.api";
21
22/** \brief flow add request
23 @param client_index - opaque cookie to identify the sender
24 @param context - sender context, to match reply w/ request
25 @param flow - flow rule
26*/
27define flow_add
28{
29 u32 client_index;
30 u32 context;
31 vl_api_flow_rule_t flow;
32 option vat_help = "test flow add [src-ip <ip-addr/mask>] [dst-ip <ip-addr/mask>] [src-port <port/mask>] [dst-port <port/mask>] [proto <ip-proto>]";
33};
34
35/** \brief reply for adding flow
36 @param context - sender context, to match reply w/ request
37 @param retval - return code
38 @param flow_index - flow index, can be used for flow del/enable/disable
39*/
40define flow_add_reply
41{
42 u32 context;
43 i32 retval;
44 u32 flow_index;
45};
46
47/** \brief flow del request
48 @param client_index - opaque cookie to identify the sender
49 @param context - sender context, to match reply w/ request
50 @param flow_index - flow index
51*/
52autoreply define flow_del
53{
54 u32 client_index;
55 u32 context;
56 u32 flow_index;
57 option vat_help = "test flow del index <index>";
58};
59
60/** \brief flow enable request
61 @param client_index - opaque cookie to identify the sender
62 @param context - sender context, to match reply w/ request
63 @param flow_index - flow index
64 @param hw_if_index - hardware interface index
65*/
66autoreply define flow_enable
67{
68 u32 client_index;
69 u32 context;
70 u32 flow_index;
71 u32 hw_if_index;
72 option vat_help = "test flow enable index <index> <interface name>";
73};
74
75/** \brief flow disable request
76 @param client_index - opaque cookie to identify the sender
77 @param context - sender context, to match reply w/ request
78 @param flow_index - flow index
79 @param hw_if_index - hardware interface index
80*/
81autoreply define flow_disable
82{
83 u32 client_index;
84 u32 context;
85 u32 flow_index;
86 u32 hw_if_index;
87 option vat_help = "test flow disable index <index> <interface name>";
88};
89
90/*
91 * Local Variables:
92 * eval: (c-set-style "gnu")
93 * End:
94 */