FD.io VPP
v20.09-64-g4f7b92f0a
Vector Packet Processing
interface_types_api.h
Go to the documentation of this file.
1
/* Hey Emacs use -*- mode: C -*- */
2
/*
3
* Copyright (c) 2018 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
typedef
u32
interface_index
;
18
19
enum
if_status_flags
20
{
21
IF_STATUS_API_FLAG_ADMIN_UP
= 1,
22
IF_STATUS_API_FLAG_LINK_UP
= 2,
23
};
24
25
/* Per protocol MTU */
26
enum
mtu_proto
27
{
28
MTU_PROTO_API_L3
,
/* Default payload MTU (without L2 headers) */
29
MTU_PROTO_API_IP4
,
/* Per-protocol MTUs overriding default */
30
MTU_PROTO_API_IP6
,
31
MTU_PROTO_API_MPLS
,
32
MTU_PROTO_API_N
,
33
};
34
35
enum
link_duplex
36
{
37
LINK_DUPLEX_API_UNKNOWN
= 0,
38
LINK_DUPLEX_API_HALF
= 1,
39
LINK_DUPLEX_API_FULL
= 2,
40
};
41
42
enum
sub_if_flags
43
{
44
SUB_IF_API_FLAG_NO_TAGS
= 1,
45
SUB_IF_API_FLAG_ONE_TAG
= 2,
46
SUB_IF_API_FLAG_TWO_TAGS
= 4,
47
SUB_IF_API_FLAG_DOT1AD
= 8,
48
SUB_IF_API_FLAG_EXACT_MATCH
= 16,
49
SUB_IF_API_FLAG_DEFAULT
= 32,
50
SUB_IF_API_FLAG_OUTER_VLAN_ID_ANY
= 64,
51
SUB_IF_API_FLAG_INNER_VLAN_ID_ANY
= 128,
52
SUB_IF_API_FLAG_MASK_VNET
= 254,
/* use with vnet_sub_interface_t raw_flags */
53
SUB_IF_API_FLAG_DOT1AH
= 256,
54
};
55
56
enum
rx_mode
57
{
58
RX_MODE_API_UNKNOWN
= 0,
59
RX_MODE_API_POLLING
,
60
RX_MODE_API_INTERRUPT
,
61
RX_MODE_API_ADAPTIVE
,
62
RX_MODE_API_DEFAULT
,
63
};
64
65
enum
if_type
66
{
67
/* A hw interface. */
68
IF_API_TYPE_HARDWARE
,
69
70
/* A sub-interface. */
71
IF_API_TYPE_SUB
,
72
IF_API_TYPE_P2P
,
73
IF_API_TYPE_PIPE
,
74
};
75
76
enum
direction
:
u8
77
{
78
DIRECTION_RX
,
79
DIRECTION_TX
,
80
};
81
82
/*
83
* fd.io coding-style-patch-verification: ON
84
*
85
* Local Variables:
86
* eval: (c-set-style "gnu")
87
* End:
88
*/
SUB_IF_API_FLAG_NO_TAGS
Definition:
interface_types_api.h:44
SUB_IF_API_FLAG_INNER_VLAN_ID_ANY
Definition:
interface_types_api.h:51
interface_index
u32 interface_index
Definition:
interface_types_api.h:17
LINK_DUPLEX_API_HALF
Definition:
interface_types_api.h:38
SUB_IF_API_FLAG_MASK_VNET
Definition:
interface_types_api.h:52
RX_MODE_API_DEFAULT
Definition:
interface_types_api.h:62
RX_MODE_API_ADAPTIVE
Definition:
interface_types_api.h:61
SUB_IF_API_FLAG_OUTER_VLAN_ID_ANY
Definition:
interface_types_api.h:50
mtu_proto
mtu_proto
Definition:
interface_types.api:26
IF_API_TYPE_PIPE
Definition:
interface_types_api.h:73
IF_STATUS_API_FLAG_LINK_UP
Definition:
interface_types_api.h:22
MTU_PROTO_API_N
Definition:
interface_types_api.h:32
RX_MODE_API_INTERRUPT
Definition:
interface_types_api.h:60
SUB_IF_API_FLAG_ONE_TAG
Definition:
interface_types_api.h:45
IF_API_TYPE_SUB
Definition:
interface_types_api.h:71
u8
unsigned char u8
Definition:
types.h:56
MTU_PROTO_API_IP6
Definition:
interface_types_api.h:30
u32
unsigned int u32
Definition:
types.h:88
LINK_DUPLEX_API_FULL
Definition:
interface_types_api.h:39
rx_mode
rx_mode
Definition:
interface_types.api:55
MTU_PROTO_API_IP4
Definition:
interface_types_api.h:29
IF_API_TYPE_P2P
Definition:
interface_types_api.h:72
MTU_PROTO_API_MPLS
Definition:
interface_types_api.h:31
if_status_flags
if_status_flags
Definition:
interface_types.api:19
IF_API_TYPE_HARDWARE
Definition:
interface_types_api.h:68
direction
direction
Definition:
interface_types_api.h:76
SUB_IF_API_FLAG_DEFAULT
Definition:
interface_types_api.h:49
LINK_DUPLEX_API_UNKNOWN
Definition:
interface_types_api.h:37
if_type
if_type
Definition:
interface_types.api:64
SUB_IF_API_FLAG_EXACT_MATCH
Definition:
interface_types_api.h:48
RX_MODE_API_POLLING
Definition:
interface_types_api.h:59
DIRECTION_RX
Definition:
interface_types_api.h:78
sub_if_flags
sub_if_flags
Definition:
interface_types.api:41
DIRECTION_TX
Definition:
interface_types_api.h:79
SUB_IF_API_FLAG_TWO_TAGS
Definition:
interface_types_api.h:46
IF_STATUS_API_FLAG_ADMIN_UP
Definition:
interface_types_api.h:21
MTU_PROTO_API_L3
Definition:
interface_types_api.h:28
link_duplex
link_duplex
Definition:
interface_types.api:34
SUB_IF_API_FLAG_DOT1AH
Definition:
interface_types_api.h:53
RX_MODE_API_UNKNOWN
Definition:
interface_types_api.h:58
SUB_IF_API_FLAG_DOT1AD
Definition:
interface_types_api.h:47
src
vnet
interface_types_api.h
Generated on Thu Jun 3 2021 16:05:55 for FD.io VPP by
1.8.13