FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
classify.api
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2015-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:
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 = "3.1.0";
17 
18 import "vnet/interface_types.api";
19 
20 /** \brief Add/Delete classification table request
21  @param client_index - opaque cookie to identify the sender
22  @param context - sender context, to match reply w/ request
23  @param is_add- if non-zero add the table, else delete it
24  @param del_chain - if non-zero delete the whole chain of tables
25  @param table_index - if add, returns index of the created table, else specifies the table to delete
26  @param nbuckets - number of buckets when adding a table
27  @param memory_size - memory size when adding a table
28  @param match_n_vectors - number of match vectors
29  @param next_table_index - index of next table
30  @param miss_next_index - index of miss table
31  @param current_data_flag - option to use current node's packet payload
32  as the starting point from where packets are classified,
33  This option is only valid for L2/L3 input ACL for now.
34  0: by default, classify data from the buffer's start location
35  1: classify packets from VPP node’s current data pointer
36  @param current_data_offset - a signed value to shift the start location of
37  the packet to be classified
38  For example, if input IP ACL node is used, L2 header’s first byte
39  can be accessible by configuring current_data_offset to -14
40  if there is no vlan tag.
41  This is valid only if current_data_flag is set to 1.
42  @param mask_len - length of match mask, should be equal to match_n_vectors * sizeof (u32x4)
43  @param mask - match mask
44 */
45 define classify_add_del_table
46 {
49  bool is_add;
50  bool del_chain;
51  u32 table_index [default=0xffffffff];
52  u32 nbuckets [default=2];
53  u32 memory_size [default=2097152];
54  u32 skip_n_vectors [default=0];
55  u32 match_n_vectors [default=1];
56  u32 next_table_index [default=0xffffffff];
57  u32 miss_next_index [default=0xffffffff];
58  u8 current_data_flag [default=0];
59  i16 current_data_offset [default=0];
61  u8 mask[mask_len];
62 };
63 
64 /** \brief Add/Delete classification table response
65  @param context - sender context, to match reply w/ request
66  @param retval - return code for the table add/del request
67  @param new_table_index - for add, returned index of the new table
68  @param skip_n_vectors - for add, returned value of skip_n_vectors in table
69  @param match_n_vectors -for add, returned value of match_n_vectors in table
70 */
71 define classify_add_del_table_reply
72 {
78 };
79 
80 enum classify_action : u8
81 {
86 };
87 
88 /** \brief Classify add / del session request
89  @param client_index - opaque cookie to identify the sender
90  @param context - sender context, to match reply w/ request
91  @param is_add - add session if non-zero, else delete
92  @param table_index - index of the table to add/del the session, required
93  @param hit_next_index - for add, hit_next_index of new session, required
94  @param opaque_index - for add, opaque_index of new session
95  @param advance -for add, advance value for session
96  @param action -
97  0: no action (by default)
98  metadata is not used.
99  1: Classified IP packets will be looked up from the
100  specified ipv4 fib table (configured by metadata as VRF id).
101  Only valid for L3 input ACL node
102  2: Classified IP packets will be looked up from the
103  specified ipv6 fib table (configured by metadata as VRF id).
104  Only valid for L3 input ACL node
105  3: Classified packet will be steered to source routing policy
106  of given index (in metadata).
107  This is only valid for IPv6 packets redirected to a source
108  routing node.
109  @param metadata - valid only if action != 0
110  VRF id if action is 1 or 2.
111  sr policy index if action is 3.
112  @param match_len - length of match, should be equal to skip_n_vectors plus match_n_vectors
113  of target table times sizeof (u32x4)
114  @param match - for add, match value for session, required,
115  needs to include bytes in front
116  with length of skip_n_vectors of target table times sizeof (u32x4)
117  (values of those bytes will be ignored)
118 */
119 autoreply define classify_add_del_session
120 {
123  bool is_add;
125  u32 hit_next_index [default=0xffffffff];
126  u32 opaque_index [default=0xffffffff];
127  i32 advance [default=0];
128  vl_api_classify_action_t action [default=0];
129  u32 metadata [default=0];
131  u8 match[match_len];
132 };
133 
134 /** \brief Set/unset policer classify interface
135  @param client_index - opaque cookie to identify the sender
136  @param context - sender context, to match reply w/ request
137  @param sw_if_index - interface to set/unset policer classify
138  @param ip4_table_index - ip4 classify table index (~0 for skip)
139  @param ip6_table_index - ip6 classify table index (~0 for skip)
140  @param l2_table_index - l2 classify table index (~0 for skip)
141  @param is_add - Set if non-zero, else unset
142  Note: User is recommended to use just one valid table_index per call.
143  (ip4_table_index, ip6_table_index, or l2_table_index)
144 */
145 autoreply define policer_classify_set_interface
146 {
149  vl_api_interface_index_t sw_if_index;
153  bool is_add;
154 };
155 
157 {
161 };
162 
163 
164 /** \brief Get list of policer classify interfaces and tables
165  @param client_index - opaque cookie to identify the sender
166  @param context - sender context, to match reply w/ request
167  @param type - classify table type
168  @param sw_if_index - filter on sw_if_index
169 */
170 define policer_classify_dump
171 {
174  vl_api_policer_classify_table_t type;
175  vl_api_interface_index_t sw_if_index;
176 };
177 
178 /** \brief Policer classify operational state response.
179  @param context - sender context, to match reply w/ request
180  @param sw_if_index - software interface index
181  @param table_index - classify table index
182 */
183 define policer_classify_details
184 {
186  vl_api_interface_index_t sw_if_index;
188 };
189 
190 /** \brief Classify get table IDs request
191  @param client_index - opaque cookie to identify the sender
192  @param context - sender context, to match reply w/ request
193 */
194 define classify_table_ids
195 {
198 };
199 
200 /** \brief Reply for classify get table IDs request
201  @param context - sender context which was passed in the request
202  @param count - number of ids returned in response
203  @param ids - array of classify table ids
204 */
205 define classify_table_ids_reply
206 {
210  u32 ids[count];
211 };
212 
213 /** \brief Classify table ids by interface index request
214  @param client_index - opaque cookie to identify the sender
215  @param context - sender context, to match reply w/ request
216  @param sw_if_index - index of the interface
217 */
218 define classify_table_by_interface
219 {
222  vl_api_interface_index_t sw_if_index;
223 };
224 
225 /** \brief Reply for classify table id by interface index request
226  @param context - sender context which was passed in the request
227  @param count - number of ids returned in response
228  @param sw_if_index - index of the interface
229  @param l2_table_id - l2 classify table index
230  @param ip4_table_id - ip4 classify table index
231  @param ip6_table_id - ip6 classify table index
232 */
233 define classify_table_by_interface_reply
234 {
237  vl_api_interface_index_t sw_if_index;
241 };
242 
243 /** \brief Classify table info
244  @param client_index - opaque cookie to identify the sender
245  @param context - sender context, to match reply w/ request
246  @param table_id - classify table index
247 */
248 define classify_table_info
249 {
253 };
254 
255 /** \brief Reply for classify table info request
256  @param context - sender context which was passed in the request
257  @param count - number of ids returned in response
258  @param table_id - classify table index
259  @param nbuckets - number of buckets when adding a table
260  @param match_n_vectors - number of match vectors
261  @param skip_n_vectors - number of skip_n_vectors
262  @param active_sessions - number of sessions (active entries)
263  @param next_table_index - index of next table
264  @param miss_next_index - index of miss table
265  @param mask[] - match mask
266 */
267 define classify_table_info_reply
268 {
279  u8 mask[mask_length];
280 };
281 
282 /** \brief Classify sessions dump request
283  @param client_index - opaque cookie to identify the sender
284  @param context - sender context, to match reply w/ request
285  @param table_id - classify table index
286 */
287 define classify_session_dump
288 {
292 };
293 
294 /** \brief Reply for classify table session dump request
295  @param context - sender context which was passed in the request
296  @param count - number of ids returned in response
297  @param table_id - classify table index
298  @param hit_next_index - hit_next_index of session
299  @param opaque_index - for add, opaque_index of session
300  @param advance - advance value of session
301  @param match[] - match value for session
302 */
303 define classify_session_details
304 {
312  u8 match[match_length];
313 };
314 
315 /** \brief Set/unset flow classify interface
316  @param client_index - opaque cookie to identify the sender
317  @param context - sender context, to match reply w/ request
318  @param sw_if_index - interface to set/unset flow classify
319  @param ip4_table_index - ip4 classify table index (~0 for skip)
320  @param ip6_table_index - ip6 classify table index (~0 for skip)
321  @param l2_table_index - l2 classify table index (~0 for skip)
322  @param is_add - Set if non-zero, else unset
323  Note: User is recommended to use just one valid table_index per call.
324  (ip4_table_index, ip6_table_index, or l2_table_index)
325 */
326 autoreply define flow_classify_set_interface {
329  vl_api_interface_index_t sw_if_index;
332  bool is_add;
333 };
334 
336 {
339 };
340 
341 /** \brief Get list of flow classify interfaces and tables
342  @param client_index - opaque cookie to identify the sender
343  @param context - sender context, to match reply w/ request
344  @param type - flow classify table type
345  @param sw_if_index - filter on sw_if_index
346 */
347 define flow_classify_dump {
350  vl_api_flow_classify_table_t type;
351  vl_api_interface_index_t sw_if_index;
352 };
353 
354 /** \brief Flow classify operational state response.
355  @param context - sender context, to match reply w/ request
356  @param sw_if_index - software interface index
357  @param table_index - classify table index
358 */
359 define flow_classify_details {
361  vl_api_interface_index_t sw_if_index;
363 };
364 
365 /** \brief Set/unset the classification table for an interface request
366  @param client_index - opaque cookie to identify the sender
367  @param context - sender context, to match reply w/ request
368  @param is_ipv6 - ipv6 if non-zero, else ipv4
369  @param sw_if_index - interface to associate with the table
370  @param table_index - index of the table, if ~0 unset the table
371 */
372 autoreply define classify_set_interface_ip_table
373 {
376  bool is_ipv6;
377  vl_api_interface_index_t sw_if_index;
378  u32 table_index; /* ~0 => off */
379 };
380 
381 /** \brief Set/unset l2 classification tables for an interface request
382  @param client_index - opaque cookie to identify the sender
383  @param context - sender context, to match reply w/ request
384  @param sw_if_index - interface to set/unset tables for
385  @param ip4_table_index - ip4 index, use ~0 for all 3 indexes to unset
386  @param ip6_table_index - ip6 index
387  @param other_table_index - other index
388 */
389 autoreply define classify_set_interface_l2_tables
390 {
393  vl_api_interface_index_t sw_if_index;
394  /* 3 x ~0 => off */
398  bool is_input;
399 };
400 
401 /** \brief Set/unset input ACL interface
402  @param client_index - opaque cookie to identify the sender
403  @param context - sender context, to match reply w/ request
404  @param sw_if_index - interface to set/unset input ACL
405  @param ip4_table_index - ip4 classify table index (~0 for skip)
406  @param ip6_table_index - ip6 classify table index (~0 for skip)
407  @param l2_table_index - l2 classify table index (~0 for skip)
408  @param is_add - Set input ACL if non-zero, else unset
409  Note: User is recommended to use just one valid table_index per call.
410  (ip4_table_index, ip6_table_index, or l2_table_index)
411 */
412 autoreply define input_acl_set_interface
413 {
416  vl_api_interface_index_t sw_if_index;
420  bool is_add;
421 };
422 
423 /** \brief Set/unset output ACL interface
424  @param client_index - opaque cookie to identify the sender
425  @param context - sender context, to match reply w/ request
426  @param sw_if_index - interface to set/unset output ACL
427  @param ip4_table_index - ip4 classify table index (~0 for skip)
428  @param ip6_table_index - ip6 classify table index (~0 for skip)
429  @param l2_table_index - l2 classify table index (~0 for skip)
430  @param is_add - Set output ACL if non-zero, else unset
431  Note: User is recommended to use just one valid table_index per call.
432  (ip4_table_index, ip6_table_index, or l2_table_index)
433 */
434 autoreply define output_acl_set_interface
435 {
438  vl_api_interface_index_t sw_if_index;
442  bool is_add;
443 };
444 
445 
446 
447 /** \brief Find a compatible Classify table in a PCAP chain
448  @param client_index - opaque cookie to identify the sender
449  @param context - sender context, to match reply w/ request
450  @param sw_if_index - interface whose chain will be searched, 0==system-wide
451  @param skip_n_vectors - number of u32x4 skip vectors
452  @param match_n_vectors - number of u32x4 vectors, 1..5
453  @param mask_len - length of mask, match_n_vectors * sizeof(u32x4)
454  @param mask - match mask
455 */
456 define classify_pcap_lookup_table
457 {
460  vl_api_interface_index_t sw_if_index [default=0xffffffff];
461  u32 skip_n_vectors [default=0];
462  u32 match_n_vectors [default=1];
464  u8 mask[mask_len];
465 };
466 
467 /** \brief Classify pcap table lookup response
468  @param context - sender context, to match reply w/ request
469  @param retval - return code for the table lookup request
470  @param table_index - returned index of the found table, or ~0
471  */
472 define classify_pcap_lookup_table_reply
473 {
477 };
478 
479 /** \brief Add a Classify table into a PCAP chain on an interface
480  @param client_index - opaque cookie to identify the sender
481  @param context - sender context, to match reply w/ request
482  @param sw_if_index - interface whose chain will be searched, 0==system-wide
483  @param table_index - Classify table to be added
484  @param sort_masks - 1=sort masks into most-to-least specific order
485  */
486 define classify_pcap_set_table
487 {
490  vl_api_interface_index_t sw_if_index;
491  u32 table_index [default=0xffffffff];
492  bool sort_masks [default=0];
493 };
494 
495 /** \brief Classify pcap table lookup response
496  @param context - sender context which was passed in the request
497  @param retval - return code for the table lookup request
498  @param table_index - returned index of the sorted table chain
499  */
500 define classify_pcap_set_table_reply
501 {
505 };
506 
507 /** \brief Classify get the PCAP table indices for an interface
508  @param client_index - opaque cookie to identify the sender
509  @param context - sender context, to match reply w/ request
510  */
511 define classify_pcap_get_tables
512 {
515  vl_api_interface_index_t sw_if_index;
516 };
517 
518 /** \brief Classify get a PCAP tables response
519  @param context - sender context which was passed in the request
520  @param retval - return code for the request
521  @param count - number of ids returned in response
522  @param indices - array of classify table indices
523  */
524 define classify_pcap_get_tables_reply
525 {
529  u32 indices[count];
530 };
531 
532 
533 
534 /** \brief Find a mask-compatible Classify table in the Trace chain
535  @param client_index - opaque cookie to identify the sender
536  @param context - sender context, to match reply w/ request
537  @param skip_n_vectors - number of u32x4 skip vectors
538  @param match_n_vectors - number of u32x4 vectors, 1..5
539  @param mask_len - length of mask, match_n_vectors * sizeof(u32x4)
540  @param mask - match mask
541 */
542 define classify_trace_lookup_table
543 {
546  u32 skip_n_vectors [default=0];
547  u32 match_n_vectors [default=1];
549  u8 mask[mask_len];
550 };
551 
552 /** \brief Classify trace table lookup response
553  @param context - sender context which was passed in the request
554  @param retval - return code for the table lookup request
555  @param table_index - returned index of the found table, or ~0
556  */
557 define classify_trace_lookup_table_reply
558 {
562 };
563 
564 /** \brief Add a Classify table into the Trace chain
565  @param client_index - opaque cookie to identify the sender
566  @param context - sender context, to match reply w/ request
567  @param table_index - Classify table to be added
568  @param sort_masks - 1=sort masks into most-to-least specific order
569  */
570 define classify_trace_set_table
571 {
574  u32 table_index [default=0xffffffff];
575  bool sort_masks [default=0];
576 };
577 
578 /** \brief Classify Trace table lookup response
579  @param context - sender context which was passed in the request
580  @param retval - return code for the table lookup request
581  @param table_index - returned index of the sorted table chain
582  */
583 define classify_trace_set_table_reply
584 {
588 };
589 
590 /** \brief Classify get the Trace table indices
591  @param client_index - opaque cookie to identify the sender
592  @param context - sender context, to match reply w/ request
593  */
594 define classify_trace_get_tables
595 {
598 };
599 
600 /** \brief Classify get the Trace tables response
601  @param context - sender context which was passed in the request
602  @param retval - return code for the request
603  @param count - number of ids returned in response
604  @param indices - array of classify table indices
605  */
606 define classify_trace_get_tables_reply
607 {
611  u32 indices[count];
612 };
613 
614 /*
615  * Local Variables:
616  * eval: (c-set-style "gnu")
617  * End:
618  */
policer_classify_table
policer_classify_table
Definition: classify.api:156
vl_api_classify_table_ids_reply_t::count
u32 count
Definition: classify.api:209
vl_api_input_acl_set_interface_t::ip4_table_index
u32 ip4_table_index
Definition: classify.api:417
vl_api_classify_trace_get_tables_t
Classify get the Trace table indices.
Definition: classify.api:594
vl_api_classify_trace_lookup_table_reply_t::context
u32 context
Definition: classify.api:559
vl_api_classify_pcap_set_table_t
Add a Classify table into a PCAP chain on an interface.
Definition: classify.api:486
vl_api_classify_add_del_table_t::mask_len
u32 mask_len
Definition: classify.api:60
vl_api_classify_trace_get_tables_reply_t::context
u32 context
Definition: classify.api:608
vl_api_classify_trace_lookup_table_t::skip_n_vectors
u32 skip_n_vectors[default=0]
Definition: classify.api:546
vl_api_classify_table_by_interface_t
Classify table ids by interface index request.
Definition: classify.api:218
vl_api_policer_classify_details_t::table_index
u32 table_index
Definition: classify.api:187
vl_api_classify_session_details_t::match
u8 match[match_length]
Definition: classify.api:312
vl_api_classify_table_by_interface_t::context
u32 context
Definition: classify.api:221
vl_api_classify_trace_get_tables_reply_t::indices
u32 indices[count]
Definition: classify.api:611
vl_api_classify_add_del_table_reply_t::context
u32 context
Definition: classify.api:73
vl_api_classify_trace_get_tables_t::client_index
u32 client_index
Definition: classify.api:596
vl_api_classify_set_interface_l2_tables_t::is_input
bool is_input
Definition: classify.api:398
vl_api_classify_table_info_t::table_id
u32 table_id
Definition: classify.api:252
vl_api_policer_classify_dump_t::context
u32 context
Definition: classify.api:173
vl_api_classify_session_details_t::opaque_index
u32 opaque_index
Definition: classify.api:310
vl_api_classify_table_ids_t
Classify get table IDs request.
Definition: classify.api:194
vl_api_classify_add_del_table_t::current_data_offset
i16 current_data_offset[default=0]
Definition: classify.api:59
vl_api_policer_classify_set_interface_t
Set/unset policer classify interface.
Definition: classify.api:145
vl_api_classify_add_del_table_t::next_table_index
u32 next_table_index[default=0xffffffff]
Definition: classify.api:56
vl_api_output_acl_set_interface_t::context
u32 context
Definition: classify.api:437
vl_api_flow_classify_details_t::context
u32 context
Definition: classify.api:360
CLASSIFY_API_ACTION_SET_IP4_FIB_INDEX
@ CLASSIFY_API_ACTION_SET_IP4_FIB_INDEX
Definition: classify.api:83
vl_api_policer_classify_details_t::context
u32 context
Definition: classify.api:185
CLASSIFY_API_ACTION_SET_IP6_FIB_INDEX
@ CLASSIFY_API_ACTION_SET_IP6_FIB_INDEX
Definition: classify.api:84
vl_api_classify_add_del_table_reply_t::retval
i32 retval
Definition: classify.api:74
vl_api_classify_pcap_get_tables_t::client_index
u32 client_index
Definition: classify.api:513
vl_api_classify_session_details_t::match_length
u32 match_length
Definition: classify.api:311
vl_api_classify_set_interface_l2_tables_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:393
vl_api_classify_set_interface_ip_table_t::is_ipv6
bool is_ipv6
Definition: classify.api:376
vl_api_input_acl_set_interface_t::is_add
bool is_add
Definition: classify.api:420
vl_api_classify_table_info_reply_t::context
u32 context
Definition: classify.api:269
vl_api_classify_session_details_t::advance
i32 advance
Definition: classify.api:309
vl_api_classify_table_ids_reply_t
Reply for classify get table IDs request.
Definition: classify.api:205
vl_api_classify_add_del_session_t::match
u8 match[match_len]
Definition: classify.api:131
vl_api_flow_classify_set_interface_t::is_add
bool is_add
Definition: classify.api:332
vl_api_classify_pcap_get_tables_reply_t::indices
u32 indices[count]
Definition: classify.api:529
vl_api_classify_add_del_table_t
Add/Delete classification table request.
Definition: classify.api:45
vl_api_classify_add_del_table_t::skip_n_vectors
u32 skip_n_vectors[default=0]
Definition: classify.api:54
vl_api_flow_classify_set_interface_t::context
u32 context
Definition: classify.api:328
vl_api_classify_table_info_t::client_index
u32 client_index
Definition: classify.api:250
CLASSIFY_API_ACTION_SET_METADATA
@ CLASSIFY_API_ACTION_SET_METADATA
Definition: classify.api:85
vl_api_input_acl_set_interface_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:416
vl_api_classify_add_del_session_t
Classify add / del session request.
Definition: classify.api:119
version
option version
Definition: classify.api:16
vl_api_input_acl_set_interface_t
Set/unset input ACL interface.
Definition: classify.api:412
vl_api_classify_trace_get_tables_reply_t::retval
i32 retval
Definition: classify.api:609
vl_api_classify_pcap_lookup_table_t::match_n_vectors
u32 match_n_vectors[default=1]
Definition: classify.api:462
vl_api_classify_pcap_set_table_t::client_index
u32 client_index
Definition: classify.api:488
vl_api_classify_table_by_interface_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:222
vl_api_flow_classify_details_t
Flow classify operational state response.
Definition: classify.api:359
vl_api_classify_table_info_reply_t::mask_length
u32 mask_length
Definition: classify.api:278
vl_api_classify_trace_lookup_table_t
Find a mask-compatible Classify table in the Trace chain.
Definition: classify.api:542
vl_api_classify_pcap_set_table_reply_t::retval
i32 retval
Definition: classify.api:503
vl_api_policer_classify_dump_t
Get list of policer classify interfaces and tables.
Definition: classify.api:170
vl_api_policer_classify_dump_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:175
vl_api_classify_session_dump_t::client_index
u32 client_index
Definition: classify.api:289
memory_size
u64 memory_size
Definition: vhost_user.h:124
vl_api_classify_add_del_table_reply_t::skip_n_vectors
u32 skip_n_vectors
Definition: classify.api:76
vl_api_flow_classify_set_interface_t
Set/unset flow classify interface.
Definition: classify.api:326
vl_api_classify_pcap_get_tables_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:515
vl_api_input_acl_set_interface_t::l2_table_index
u32 l2_table_index
Definition: classify.api:419
vl_api_policer_classify_set_interface_t::ip4_table_index
u32 ip4_table_index
Definition: classify.api:150
vl_api_classify_trace_get_tables_reply_t::count
u32 count
Definition: classify.api:610
vl_api_classify_add_del_table_t::memory_size
u32 memory_size[default=2097152]
Definition: classify.api:53
i32
signed int i32
Definition: types.h:77
vl_api_classify_pcap_lookup_table_reply_t::table_index
u32 table_index
Definition: classify.api:476
FLOW_CLASSIFY_API_TABLE_IP6
@ FLOW_CLASSIFY_API_TABLE_IP6
Definition: classify.api:338
vl_api_classify_pcap_lookup_table_t::sw_if_index
vl_api_interface_index_t sw_if_index[default=0xffffffff]
Definition: classify.api:460
vl_api_classify_trace_set_table_t::sort_masks
bool sort_masks[default=0]
Definition: classify.api:575
vl_api_classify_add_del_table_t::table_index
u32 table_index[default=0xffffffff]
Definition: classify.api:51
vl_api_policer_classify_set_interface_t::client_index
u32 client_index
Definition: classify.api:147
vl_api_classify_set_interface_l2_tables_t::client_index
u32 client_index
Definition: classify.api:391
vl_api_classify_table_info_reply_t::retval
i32 retval
Definition: classify.api:270
i16
signed short i16
Definition: types.h:46
vl_api_classify_add_del_table_t::match_n_vectors
u32 match_n_vectors[default=1]
Definition: classify.api:55
vl_api_classify_set_interface_l2_tables_t::ip6_table_index
u32 ip6_table_index
Definition: classify.api:396
vl_api_classify_table_info_t
Classify table info.
Definition: classify.api:248
vl_api_classify_add_del_session_t::opaque_index
u32 opaque_index[default=0xffffffff]
Definition: classify.api:126
vl_api_classify_add_del_table_t::current_data_flag
u8 current_data_flag[default=0]
Definition: classify.api:58
vl_api_classify_table_by_interface_reply_t::ip6_table_id
u32 ip6_table_id
Definition: classify.api:240
count
u8 count
Definition: dhcp.api:208
vl_api_classify_table_by_interface_reply_t::retval
i32 retval
Definition: classify.api:236
POLICER_CLASSIFY_API_TABLE_L2
@ POLICER_CLASSIFY_API_TABLE_L2
Definition: classify.api:160
vl_api_classify_set_interface_ip_table_t::client_index
u32 client_index
Definition: classify.api:374
vl_api_classify_table_info_reply_t::table_id
u32 table_id
Definition: classify.api:271
vl_api_classify_add_del_session_t::metadata
u32 metadata[default=0]
Definition: classify.api:129
vl_api_classify_add_del_table_t::client_index
u32 client_index
Definition: classify.api:47
vl_api_classify_pcap_get_tables_reply_t::context
u32 context
Definition: classify.api:526
vl_api_policer_classify_set_interface_t::is_add
bool is_add
Definition: classify.api:153
vl_api_input_acl_set_interface_t::ip6_table_index
u32 ip6_table_index
Definition: classify.api:418
vl_api_classify_session_details_t::context
u32 context
Definition: classify.api:305
vl_api_classify_session_dump_t::table_id
u32 table_id
Definition: classify.api:291
vl_api_classify_set_interface_ip_table_t::context
u32 context
Definition: classify.api:375
vl_api_flow_classify_dump_t
Get list of flow classify interfaces and tables.
Definition: classify.api:347
vl_api_input_acl_set_interface_t::client_index
u32 client_index
Definition: classify.api:414
vl_api_classify_pcap_set_table_reply_t::context
u32 context
Definition: classify.api:502
POLICER_CLASSIFY_API_TABLE_IP6
@ POLICER_CLASSIFY_API_TABLE_IP6
Definition: classify.api:159
vl_api_classify_trace_lookup_table_reply_t::table_index
u32 table_index
Definition: classify.api:561
vl_api_classify_add_del_session_t::advance
i32 advance[default=0]
Definition: classify.api:127
vl_api_classify_add_del_session_t::context
u32 context
Definition: classify.api:122
vl_api_classify_pcap_get_tables_reply_t::retval
i32 retval
Definition: classify.api:527
vl_api_classify_add_del_session_t::action
vl_api_classify_action_t action[default=0]
Definition: classify.api:128
vl_api_classify_pcap_get_tables_reply_t::count
u32 count
Definition: classify.api:528
vl_api_classify_table_info_reply_t::active_sessions
u32 active_sessions
Definition: classify.api:275
vl_api_classify_trace_set_table_reply_t::table_index
u32 table_index
Definition: classify.api:587
vl_api_classify_add_del_table_reply_t::match_n_vectors
u32 match_n_vectors
Definition: classify.api:77
vl_api_classify_table_info_reply_t::match_n_vectors
u32 match_n_vectors
Definition: classify.api:273
vl_api_classify_session_dump_t::context
u32 context
Definition: classify.api:290
vl_api_classify_trace_set_table_t::table_index
u32 table_index[default=0xffffffff]
Definition: classify.api:574
vl_api_classify_table_info_reply_t::nbuckets
u32 nbuckets
Definition: classify.api:272
vl_api_classify_add_del_table_t::mask
u8 mask[mask_len]
Definition: classify.api:61
vl_api_classify_pcap_set_table_reply_t
Classify pcap table lookup response.
Definition: classify.api:500
vl_api_classify_session_dump_t
Classify sessions dump request.
Definition: classify.api:287
vl_api_classify_set_interface_l2_tables_t::other_table_index
u32 other_table_index
Definition: classify.api:397
vl_api_policer_classify_details_t
Policer classify operational state response.
Definition: classify.api:183
vl_api_classify_trace_lookup_table_t::match_n_vectors
u32 match_n_vectors[default=1]
Definition: classify.api:547
mask
vl_api_pnat_mask_t mask
Definition: pnat.api:45
vl_api_classify_table_ids_reply_t::ids
u32 ids[count]
Definition: classify.api:210
vl_api_classify_add_del_table_t::context
u32 context
Definition: classify.api:48
vl_api_flow_classify_set_interface_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:329
vl_api_classify_table_info_reply_t::mask
u8 mask[mask_length]
Definition: classify.api:279
vl_api_flow_classify_set_interface_t::ip6_table_index
u32 ip6_table_index
Definition: classify.api:331
vl_api_classify_set_interface_l2_tables_t::ip4_table_index
u32 ip4_table_index
Definition: classify.api:395
vl_api_classify_session_details_t::hit_next_index
u32 hit_next_index
Definition: classify.api:308
vl_api_classify_table_ids_reply_t::context
u32 context
Definition: classify.api:207
vl_api_classify_table_by_interface_reply_t::ip4_table_id
u32 ip4_table_id
Definition: classify.api:239
FLOW_CLASSIFY_API_TABLE_IP4
@ FLOW_CLASSIFY_API_TABLE_IP4
Definition: classify.api:337
vl_api_classify_table_ids_t::client_index
u32 client_index
Definition: classify.api:196
POLICER_CLASSIFY_API_TABLE_IP4
@ POLICER_CLASSIFY_API_TABLE_IP4
Definition: classify.api:158
vl_api_classify_add_del_table_reply_t::new_table_index
u32 new_table_index
Definition: classify.api:75
vl_api_classify_pcap_lookup_table_t::mask
u8 mask[mask_len]
Definition: classify.api:464
vl_api_classify_trace_set_table_reply_t::retval
i32 retval
Definition: classify.api:586
vl_api_classify_pcap_lookup_table_t::skip_n_vectors
u32 skip_n_vectors[default=0]
Definition: classify.api:461
vl_api_flow_classify_set_interface_t::ip4_table_index
u32 ip4_table_index
Definition: classify.api:330
vl_api_classify_pcap_lookup_table_t::client_index
u32 client_index
Definition: classify.api:458
vl_api_policer_classify_dump_t::type
vl_api_policer_classify_table_t type
Definition: classify.api:174
vl_api_classify_trace_get_tables_reply_t
Classify get the Trace tables response.
Definition: classify.api:606
vl_api_output_acl_set_interface_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:438
vl_api_classify_pcap_lookup_table_t
Find a compatible Classify table in a PCAP chain.
Definition: classify.api:456
vl_api_classify_table_by_interface_t::client_index
u32 client_index
Definition: classify.api:220
vl_api_classify_add_del_table_t::nbuckets
u32 nbuckets[default=2]
Definition: classify.api:52
vl_api_policer_classify_set_interface_t::context
u32 context
Definition: classify.api:148
vl_api_classify_set_interface_ip_table_t::table_index
u32 table_index
Definition: classify.api:378
vl_api_classify_pcap_lookup_table_t::mask_len
u32 mask_len
Definition: classify.api:463
vl_api_classify_set_interface_l2_tables_t
Set/unset l2 classification tables for an interface request.
Definition: classify.api:389
vl_api_classify_pcap_lookup_table_reply_t::retval
i32 retval
Definition: classify.api:475
vl_api_classify_add_del_table_reply_t
Add/Delete classification table response.
Definition: classify.api:71
vl_api_policer_classify_set_interface_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:149
vl_api_policer_classify_set_interface_t::l2_table_index
u32 l2_table_index
Definition: classify.api:152
vl_api_classify_pcap_lookup_table_reply_t::context
u32 context
Definition: classify.api:474
vl_api_classify_trace_lookup_table_reply_t::retval
i32 retval
Definition: classify.api:560
vl_api_classify_table_by_interface_reply_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:237
vl_api_classify_add_del_session_t::hit_next_index
u32 hit_next_index[default=0xffffffff]
Definition: classify.api:125
vl_api_classify_table_by_interface_reply_t
Reply for classify table id by interface index request.
Definition: classify.api:233
vl_api_classify_table_info_reply_t
Reply for classify table info request.
Definition: classify.api:267
vl_api_input_acl_set_interface_t::context
u32 context
Definition: classify.api:415
vl_api_classify_pcap_lookup_table_reply_t
Classify pcap table lookup response.
Definition: classify.api:472
flow_classify_table
flow_classify_table
Definition: classify.api:335
vl_api_classify_table_ids_reply_t::retval
i32 retval
Definition: classify.api:208
vl_api_classify_pcap_get_tables_t::context
u32 context
Definition: classify.api:514
vl_api_classify_pcap_set_table_t::context
u32 context
Definition: classify.api:489
vl_api_output_acl_set_interface_t::ip6_table_index
u32 ip6_table_index
Definition: classify.api:440
vl_api_classify_session_details_t::retval
i32 retval
Definition: classify.api:306
u32
unsigned int u32
Definition: types.h:88
vl_api_classify_table_info_reply_t::skip_n_vectors
u32 skip_n_vectors
Definition: classify.api:274
vl_api_classify_trace_lookup_table_t::client_index
u32 client_index
Definition: classify.api:544
vl_api_classify_table_ids_t::context
u32 context
Definition: classify.api:197
vl_api_classify_table_by_interface_reply_t::context
u32 context
Definition: classify.api:235
vl_api_output_acl_set_interface_t::l2_table_index
u32 l2_table_index
Definition: classify.api:441
vl_api_classify_add_del_session_t::client_index
u32 client_index
Definition: classify.api:121
vl_api_classify_trace_lookup_table_t::context
u32 context
Definition: classify.api:545
vl_api_output_acl_set_interface_t::is_add
bool is_add
Definition: classify.api:442
vl_api_classify_pcap_set_table_t::sort_masks
bool sort_masks[default=0]
Definition: classify.api:492
vl_api_policer_classify_details_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:186
vl_api_classify_table_info_reply_t::miss_next_index
u32 miss_next_index
Definition: classify.api:277
vl_api_flow_classify_set_interface_t::client_index
u32 client_index
Definition: classify.api:327
vl_api_classify_add_del_table_t::is_add
bool is_add
Definition: classify.api:49
vl_api_policer_classify_set_interface_t::ip6_table_index
u32 ip6_table_index
Definition: classify.api:151
vl_api_flow_classify_dump_t::context
u32 context
Definition: classify.api:349
CLASSIFY_API_ACTION_NONE
@ CLASSIFY_API_ACTION_NONE
Definition: classify.api:82
vl_api_classify_add_del_session_t::table_index
u32 table_index
Definition: classify.api:124
u8
unsigned char u8
Definition: types.h:56
vl_api_classify_set_interface_l2_tables_t::context
u32 context
Definition: classify.api:392
vl_api_classify_pcap_get_tables_t
Classify get the PCAP table indices for an interface.
Definition: classify.api:511
vl_api_classify_pcap_lookup_table_t::context
u32 context
Definition: classify.api:459
vl_api_policer_classify_dump_t::client_index
u32 client_index
Definition: classify.api:172
vl_api_classify_table_by_interface_reply_t::l2_table_id
u32 l2_table_id
Definition: classify.api:238
vl_api_classify_add_del_session_t::match_len
u32 match_len
Definition: classify.api:130
vl_api_flow_classify_dump_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:351
vl_api_output_acl_set_interface_t::ip4_table_index
u32 ip4_table_index
Definition: classify.api:439
vl_api_classify_session_details_t::table_id
u32 table_id
Definition: classify.api:307
vl_api_classify_trace_set_table_t::context
u32 context
Definition: classify.api:573
vl_api_classify_set_interface_ip_table_t
Set/unset the classification table for an interface request.
Definition: classify.api:372
vl_api_classify_pcap_set_table_reply_t::table_index
u32 table_index
Definition: classify.api:504
vl_api_classify_session_details_t
Reply for classify table session dump request.
Definition: classify.api:303
vl_api_classify_pcap_get_tables_reply_t
Classify get a PCAP tables response.
Definition: classify.api:524
vl_api_classify_trace_lookup_table_t::mask
u8 mask[mask_len]
Definition: classify.api:549
vl_api_classify_trace_lookup_table_t::mask_len
u32 mask_len
Definition: classify.api:548
vl_api_classify_trace_set_table_reply_t
Classify Trace table lookup response.
Definition: classify.api:583
vl_api_flow_classify_dump_t::type
vl_api_flow_classify_table_t type
Definition: classify.api:350
vl_api_classify_add_del_session_t::is_add
bool is_add
Definition: classify.api:123
vl_api_output_acl_set_interface_t::client_index
u32 client_index
Definition: classify.api:436
action
vl_api_mac_event_action_t action
Definition: l2.api:211
sw_if_index
vl_api_interface_index_t sw_if_index
Definition: wireguard.api:34
vl_api_classify_trace_set_table_reply_t::context
u32 context
Definition: classify.api:585
vl_api_flow_classify_details_t::table_index
u32 table_index
Definition: classify.api:362
vl_api_classify_table_info_t::context
u32 context
Definition: classify.api:251
vl_api_classify_pcap_set_table_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:490
vl_api_classify_pcap_set_table_t::table_index
u32 table_index[default=0xffffffff]
Definition: classify.api:491
vl_api_classify_trace_lookup_table_reply_t
Classify trace table lookup response.
Definition: classify.api:557
vl_api_classify_trace_get_tables_t::context
u32 context
Definition: classify.api:597
vl_api_classify_add_del_table_t::miss_next_index
u32 miss_next_index[default=0xffffffff]
Definition: classify.api:57
vl_api_classify_trace_set_table_t::client_index
u32 client_index
Definition: classify.api:572
vl_api_output_acl_set_interface_t
Set/unset output ACL interface.
Definition: classify.api:434
vl_api_classify_trace_set_table_t
Add a Classify table into the Trace chain.
Definition: classify.api:570
vl_api_classify_table_info_reply_t::next_table_index
u32 next_table_index
Definition: classify.api:276
vl_api_classify_add_del_table_t::del_chain
bool del_chain
Definition: classify.api:50
vl_api_classify_set_interface_ip_table_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:377
vl_api_flow_classify_dump_t::client_index
u32 client_index
Definition: classify.api:348
vl_api_flow_classify_details_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: classify.api:361