GBP plugin
[vpp.git] / src / plugins / gbp / gbp.api
1 /* Hey Emacs use -*- mode: C -*- */
2 /*
3  * Copyright (c) 2016 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 option version = "1.0.0";
18
19 /** \brief Endpoint
20     @param client_index - opaque cookie to identify the sender
21     @param context - sender context, to match reply w/ request
22 */
23
24 typeonly define gbp_endpoint
25 {
26   u32 sw_if_index;
27   u32 epg_id;
28   u8  is_ip6;
29   u8  address[16];
30 };
31
32 autoreply define gbp_endpoint_add_del
33 {
34   u32 client_index;
35   u32 context;
36   u8  is_add;
37   vl_api_gbp_endpoint_t endpoint;
38 };
39
40 define gbp_endpoint_dump
41 {
42   u32 client_index;
43   u32 context;
44 };
45
46 define gbp_endpoint_details
47 {
48   u32 context;
49   vl_api_gbp_endpoint_t endpoint;
50 };
51
52 typeonly define gbp_contract
53 {
54   u32 src_epg;
55   u32 dst_epg;
56   u32 acl_index;
57 };
58
59 autoreply define gbp_contract_add_del
60 {
61   u32 client_index;
62   u32 context;
63   u8  is_add;
64   vl_api_gbp_contract_t contract;
65 };
66
67 define gbp_contract_dump
68 {
69   u32 client_index;
70   u32 context;
71 };
72
73 define gbp_contract_details
74 {
75   u32 context;
76   vl_api_gbp_contract_t contract;
77 };
78
79 /*
80  * Local Variables:
81  * eval: (c-set-style "gnu")
82  * End:
83  */