X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fdhcp%2Fdhcp6_proxy_node.c;h=a253fa1959f1b3bd0e8bc8493834e2b3c61e78e4;hb=097fa66b986f06281f603767d321ab13ab6c88c3;hp=34454d6bd56ab762f174364673c782741606901b;hpb=b7b929931a07fbb27b43d5cd105f366c3e29807e;p=vpp.git diff --git a/src/vnet/dhcp/dhcp6_proxy_node.c b/src/vnet/dhcp/dhcp6_proxy_node.c index 34454d6bd56..a253fa1959f 100644 --- a/src/vnet/dhcp/dhcp6_proxy_node.c +++ b/src/vnet/dhcp/dhcp6_proxy_node.c @@ -179,7 +179,6 @@ dhcpv6_proxy_to_server_input (vlib_main_t * vm, dhcpv6_client_mac_t *cmac; // client mac ethernet_header_t *e_h0; u8 client_src_mac[6]; - vlib_buffer_free_list_t *fl; dhcp_vss_t *vss; u8 is_solicit = 0; @@ -315,12 +314,9 @@ dhcpv6_proxy_to_server_input (vlib_main_t * vm, copy_ip6_address (&r1->link_addr, ia0); link_address_set: - 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) + sizeof (*cmac)) > vlib_buffer_get_default_data_size (vm)) { error0 = DHCPV6_PROXY_ERROR_PKT_TOO_BIG; next0 = DHCPV6_PROXY_TO_SERVER_INPUT_NEXT_DROP; @@ -440,6 +436,7 @@ dhcpv6_proxy_to_server_input (vlib_main_t * vm, u32 ci0; c0 = vlib_buffer_copy (vm, b0); + VLIB_BUFFER_TRACE_TRAJECTORY_INIT (c0); ci0 = vlib_get_buffer_index (vm, c0); server = &proxy->dhcp_servers[ii]; @@ -463,6 +460,7 @@ dhcpv6_proxy_to_server_input (vlib_main_t * vm, { dhcpv6_proxy_trace_t *tr; + vlib_buffer_copy_trace_flag (vm, b0, ci0); tr = vlib_add_trace (vm, node, c0, sizeof (*tr)); tr->which = 0; /* to server */ tr->error = error0; @@ -895,16 +893,16 @@ dhcp6_proxy_set_server (ip46_address_t * addr, .frp_addr = zero_addr, .frp_sw_if_index = 0xffffffff, .frp_fib_index = ~0, - .frp_weight = 0, + .frp_weight = 1, .frp_flags = FIB_ROUTE_PATH_LOCAL, + .frp_mitf_flags = MFIB_ITF_FLAG_FORWARD, }; if (dhcp_proxy_server_add (FIB_PROTOCOL_IP6, addr, src_addr, rx_fib_index, server_table_id)) { mfib_table_entry_path_update (rx_fib_index, &all_dhcp_servers, - MFIB_SOURCE_DHCP, - &path_for_us, MFIB_ITF_FLAG_FORWARD); + MFIB_SOURCE_DHCP, &path_for_us); /* * Each interface that is enabled in this table, needs to be added * as an accepting interface, but this is not easily doable in VPP.