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:
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 = "1.0.0";
17 import "vnet/ip/ip_types.api";
18 import "vnet/interface_types.api";
22 * @brief VPP control-plane API messages.
24 * This file defines VPP control-plane API messages which are generally
25 * called through a shared memory interface.
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
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;
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
52 define dslite_address_dump {
57 /** \brief DS-Lite address details response
58 @param context - sender context, to match reply w/ request
59 @param ip_address - IPv4 address
61 define dslite_address_details {
63 vl_api_ip4_address_t ip_address;
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
72 autoreply define dslite_set_aftr_addr {
75 vl_api_ip4_address_t ip4_addr;
76 vl_api_ip6_address_t ip6_addr;
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
83 define dslite_get_aftr_addr {
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
94 define dslite_get_aftr_addr_reply {
97 vl_api_ip4_address_t ip4_addr;
98 vl_api_ip6_address_t ip6_addr;
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
107 autoreply define dslite_set_b4_addr {
110 vl_api_ip4_address_t ip4_addr;
111 vl_api_ip6_address_t ip6_addr;
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
118 define dslite_get_b4_addr {
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
129 define dslite_get_b4_addr_reply {
132 vl_api_ip4_address_t ip4_addr;
133 vl_api_ip6_address_t ip6_addr;