FD.io VPP
v20.05-21-gb1500e9ff
Vector Packet Processing
l2_arp_term.h
Go to the documentation of this file.
1
/*
2
* l2/l2_arp_term.c: IP v4 ARP L2 BD termination
3
*
4
* Copyright (c) 2010 Cisco and/or its affiliates.
5
* Licensed under the Apache License, Version 2.0 (the "License");
6
* you may not use this file except in compliance with the License.
7
* You may obtain a copy of the License at:
8
*
9
* http://www.apache.org/licenses/LICENSE-2.0
10
*
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
16
*/
17
18
#include <
vnet/ip/ip46_address.h
>
19
#include <
vnet/ethernet/arp_packet.h
>
20
21
typedef
struct
l2_arp_term_publish_ctx_t_
22
{
23
u32
sw_if_index
;
24
ip46_type_t
type
;
25
ip46_address_t
ip
;
26
mac_address_t
mac
;
27
}
l2_arp_term_publish_event_t
;
28
29
enum
30
{
31
L2_ARP_TERM_EVENT_PUBLISH
,
32
};
33
34
typedef
struct
l2_arp_term_main_t_
35
{
36
bool
publish
;
37
38
l2_arp_term_publish_event_t
*
publish_events
;
39
40
}
l2_arp_term_main_t
;
41
42
extern
l2_arp_term_main_t
l2_arp_term_main
;
43
extern
vlib_node_registration_t
l2_arp_term_process_node
;
44
45
extern
void
l2_arp_term_set_publisher_node
(
bool
on);
46
47
48
/*
49
* fd.io coding-style-patch-verification: ON
50
*
51
* Local Variables:
52
* eval: (c-set-style "gnu")
53
* End:
54
*/
l2_arp_term_publish_ctx_t_::mac
mac_address_t mac
Definition:
l2_arp_term.h:26
l2_arp_term_publish_ctx_t_::type
ip46_type_t type
Definition:
l2_arp_term.h:24
l2_arp_term_main_t_::publish_events
l2_arp_term_publish_event_t * publish_events
Definition:
l2_arp_term.h:38
l2_arp_term_main_t
struct l2_arp_term_main_t_ l2_arp_term_main_t
L2_ARP_TERM_EVENT_PUBLISH
Definition:
l2_arp_term.h:31
ip46_address.h
l2_arp_term_main_t_::publish
bool publish
Definition:
l2_arp_term.h:36
u32
unsigned int u32
Definition:
types.h:88
l2_arp_term_main_t_
Definition:
l2_arp_term.h:34
arp_packet.h
l2_arp_term_set_publisher_node
void l2_arp_term_set_publisher_node(bool on)
Definition:
l2_arp_term.c:99
mac_address_t_
Definition:
mac_address.h:21
l2_arp_term_publish_ctx_t_
Definition:
l2_arp_term.h:21
l2_arp_term_publish_ctx_t_::sw_if_index
u32 sw_if_index
Definition:
l2_arp_term.h:23
vlib_node_registration_t
struct _vlib_node_registration vlib_node_registration_t
l2_arp_term_main
l2_arp_term_main_t l2_arp_term_main
Definition:
l2_arp_term.c:29
l2_arp_term_publish_event_t
struct l2_arp_term_publish_ctx_t_ l2_arp_term_publish_event_t
l2_arp_term_process_node
vlib_node_registration_t l2_arp_term_process_node
(constructor) VLIB_REGISTER_NODE (l2_arp_term_process_node)
Definition:
l2_api.c:1150
l2_arp_term_publish_ctx_t_::ip
ip46_address_t ip
Definition:
l2_arp_term.h:25
ip46_type_t
ip46_type_t
Definition:
ip46_address.h:22
src
vnet
l2
l2_arp_term.h
Generated on Wed Jul 15 2020 20:02:23 for FD.io VPP by
1.8.13