2 * Copyright (c) 2016 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.
18 This file defines vpp BIER control-plane API messages which are generally
19 called through a shared memory interface.
21 option version = "1.1.0";
22 import "vnet/fib/fib_types.api";
24 /** \brief BIER Table Indentifier
25 @param bt_set - The BIER set
26 @param bt_sub_domain - the sud-domain
27 @param bt_bit_header_length - the number of bits in the header length
29 typeonly define bier_table_id
36 /** \brief BIER Table Add / del route
37 @param client_index - opaque cookie to identify the sender
38 @param context - sender context, to match reply w/ request
39 @param bt_tbl_id - The BIER table-id the route is added in
40 @param bt_label - The MPLS label for the table (0 or all ones means not set)
41 If the label is not set, then it is assumed that non-MPLS
43 @param bt_is_add - Is this a route add or delete
45 autoreply define bier_table_add_del
49 vl_api_bier_table_id_t bt_tbl_id;
54 define bier_table_dump
60 define bier_table_details
64 vl_api_bier_table_id_t bt_tbl_id;
67 /** \brief BIER Route Add / del route
68 @param client_index - opaque cookie to identify the sender
69 @param context - sender context, to match reply w/ request
70 @param br_bp - The Bit-position value
71 @param br_tbl_id - The BIER table-id the route is added in
72 @param br_is_add - Is this a route add or delete
73 @param br_is_replace - Are the paths specfied replacing those already
74 present or are they to be combined.
75 @param br_n_paths - The number of paths
76 @param br_paths - The array of paths
78 autoreply define bier_route_add_del
85 vl_api_bier_table_id_t br_tbl_id;
87 vl_api_fib_path_t br_paths[br_n_paths];
90 define bier_route_dump
94 vl_api_bier_table_id_t br_tbl_id;
97 define bier_route_details
102 vl_api_bier_table_id_t br_tbl_id;
104 vl_api_fib_path_t br_paths[br_n_paths];
107 /** \brief BIER Imposition Add
108 @param client_index - opaque cookie to identify the sender
109 @param context - sender context, to match reply w/ request
110 @param bi_tbl_id - The BIER table-id used to forward post encap
111 @param bi_src - The source Bit-position in the encap.
112 @param bi_n_bytes - The number of bytes in the following bit-string.
113 VPP only supports BSL of 1024 and less, so this is
115 @param bi_bytes - The bit-string represented as a byte array (MSB first)
121 vl_api_bier_table_id_t bi_tbl_id;
124 u8 bi_bytes[bi_n_bytes];
127 /** \brief Reply for BIER route add / del request
128 @param context - returned sender context, to match reply w/ request
129 @param retval - return code
130 @param bi_index - The index of the created imposition object.
132 define bier_imp_add_reply
139 /** \brief BIER Imposition Del
140 @param client_index - opaque cookie to identify the sender
141 @param context - sender context, to match reply w/ request
142 @param bi_index - The index of the imposition object (as returned
145 autoreply define bier_imp_del
158 define bier_imp_details
162 vl_api_bier_table_id_t bi_tbl_id;
165 u8 bi_bytes[bi_n_bytes];
168 /** \brief BIER Disposition Table Add / del route
169 @param client_index - opaque cookie to identify the sender
170 @param context - sender context, to match reply w/ request
171 @param bt_tbl_id - The BIER Disposition table-id.
173 autoreply define bier_disp_table_add_del
181 define bier_disp_table_dump
187 define bier_disp_table_details
193 /** \brief BIER Disposition Entry Add / del
194 @param client_index - opaque cookie to identify the sender
195 @param context - sender context, to match reply w/ request
196 @param bde_bp - The Bit-position value for the entry, i.e. the sender's
197 Use 0 for the default (match any source) entry.
198 @param bde_tbl_id - The BIER dispositiontable-id the route is added in
199 @param bde_next_hop_sw_if_index - the nextop interface
200 @param bde_is_add - Is this a route add or delete
201 @param bde_payload_proto - The payload protocol for which the next-hop
203 @param bde_paths - The outgoing paths for the entry
205 autoreply define bier_disp_entry_add_del
212 u8 bde_payload_proto;
214 vl_api_fib_path_t bde_paths[bde_n_paths];
217 define bier_disp_entry_dump
224 define bier_disp_entry_details
230 u8 bde_payload_proto;
232 vl_api_fib_path_t bde_paths[bde_n_paths];
237 * eval: (c-set-style "gnu")