FD.io VPP
v18.07.1-19-g511ce25
Vector Packet Processing
Main Page
Related Pages
Modules
Namespaces
Data Structures
Source
Files
Symbols
tap.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
/** \file
17
18
This file defines vpe control-plane API messages for
19
the Linux kernel TAP device driver
20
*/
21
22
option
version
=
"1.0.0"
;
23
24
/** \brief Initialize a new tap interface with the given paramters
25
@param client_index - opaque cookie to identify the sender
26
@param context - sender context, to match reply w/ request
27
@param use_random_mac - let the system generate a unique mac address
28
@param tap_name - name to associate with the new interface
29
@param mac_address - mac addr to assign to the interface if use_radom not set
30
*/
31
define tap_connect
32
{
33
u32
client_index
;
34
u32
context
;
35
u8
use_random_mac
;
36
u8
tap_name[64];
37
u8
mac_address[6];
38
u8
renumber
;
39
u32
custom_dev_instance
;
40
u8
ip4_address_set
;
41
u8
ip4_address
[4];
42
u8
ip4_mask_width
;
43
u8
ip6_address_set
;
44
u8
ip6_address
[16];
45
u8
ip6_mask_width
;
46
u8
tag[64];
47
};
48
49
/** \brief Reply for tap connect request
50
@param context - returned sender context, to match reply w/ request
51
@param retval - return code
52
@param sw_if_index - software index allocated for the new tap interface
53
*/
54
define tap_connect_reply
55
{
56
u32
context
;
57
i32
retval
;
58
u32
sw_if_index
;
59
};
60
61
/** \brief Modify a tap interface with the given paramters
62
@param client_index - opaque cookie to identify the sender
63
@param context - sender context, to match reply w/ request
64
@param sw_if_index - interface index of existing tap interface
65
@param use_random_mac - let the system generate a unique mac address
66
@param tap_name - name to associate with the new interface
67
@param mac_address - mac addr to assign to the interface if use_radom not set
68
*/
69
define tap_modify
70
{
71
u32
client_index
;
72
u32
context
;
73
u32
sw_if_index
;
74
u8
use_random_mac
;
75
u8
tap_name[64];
76
u8
mac_address[6];
77
u8
renumber
;
78
u32
custom_dev_instance
;
79
};
80
81
/** \brief Reply for tap modify request
82
@param context - returned sender context, to match reply w/ request
83
@param retval - return code
84
@param sw_if_index - software index if the modified tap interface
85
*/
86
define tap_modify_reply
87
{
88
u32
context
;
89
i32
retval
;
90
u32
sw_if_index
;
91
};
92
93
/** \brief Delete tap interface
94
@param client_index - opaque cookie to identify the sender
95
@param context - sender context, to match reply w/ request
96
@param sw_if_index - interface index of existing tap interface
97
*/
98
autoreply define tap_delete
99
{
100
u32
client_index
;
101
u32
context
;
102
u32
sw_if_index
;
103
};
104
105
/** \brief Dump tap interfaces request */
106
define sw_interface_tap_dump
107
{
108
u32
client_index
;
109
u32
context
;
110
};
111
112
/** \brief Reply for tap dump request
113
@param sw_if_index - software index of tap interface
114
@param dev_name - Linux tap device name
115
*/
116
define sw_interface_tap_details
117
{
118
u32
context
;
119
u32
sw_if_index
;
120
u8
dev_name[64];
121
};
vl_api_tap_connect_reply_t::sw_if_index
u32 sw_if_index
Definition:
tap.api:58
vl_api_tap_connect_t::use_random_mac
u8 use_random_mac
Definition:
tap.api:35
vl_api_tap_delete_t::context
u32 context
Definition:
tap.api:101
vl_api_tap_modify_t::sw_if_index
u32 sw_if_index
Definition:
tap.api:73
vl_api_tap_delete_t::client_index
u32 client_index
Definition:
tap.api:100
vl_api_tap_connect_t::context
u32 context
Definition:
tap.api:34
vl_api_tap_connect_t::ip6_address_set
u8 ip6_address_set
Definition:
tap.api:43
u8
unsigned char u8
Definition:
types.h:56
vl_api_tap_modify_t::custom_dev_instance
u32 custom_dev_instance
Definition:
tap.api:78
vl_api_tap_modify_reply_t::context
u32 context
Definition:
tap.api:88
vl_api_tap_connect_reply_t::context
u32 context
Definition:
tap.api:56
version
option version
Definition:
tap.api:22
u32
unsigned int u32
Definition:
types.h:88
vl_api_tap_modify_t::context
u32 context
Definition:
tap.api:72
vl_api_tap_connect_reply_t::retval
i32 retval
Definition:
tap.api:57
vl_api_tap_connect_t::ip4_address_set
u8 ip4_address_set
Definition:
tap.api:40
ip6_address
typedef ip6_address
Definition:
ip_types.api:21
vl_api_sw_interface_tap_dump_t::context
u32 context
Definition:
tap.api:109
vl_api_tap_connect_t::ip4_mask_width
u8 ip4_mask_width
Definition:
tap.api:42
vl_api_sw_interface_tap_details_t::sw_if_index
u32 sw_if_index
Definition:
tap.api:119
vl_api_tap_modify_t::renumber
u8 renumber
Definition:
tap.api:77
vl_api_sw_interface_tap_dump_t::client_index
u32 client_index
Definition:
tap.api:108
vl_api_sw_interface_tap_details_t::context
u32 context
Definition:
tap.api:118
vl_api_tap_modify_reply_t::retval
i32 retval
Definition:
tap.api:89
i32
signed int i32
Definition:
types.h:81
vl_api_tap_connect_t::renumber
u8 renumber
Definition:
tap.api:38
vl_api_tap_modify_t::client_index
u32 client_index
Definition:
tap.api:71
vl_api_tap_connect_t::client_index
u32 client_index
Definition:
tap.api:33
vl_api_tap_modify_t::use_random_mac
u8 use_random_mac
Definition:
tap.api:74
vl_api_tap_modify_reply_t::sw_if_index
u32 sw_if_index
Definition:
tap.api:90
vl_api_tap_connect_t::custom_dev_instance
u32 custom_dev_instance
Definition:
tap.api:39
ip4_address
typedef ip4_address
Definition:
ip_types.api:17
vl_api_tap_delete_t::sw_if_index
u32 sw_if_index
Definition:
tap.api:102
vl_api_tap_connect_t::ip6_mask_width
u8 ip6_mask_width
Definition:
tap.api:45
src
vnet
unix
tap.api
Generated on Fri May 24 2019 10:26:52 for FD.io VPP by
1.8.11