Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Initial GENEVE TUNNEL implementation and tests.
[vpp.git]
/
src
/
vnet
/
dhcp
/
dhcp6_proxy_node.c
diff --git
a/src/vnet/dhcp/dhcp6_proxy_node.c
b/src/vnet/dhcp/dhcp6_proxy_node.c
index
de73154
..
ce7a8fc
100644
(file)
--- a/
src/vnet/dhcp/dhcp6_proxy_node.c
+++ b/
src/vnet/dhcp/dhcp6_proxy_node.c
@@
-19,9
+19,9
@@
#include <vnet/pg/pg.h>
#include <vnet/dhcp/dhcp_proxy.h>
#include <vnet/dhcp/dhcp6_packet.h>
#include <vnet/pg/pg.h>
#include <vnet/dhcp/dhcp_proxy.h>
#include <vnet/dhcp/dhcp6_packet.h>
-#include <vnet/fib/ip6_fib.h>
#include <vnet/mfib/mfib_table.h>
#include <vnet/mfib/ip6_mfib.h>
#include <vnet/mfib/mfib_table.h>
#include <vnet/mfib/ip6_mfib.h>
+#include <vnet/fib/fib.h>
static char * dhcpv6_proxy_error_strings[] = {
#define dhcpv6_proxy_error(n,s) s,
static char * dhcpv6_proxy_error_strings[] = {
#define dhcpv6_proxy_error(n,s) s,
@@
-306,7
+306,7
@@
dhcpv6_proxy_to_server_input (vlib_main_t * vm,
copy_ip6_address(&r1->link_addr, ia0);
link_address_set:
copy_ip6_address(&r1->link_addr, ia0);
link_address_set:
- fl = vlib_buffer_get_free_list (vm,
b0->free_list_index
);
+ fl = vlib_buffer_get_free_list (vm,
vlib_buffer_get_free_list_index (b0)
);
if ((b0->current_length+sizeof(*id1)+sizeof(*vss1)+sizeof(*cmac))
> fl->n_data_bytes)
if ((b0->current_length+sizeof(*id1)+sizeof(*vss1)+sizeof(*cmac))
> fl->n_data_bytes)
@@
-841,7
+841,8
@@
dhcp6_proxy_set_server (ip46_address_t *addr,
return VNET_API_ERROR_INVALID_SRC_ADDRESS;
rx_fib_index = mfib_table_find_or_create_and_lock(FIB_PROTOCOL_IP6,
return VNET_API_ERROR_INVALID_SRC_ADDRESS;
rx_fib_index = mfib_table_find_or_create_and_lock(FIB_PROTOCOL_IP6,
- rx_table_id);
+ rx_table_id,
+ MFIB_SOURCE_DHCP);
if (is_del)
{
if (is_del)
{
@@
-851,13
+852,13
@@
dhcp6_proxy_set_server (ip46_address_t *addr,
mfib_table_entry_delete(rx_fib_index,
&all_dhcp_servers,
MFIB_SOURCE_DHCP);
mfib_table_entry_delete(rx_fib_index,
&all_dhcp_servers,
MFIB_SOURCE_DHCP);
- mfib_table_unlock(rx_fib_index, FIB_PROTOCOL_IP6);
+ mfib_table_unlock(rx_fib_index, FIB_PROTOCOL_IP6
, MFIB_SOURCE_DHCP
);
}
}
else
{
const fib_route_path_t path_for_us = {
}
}
else
{
const fib_route_path_t path_for_us = {
- .frp_proto =
FIB_PROTOCOL
_IP6,
+ .frp_proto =
DPO_PROTO
_IP6,
.frp_addr = zero_addr,
.frp_sw_if_index = 0xffffffff,
.frp_fib_index = ~0,
.frp_addr = zero_addr,
.frp_sw_if_index = 0xffffffff,
.frp_fib_index = ~0,
@@
-885,11
+886,11
@@
dhcp6_proxy_set_server (ip46_address_t *addr,
MFIB_SOURCE_DHCP,
MFIB_RPF_ID_NONE,
MFIB_ENTRY_FLAG_ACCEPT_ALL_ITF);
MFIB_SOURCE_DHCP,
MFIB_RPF_ID_NONE,
MFIB_ENTRY_FLAG_ACCEPT_ALL_ITF);
- mfib_table_lock(rx_fib_index, FIB_PROTOCOL_IP6);
+ mfib_table_lock(rx_fib_index, FIB_PROTOCOL_IP6
, MFIB_SOURCE_DHCP
);
}
}
}
}
- mfib_table_unlock(rx_fib_index, FIB_PROTOCOL_IP6);
+ mfib_table_unlock(rx_fib_index, FIB_PROTOCOL_IP6
, MFIB_SOURCE_DHCP
);
return (rc);
}
return (rc);
}
@@
-966,7
+967,7
@@
static u8 *
format_dhcp6_proxy_server (u8 * s, va_list * args)
{
dhcp_proxy_t * proxy = va_arg (*args, dhcp_proxy_t *);
format_dhcp6_proxy_server (u8 * s, va_list * args)
{
dhcp_proxy_t * proxy = va_arg (*args, dhcp_proxy_t *);
-
ip6_fib
_t *server_fib;
+
fib_table
_t *server_fib;
dhcp_server_t *server;
ip6_mfib_t *rx_fib;
dhcp_server_t *server;
ip6_mfib_t *rx_fib;
@@
-985,9
+986,10
@@
format_dhcp6_proxy_server (u8 * s, va_list * args)
vec_foreach(server, proxy->dhcp_servers)
{
vec_foreach(server, proxy->dhcp_servers)
{
- server_fib = ip6_fib_get(server->server_fib_index);
+ server_fib = fib_table_get(server->server_fib_index,
+ FIB_PROTOCOL_IP6);
s = format (s, "%u,%U ",
s = format (s, "%u,%U ",
- server_fib->table_id,
+ server_fib->
ft_
table_id,
format_ip46_address, &server->dhcp_server, IP46_TYPE_ANY);
}
format_ip46_address, &server->dhcp_server, IP46_TYPE_ANY);
}