blob: 90812438105ebb0cf6a62bf0d6c3c6e9ebf6398a [file] [log] [blame]
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +01001/* 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
Ole Troan9d420872017-10-12 13:06:35 +020017option version = "1.0.0";
Dave Barach0d056e52017-09-28 15:11:16 -040018
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +010019 /** \brief Enable/Disable span to mirror traffic from one interface to another
20 @param client_index - opaque cookie to identify the sender
21 @param context - sender context which was passed in the request
Paul Vinciguerrabdc0e6b2018-09-22 05:32:50 -070022 @param sw_if_index_from - interface to be mirrored
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +010023 @param sw_if_index_to - interface where the traffic is mirrored
24 @param state - 0 = disabled, 1 = rx enabled, 2 = tx enabled, 3 tx & rx enabled
Eyal Bari5b311202017-07-31 13:12:30 +030025 @param is_l2 - 0 = mirror at hw device level, 1 = mirror at L2
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +010026*/
Dave Barach11b8dbf2017-04-24 10:46:54 -040027autoreply define sw_interface_span_enable_disable {
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +010028 u32 client_index;
29 u32 context;
30 u32 sw_if_index_from;
31 u32 sw_if_index_to;
32 u8 state;
Eyal Bari001fd402017-07-16 09:34:53 +030033 u8 is_l2;
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +010034};
35
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +010036/** \brief SPAN dump request
37 @param client_index - opaque cookie to identify the sender
38 @param context - sender context, to match reply w/ request
Eyal Bari5b311202017-07-31 13:12:30 +030039 @param is_l2 - 0 = hw device level, 1 = L2
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +010040*/
41define sw_interface_span_dump {
42 u32 client_index;
43 u32 context;
Eyal Bari5b311202017-07-31 13:12:30 +030044 u8 is_l2;
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +010045};
46
47/** \brief Reply to SPAN dump request
48 @param context - sender context which was passed in the request
Paul Vinciguerrabdc0e6b2018-09-22 05:32:50 -070049 @param sw_if_index_from - mirrored interface
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +010050 @param sw_if_index_to - interface where the traffic is mirrored
51 @param state - 0 = disabled, 1 = rx enabled, 2 = tx enabled, 3 tx & rx enabled
Jon Loeliger179ab362018-03-12 14:50:08 -050052 @param is_l2 - 0 = mirrored at hw device level, 1 = mirrored at l2
Pavel Kotucek3a2a1c42016-12-06 10:10:10 +010053*/
54define sw_interface_span_details {
55 u32 context;
56 u32 sw_if_index_from;
57 u32 sw_if_index_to;
58 u8 state;
Jon Loeliger179ab362018-03-12 14:50:08 -050059 u8 is_l2;
Ole Troan399ca1c2016-12-06 23:00:38 +010060};