FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
l2tp.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 = "2.0.0";
17 
18 import "vnet/interface_types.api";
19 import "vnet/ethernet/ethernet_types.api";
20 import "vnet/ip/ip_types.api";
21 
22 /** \brief l2tpv3 tunnel interface create request
23  @param client_index - opaque cookie to identify the sender
24  @param context - sender context, to match reply w/ request
25  @param client_address - remote client tunnel ip address
26  @param client_address - local tunnel ip address
27  @param is_ipv6 - ipv6 if non-zero, else ipv4
28  @param local_session_id - local tunnel session id
29  @param remote_session_id - remote tunnel session id
30  @param local_cookie - local tunnel cookie
31  @param l2_sublayer_present - l2 sublayer is present in packets if non-zero
32  @param encap_vrf_id - fib identifier used for outgoing encapsulated packets
33 */
34 define l2tpv3_create_tunnel
35 {
38  vl_api_address_t client_address;
39  vl_api_address_t our_address;
46 };
47 
48 /** \brief l2tpv3 tunnel interface create response
49  @param context - sender context, to match reply w/ request
50  @param retval - return code for the request
51  @param sw_if_index - index of the new tunnel interface
52 */
53 define l2tpv3_create_tunnel_reply
54 {
57  vl_api_interface_index_t sw_if_index;
58 };
59 
60 autoreply define l2tpv3_set_tunnel_cookies
61 {
64  vl_api_interface_index_t sw_if_index;
67 };
68 
69 define sw_if_l2tpv3_tunnel_details
70 {
72  vl_api_interface_index_t sw_if_index;
73  string interface_name[64];
74  vl_api_address_t client_address;
75  vl_api_address_t our_address;
78  u64 local_cookie[2];
81 };
82 
83 define sw_if_l2tpv3_tunnel_dump
84 {
87 };
88 
90 {
94  vl_api_interface_index_t sw_if_index;
95 };
96 
98 {
102 };
103 
104 autoreply define l2tpv3_set_lookup_key
105 {
108  vl_api_l2t_lookup_key_t key;
109 };
110 
111 /*
112  * Local Variables:
113  * eval: (c-set-style "gnu")
114  * End:
115  */
vl_api_l2tpv3_create_tunnel_t::l2_sublayer_present
bool l2_sublayer_present
Definition: l2tp.api:44
L2T_LOOKUP_KEY_API_DST_ADDR
@ L2T_LOOKUP_KEY_API_DST_ADDR
Definition: l2tp.api:100
vl_api_sw_if_l2tpv3_tunnel_details_t::local_cookie
u64 local_cookie[2]
Definition: l2tp.api:78
vl_api_sw_if_l2tpv3_tunnel_details_t::client_address
vl_api_address_t client_address
Definition: l2tp.api:74
vl_api_l2tpv3_create_tunnel_t::local_session_id
u32 local_session_id
Definition: l2tp.api:40
vl_api_sw_if_l2tpv3_tunnel_details_t::remote_cookie
u64 remote_cookie
Definition: l2tp.api:79
vl_api_sw_if_l2tpv3_tunnel_details_t::remote_session_id
u32 remote_session_id
Definition: l2tp.api:77
vl_api_l2tpv3_set_lookup_key_t::client_index
u32 client_index
Definition: l2tp.api:106
vl_api_l2tpv3_create_tunnel_t::client_address
vl_api_address_t client_address
Definition: l2tp.api:38
vl_api_l2tpv3_set_lookup_key_t
Definition: l2tp.api:104
vl_api_l2tpv3_set_tunnel_cookies_t::context
u32 context
Definition: l2tp.api:63
vl_api_sw_if_l2tpv3_tunnel_details_t::interface_name
string interface_name[64]
Definition: l2tp.api:73
vl_api_sw_if_l2tpv3_tunnel_details_t::our_address
vl_api_address_t our_address
Definition: l2tp.api:75
vl_api_l2tpv3_create_tunnel_reply_t::retval
i32 retval
Definition: l2tp.api:56
vl_api_l2tpv3_set_lookup_key_t::context
u32 context
Definition: l2tp.api:107
i32
signed int i32
Definition: types.h:77
vl_api_l2tpv3_create_tunnel_t::our_address
vl_api_address_t our_address
Definition: l2tp.api:39
L2T_LOOKUP_KEY_API_SESSION_ID
@ L2T_LOOKUP_KEY_API_SESSION_ID
Definition: l2tp.api:101
vl_api_sw_if_l2tpv3_tunnel_dump_t::context
u32 context
Definition: l2tp.api:86
vl_api_l2tpv3_interface_enable_disable_t::context
u32 context
Definition: l2tp.api:92
vl_api_sw_if_l2tpv3_tunnel_details_t::l2_sublayer_present
bool l2_sublayer_present
Definition: l2tp.api:80
vl_api_sw_if_l2tpv3_tunnel_details_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: l2tp.api:72
vl_api_l2tpv3_interface_enable_disable_t::client_index
u32 client_index
Definition: l2tp.api:91
vl_api_sw_if_l2tpv3_tunnel_details_t::context
u32 context
Definition: l2tp.api:71
vl_api_l2tpv3_create_tunnel_t::encap_vrf_id
u32 encap_vrf_id
Definition: l2tp.api:45
l2tpv3_interface_enable_disable
int l2tpv3_interface_enable_disable(vnet_main_t *vnm, u32 sw_if_index, int enable_disable)
Definition: l2tp.c:614
vl_api_l2tpv3_create_tunnel_reply_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: l2tp.api:57
vl_api_l2tpv3_create_tunnel_t::remote_cookie
u64 remote_cookie
Definition: l2tp.api:43
vl_api_l2tpv3_create_tunnel_t
l2tpv3 tunnel interface create request
Definition: l2tp.api:34
vl_api_l2tpv3_set_tunnel_cookies_t
Definition: l2tp.api:60
vl_api_l2tpv3_create_tunnel_t::local_cookie
u64 local_cookie
Definition: l2tp.api:42
version
option version
Definition: l2tp.api:16
vl_api_sw_if_l2tpv3_tunnel_details_t
Definition: l2tp.api:69
u64
unsigned long u64
Definition: types.h:89
vl_api_l2tpv3_set_tunnel_cookies_t::new_remote_cookie
u64 new_remote_cookie
Definition: l2tp.api:66
u32
unsigned int u32
Definition: types.h:88
vl_api_l2tpv3_create_tunnel_t::client_index
u32 client_index
Definition: l2tp.api:36
l2t_lookup_key
l2t_lookup_key
Definition: l2tp.api:97
vl_api_l2tpv3_interface_enable_disable_t::enable_disable
bool enable_disable
Definition: l2tp.api:93
vl_api_sw_if_l2tpv3_tunnel_dump_t::client_index
u32 client_index
Definition: l2tp.api:85
vl_api_l2tpv3_interface_enable_disable_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: l2tp.api:94
u8
unsigned char u8
Definition: types.h:56
vl_api_l2tpv3_create_tunnel_reply_t
l2tpv3 tunnel interface create response
Definition: l2tp.api:53
vl_api_sw_if_l2tpv3_tunnel_dump_t
Definition: l2tp.api:83
vl_api_sw_if_l2tpv3_tunnel_details_t::local_session_id
u32 local_session_id
Definition: l2tp.api:76
vl_api_l2tpv3_set_tunnel_cookies_t::new_local_cookie
u64 new_local_cookie
Definition: l2tp.api:65
vl_api_l2tpv3_create_tunnel_t::context
u32 context
Definition: l2tp.api:37
l2tpv3_set_tunnel_cookies
int l2tpv3_set_tunnel_cookies(l2t_main_t *lm, u32 sw_if_index, u64 new_local_cookie, u64 new_remote_cookie)
Definition: l2tp.c:531
vl_api_l2tpv3_set_tunnel_cookies_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: l2tp.api:64
vl_api_l2tpv3_set_tunnel_cookies_t::client_index
u32 client_index
Definition: l2tp.api:62
vl_api_l2tpv3_create_tunnel_reply_t::context
u32 context
Definition: l2tp.api:55
vl_api_l2tpv3_create_tunnel_t::remote_session_id
u32 remote_session_id
Definition: l2tp.api:41
L2T_LOOKUP_KEY_API_SRC_ADDR
@ L2T_LOOKUP_KEY_API_SRC_ADDR
Definition: l2tp.api:99
vl_api_l2tpv3_set_lookup_key_t::key
vl_api_l2t_lookup_key_t key
Definition: l2tp.api:108
vl_api_l2tpv3_interface_enable_disable_t
Definition: l2tp.api:89