FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
dslite.api
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2019 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:
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 
16 option version = "1.0.0";
17 import "vnet/ip/ip_types.api";
18 import "vnet/interface_types.api";
19 
20 /**
21  * @file dslite.api
22  * @brief VPP control-plane API messages.
23  *
24  * This file defines VPP control-plane API messages which are generally
25  * called through a shared memory interface.
26  */
27 
28 
29 /*
30  * DS-Lite APIs
31  */
32 
33 /** \brief Add/delete address range to DS-Lite pool
34  @param client_index - opaque cookie to identify the sender
35  @param context - sender context, to match reply w/ request
36  @param start_addr - start IPv4 address of the range
37  @param end_addr - end IPv4 address of the range
38  @param is_add - true if add, false if delete
39 */
40 autoreply define dslite_add_del_pool_addr_range {
43  vl_api_ip4_address_t start_addr;
44  vl_api_ip4_address_t end_addr;
45  bool is_add;
46 };
47 
48 /** \brief Dump DS-Lite addresses
49  @param client_index - opaque cookie to identify the sender
50  @param context - sender context, to match reply w/ request
51 */
52 define dslite_address_dump {
55 };
56 
57 /** \brief DS-Lite address details response
58  @param context - sender context, to match reply w/ request
59  @param ip_address - IPv4 address
60 */
61 define dslite_address_details {
63  vl_api_ip4_address_t ip_address;
64 };
65 
66 /** \brief Set AFTR IPv6 and IPv4 addresses
67  @param client_index - opaque cookie to identify the sender
68  @param context - sender context, to match reply w/ request
69  @param ip4_addr - IPv4 address
70  @param ip6_addr - IPv6 address
71 */
72 autoreply define dslite_set_aftr_addr {
75  vl_api_ip4_address_t ip4_addr;
76  vl_api_ip6_address_t ip6_addr;
77 };
78 
79 /** \brief Get AFTR IPv6 and IPv4 addresses
80  @param client_index - opaque cookie to identify the sender
81  @param context - sender context, to match reply w/ request
82 */
83 define dslite_get_aftr_addr {
86 };
87 
88 /** \brief Response to get AFTR IPv6 and IPv4 addresses
89  @param context - sender context, to match reply w/ request
90  @param retval - return code
91  @param ip4_addr - IPv4 address
92  @param ip6_addr - IPv6 address
93 */
94 define dslite_get_aftr_addr_reply {
97  vl_api_ip4_address_t ip4_addr;
98  vl_api_ip6_address_t ip6_addr;
99 };
100 
101 /** \brief Set B4 IPv6 and IPv4 addresses
102  @param client_index - opaque cookie to identify the sender
103  @param context - sender context, to match reply w/ request
104  @param ip4_addr - IPv4 address
105  @param ip6_addr - IPv6 address
106 */
107 autoreply define dslite_set_b4_addr {
110  vl_api_ip4_address_t ip4_addr;
111  vl_api_ip6_address_t ip6_addr;
112 };
113 
114 /** \brief Get B4 IPv6 and IPv4 addresses
115  @param client_index - opaque cookie to identify the sender
116  @param context - sender context, to match reply w/ request
117 */
118 define dslite_get_b4_addr {
121 };
122 
123 /** \brief Response to get B4 IPv6 and IPv4 addresses
124  @param context - sender context, to match reply w/ request
125  @param retval - return code
126  @param ip4_addr - IPv4 address
127  @param ip6_addr - IPv6 address
128 */
129 define dslite_get_b4_addr_reply {
132  vl_api_ip4_address_t ip4_addr;
133  vl_api_ip6_address_t ip6_addr;
134 };
vl_api_dslite_get_aftr_addr_reply_t
Response to get AFTR IPv6 and IPv4 addresses.
Definition: dslite.api:94
vl_api_dslite_address_dump_t
Dump DS-Lite addresses.
Definition: dslite.api:52
vl_api_dslite_get_b4_addr_reply_t
Response to get B4 IPv6 and IPv4 addresses.
Definition: dslite.api:129
vl_api_dslite_get_aftr_addr_t
Get AFTR IPv6 and IPv4 addresses.
Definition: dslite.api:83
vl_api_dslite_get_b4_addr_reply_t::context
u32 context
Definition: dslite.api:130
vl_api_dslite_set_aftr_addr_t
Set AFTR IPv6 and IPv4 addresses.
Definition: dslite.api:72
vl_api_dslite_address_dump_t::client_index
u32 client_index
Definition: dslite.api:53
vl_api_dslite_add_del_pool_addr_range_t::client_index
u32 client_index
Definition: dslite.api:41
vl_api_dslite_get_b4_addr_reply_t::retval
i32 retval
Definition: dslite.api:131
vl_api_dslite_get_b4_addr_t
Get B4 IPv6 and IPv4 addresses.
Definition: dslite.api:118
vl_api_dslite_get_b4_addr_reply_t::ip4_addr
vl_api_ip4_address_t ip4_addr
Definition: dslite.api:132
vl_api_dslite_set_aftr_addr_t::ip6_addr
vl_api_ip6_address_t ip6_addr
Definition: dslite.api:76
vl_api_dslite_address_details_t
DS-Lite address details response.
Definition: dslite.api:61
vl_api_dslite_get_aftr_addr_reply_t::context
u32 context
Definition: dslite.api:95
vl_api_dslite_set_aftr_addr_t::client_index
u32 client_index
Definition: dslite.api:73
vl_api_dslite_set_b4_addr_t::ip6_addr
vl_api_ip6_address_t ip6_addr
Definition: dslite.api:111
i32
signed int i32
Definition: types.h:77
vl_api_dslite_add_del_pool_addr_range_t::end_addr
vl_api_ip4_address_t end_addr
Definition: dslite.api:44
vl_api_dslite_get_b4_addr_t::client_index
u32 client_index
Definition: dslite.api:119
vl_api_dslite_set_b4_addr_t::context
u32 context
Definition: dslite.api:109
vl_api_dslite_get_aftr_addr_reply_t::ip6_addr
vl_api_ip6_address_t ip6_addr
Definition: dslite.api:98
vl_api_dslite_add_del_pool_addr_range_t::is_add
bool is_add
Definition: dslite.api:45
version
option version
Definition: dslite.api:16
vl_api_dslite_set_aftr_addr_t::context
u32 context
Definition: dslite.api:74
vl_api_dslite_get_aftr_addr_t::context
u32 context
Definition: dslite.api:85
vl_api_dslite_get_aftr_addr_reply_t::ip4_addr
vl_api_ip4_address_t ip4_addr
Definition: dslite.api:97
vl_api_dslite_set_b4_addr_t::client_index
u32 client_index
Definition: dslite.api:108
vl_api_dslite_address_details_t::ip_address
vl_api_ip4_address_t ip_address
Definition: dslite.api:63
vl_api_dslite_add_del_pool_addr_range_t::start_addr
vl_api_ip4_address_t start_addr
Definition: dslite.api:43
vl_api_dslite_get_b4_addr_reply_t::ip6_addr
vl_api_ip6_address_t ip6_addr
Definition: dslite.api:133
u32
unsigned int u32
Definition: types.h:88
vl_api_dslite_get_aftr_addr_reply_t::retval
i32 retval
Definition: dslite.api:96
vl_api_dslite_get_b4_addr_t::context
u32 context
Definition: dslite.api:120
vl_api_dslite_set_aftr_addr_t::ip4_addr
vl_api_ip4_address_t ip4_addr
Definition: dslite.api:75
vl_api_dslite_get_aftr_addr_t::client_index
u32 client_index
Definition: dslite.api:84
vl_api_dslite_add_del_pool_addr_range_t::context
u32 context
Definition: dslite.api:42
vl_api_dslite_set_b4_addr_t::ip4_addr
vl_api_ip4_address_t ip4_addr
Definition: dslite.api:110
vl_api_dslite_address_details_t::context
u32 context
Definition: dslite.api:62
vl_api_dslite_set_b4_addr_t
Set B4 IPv6 and IPv4 addresses.
Definition: dslite.api:107
vl_api_dslite_add_del_pool_addr_range_t
Add/delete address range to DS-Lite pool.
Definition: dslite.api:40
vl_api_dslite_address_dump_t::context
u32 context
Definition: dslite.api:54