ipip: Tunnel flags controlling copying data to/from payload/encap
[vpp.git] / src / vnet / ipip / ipip_types.api
1 /* Hey Emacs use -*- mode: C -*- */
2 /*
3  * Copyright (c) 2019 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
17 /**
18  * Flags controlling tunnel behaviour
19  */
20 enum ipip_tunnel_flags : u8
21 {
22   IPIP_TUNNEL_API_FLAG_NONE = 0,
23   /** at encap, copy the DF bit of the payload into the tunnel header */
24   IPIP_TUNNEL_API_FLAG_ENCAP_COPY_DF = 0x1,
25   /** at encap, set the DF bit in the tunnel header */
26   IPIP_TUNNEL_API_FLAG_ENCAP_SET_DF = 0x2,
27   /** at encap, copy the DSCP bits of the payload into the tunnel header */
28   IPIP_TUNNEL_API_FLAG_ENCAP_COPY_DSCP = 0x4,
29   /** at encap, copy the ECN bit of the payload into the tunnel header */
30   IPIP_TUNNEL_API_FLAG_ENCAP_COPY_ECN = 0x8,
31   /** at decap, copy the ECN bit of the tunnel header into the payload */
32   IPIP_TUNNEL_API_FLAG_DECAP_COPY_ECN = 0x10,
33 };