diff options
author | John Lo <loj@cisco.com> | 2016-08-27 01:11:57 -0400 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2016-08-31 21:05:06 +0000 |
commit | 1edfba9a6394128ee5fad2b413e9e0a05972ef48 (patch) | |
tree | e1fbed7fe39b487bba72ead48020b3f25d1cbef6 /vnet/vnet/ip/ip6.h | |
parent | 7214cf11e9b9edbc015994cb7f9f5828e02d3791 (diff) |
VPP-358: Add IPv6 ND Event Notification and Termination
Add IPv6 equivalent of IPv4 ARP event notification which covers address
resolution for L3 and MAC/IP binding in L2 BD and ARP termination in BD.
For IPv6, ICMP6 neighbor solicitation and advertisement packets are
utilized instead of ARP request and response packets for IPv4.
Change-Id: I0088fa173e4480de297c8053ea2fcd0821322815
Signed-off-by: John Lo <loj@cisco.com>
Diffstat (limited to 'vnet/vnet/ip/ip6.h')
-rw-r--r-- | vnet/vnet/ip/ip6.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/vnet/vnet/ip/ip6.h b/vnet/vnet/ip/ip6.h index b43e2dac791..f5f3de84676 100644 --- a/vnet/vnet/ip/ip6.h +++ b/vnet/vnet/ip/ip6.h @@ -41,6 +41,8 @@ #define included_ip_ip6_h #include <vlib/mc.h> +#include <vlib/buffer.h> +#include <vnet/ethernet/packet.h> #include <vnet/ip/ip6_packet.h> #include <vnet/ip/ip6_hop_by_hop_packet.h> #include <vnet/ip/lookup.h> @@ -533,6 +535,24 @@ void vnet_register_ip6_neighbor_resolution_event(vnet_main_t * vnm, uword type_opaque, uword data); +int vnet_add_del_ip6_nd_change_event (vnet_main_t * vnm, + void * data_callback, + u32 pid, + void * address_arg, + uword node_index, + uword type_opaque, + uword data, + int is_add); + +int vnet_ip6_nd_term (vlib_main_t * vm, + vlib_node_runtime_t * node, + vlib_buffer_t * p0, + ethernet_header_t * eth, + ip6_header_t * ip, + u32 sw_if_index, + u16 bd_index, + u8 shg); + int vnet_set_ip6_classify_intfc (vlib_main_t * vm, u32 sw_if_index, u32 table_index); extern vlib_node_registration_t ip6_lookup_node; |