FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
pppoe.api
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017 Intel 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 import "vnet/interface_types.api";
18 import "vnet/ethernet/ethernet_types.api";
19 import "vnet/ip/ip_types.api";
20 
21 /** \brief Set or delete an PPPOE session
22  @param client_index - opaque cookie to identify the sender
23  @param context - sender context, to match reply w/ request
24  @param is_add - add address if non-zero, else delete
25  @param session_id - PPPoE session ID
26  @param client_ip - PPPOE session's client address.
27  @param decap_vrf_id - the vrf index for pppoe decaped packet
28  @param client_mac - the client ethernet address
29 */
30 define pppoe_add_del_session
31 {
34  bool is_add;
36  vl_api_address_t client_ip;
38  vl_api_mac_address_t client_mac;
39  option vat_help = "client-addr <client-addr> session-id <nn> [encap-if-index <nn>] [decap-next [ip4|ip6|node <name>]] local-mac <local-mac> client-mac <client-mac> [del]";
40 };
41 
42 /** \brief reply for set or delete an PPPOE session
43  @param context - sender context, to match reply w/ request
44  @param retval - return code
45  @param sw_if_index - software index of the interface
46 */
47 define pppoe_add_del_session_reply
48 {
51  vl_api_interface_index_t sw_if_index;
52 };
53 
54 /** \brief Dump PPPOE session
55  @param client_index - opaque cookie to identify the sender
56  @param context - sender context, to match reply w/ request
57  @param sw_if_index - software index of the interface
58 */
59 define pppoe_session_dump
60 {
63  vl_api_interface_index_t sw_if_index;
64  option vat_help = "[<intfc> | sw_if_index <nn>]";
65 };
66 
67 /** \brief dump details of an PPPOE session
68  @param context - sender context, to match reply w/ request
69  @param sw_if_index - software index of the interface
70  @param session_id - PPPoE session ID
71  @param client_ip - PPPOE session's client address.
72  @param encap_if_index - the index of tx interface for pppoe encaped packet
73  @param decap_vrf_id - the vrf index for pppoe decaped packet
74  @param local_mac - the local ethernet address
75  @param client_mac - the client ethernet address
76 */
77 define pppoe_session_details
78 {
80  vl_api_interface_index_t sw_if_index;
82  vl_api_address_t client_ip;
83  vl_api_interface_index_t encap_if_index;
85  vl_api_mac_address_t local_mac;
86  vl_api_mac_address_t client_mac;
87 };
88 
89 /** \brief Create PPPOE control plane interface
90  @param client_index - opaque cookie to identify the sender
91  @param context - sender context, to match reply w/ request
92  @param sw_if_index - software index of the interface
93  @param is_add - to create or to delete
94 */
96 {
99  vl_api_interface_index_t sw_if_index;
101  option vat_help = "[ sw_if_index <intfc> is_add <bool> ]";
102 };
103 
104 /** \brief reply for create PPPOE control plane interface
105  @param retval - return code
106 */
107 define pppoe_add_del_cp_reply
108 {
111 };
112 
113 /*
114  * Local Variables:
115  * eval: (c-set-style "gnu")
116  * End:
117  */
vl_api_pppoe_add_del_cp_reply_t
reply for create PPPOE control plane interface
Definition: pppoe.api:107
vl_api_pppoe_add_del_cp_t::context
u32 context
Definition: pppoe.api:98
vl_api_pppoe_add_del_cp_reply_t::context
u32 context
Definition: pppoe.api:109
vl_api_pppoe_add_del_session_t::is_add
bool is_add
Definition: pppoe.api:34
vl_api_pppoe_session_dump_t::client_index
u32 client_index
Definition: pppoe.api:61
version
option version
Definition: pppoe.api:16
vl_api_pppoe_add_del_cp_t
Create PPPOE control plane interface.
Definition: pppoe.api:95
u16
unsigned short u16
Definition: types.h:57
vl_api_pppoe_session_dump_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: pppoe.api:63
vl_api_pppoe_add_del_cp_t::client_index
u32 client_index
Definition: pppoe.api:97
vl_api_pppoe_add_del_session_reply_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: pppoe.api:51
vl_api_pppoe_session_dump_t
Dump PPPOE session.
Definition: pppoe.api:59
vl_api_pppoe_session_dump_t::vat_help
option vat_help
Definition: pppoe.api:64
i32
signed int i32
Definition: types.h:77
vl_api_pppoe_session_details_t::context
u32 context
Definition: pppoe.api:79
vl_api_pppoe_add_del_cp_t::vat_help
option vat_help
Definition: pppoe.api:101
vl_api_pppoe_add_del_session_t::client_index
u32 client_index
Definition: pppoe.api:32
vl_api_pppoe_add_del_session_t::client_mac
vl_api_mac_address_t client_mac
Definition: pppoe.api:38
vl_api_pppoe_add_del_cp_t::is_add
u8 is_add
Definition: pppoe.api:100
vl_api_pppoe_session_details_t::encap_if_index
vl_api_interface_index_t encap_if_index
Definition: pppoe.api:83
vl_api_pppoe_add_del_cp_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: pppoe.api:99
vl_api_pppoe_session_details_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: pppoe.api:80
vl_api_pppoe_session_details_t::local_mac
vl_api_mac_address_t local_mac
Definition: pppoe.api:85
vl_api_pppoe_add_del_session_t::vat_help
option vat_help
Definition: pppoe.api:39
vl_api_pppoe_add_del_session_t::context
u32 context
Definition: pppoe.api:33
vl_api_pppoe_session_details_t::client_mac
vl_api_mac_address_t client_mac
Definition: pppoe.api:86
vl_api_pppoe_add_del_session_t::session_id
u16 session_id
Definition: pppoe.api:35
vl_api_pppoe_add_del_session_t
Set or delete an PPPOE session.
Definition: pppoe.api:30
u32
unsigned int u32
Definition: types.h:88
vl_api_pppoe_session_details_t
dump details of an PPPOE session
Definition: pppoe.api:77
vl_api_pppoe_session_details_t::session_id
u16 session_id
Definition: pppoe.api:81
vl_api_pppoe_add_del_session_reply_t::retval
i32 retval
Definition: pppoe.api:50
vl_api_pppoe_session_details_t::client_ip
vl_api_address_t client_ip
Definition: pppoe.api:82
u8
unsigned char u8
Definition: types.h:56
vl_api_pppoe_add_del_session_t::decap_vrf_id
u32 decap_vrf_id
Definition: pppoe.api:37
vl_api_pppoe_add_del_session_reply_t
reply for set or delete an PPPOE session
Definition: pppoe.api:47
vl_api_pppoe_add_del_cp_reply_t::retval
i32 retval
Definition: pppoe.api:110
vl_api_pppoe_add_del_session_reply_t::context
u32 context
Definition: pppoe.api:49
vl_api_pppoe_session_details_t::decap_vrf_id
u32 decap_vrf_id
Definition: pppoe.api:84
pppoe_add_del_cp
int pppoe_add_del_cp(u32 cp_if_index, u8 is_add)
Definition: pppoe_cp.c:21
vl_api_pppoe_session_dump_t::context
u32 context
Definition: pppoe.api:62
vl_api_pppoe_add_del_session_t::client_ip
vl_api_address_t client_ip
Definition: pppoe.api:36