8794581604463e636ad7878cfb6b3e6d2074bf3d
[vpp.git] / src / plugins / ioam / udp-ping / udp_ping.api
1 /* Hey Emacs use -*- mode: C -*- */
2 /*
3  * Copyright (c) 2017 Cisco and/or its affiliates.
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at:
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17
18 /** \brief UDP-Probe Add/Delete request 
19     @param src_ip_address - Source ipv4/v6 address for the udp-ping flow
20     @param dst_ip_address - Destination ipv4/v6 address for the udp-ping flow
21     @param start_src_port - Starting source port of port range for udp-ping
22     @param end_src_port - End source port of port range for udp-ping
23     @param start_dst_port - Starting destination port of port range for udp-ping
24     @param end_dst_port - End destination port of port range for udp-ping
25     @param interval - Time interval in seconds at which udp-probe need to be sent
26     @param is_ipv4 - To determine whether IPv4 or IPv6 address is used
27     @param dis - TRUE is delete, FALSE if Add
28 */
29 define udp_ping_add_del_req {
30   u32 client_index;
31   u32 context;
32   u8 src_ip_address[16];
33   u8 dst_ip_address[16];
34   u16 start_src_port;
35   u16 end_src_port;
36   u16 start_dst_port;
37   u16 end_dst_port;
38   u16 interval;
39   u8 is_ipv4;
40   u8 dis;
41   u8 fault_det;
42   u8 reserve[3];
43 };
44
45 /** \brief Udp-probe add/del response
46     @param context - sender context, to match reply w/ request
47     @param retval - return value for request
48 */
49 define udp_ping_add_del_reply {
50     u32 context;
51     i32 retval;
52 };
53
54 /** \brief Udp-probe export add/del request
55     @param context - sender context, to match reply w/ request
56     @param retval - return value for request
57     @param enable - If TRUE then enable export else disable
58 */
59 define udp_ping_export_req {
60    u32 client_index;
61    u32 context;
62    u32 enable;
63 };
64
65 /** \brief Udp-probe export add/del response
66     @param context - sender context, to match reply w/ request
67     @param retval - return value for request
68 */
69 define udp_ping_export_reply {
70     u32 context;
71     i32 retval;
72 };
73