X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fipsec-gre%2Fnode.c;h=6a3aaa12e8cb142a535bb63e4a56f677aa489305;hb=e524d45eff40c773049e03ea5063216b469bbfcc;hp=217d323ad65cb2058b4b71b07cb5c7f82f93eceb;hpb=7eac916e1b00d6a3393a09925e1634d71bf30568;p=vpp.git diff --git a/src/vnet/ipsec-gre/node.c b/src/vnet/ipsec-gre/node.c index 217d323ad65..6a3aaa12e8c 100644 --- a/src/vnet/ipsec-gre/node.c +++ b/src/vnet/ipsec-gre/node.c @@ -43,7 +43,7 @@ typedef struct { ip4_address_t dst; } ipsec_gre_rx_trace_t; -u8 * format_ipsec_gre_rx_trace (u8 * s, va_list * args) +static u8 * format_ipsec_gre_rx_trace (u8 * s, va_list * args) { CLIB_UNUSED (vlib_main_t * vm) = va_arg (*args, vlib_main_t *); CLIB_UNUSED (vlib_node_t * node) = va_arg (*args, vlib_node_t *); @@ -83,8 +83,7 @@ u8 * format_ipsec_gre_rx_trace (u8 * s, va_list * args) * Next Index: * - Dispatches the packet to the l2-input node. */ -static uword -ipsec_gre_input (vlib_main_t * vm, +VLIB_NODE_FN (ipsec_gre_input_node) (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * from_frame) { @@ -161,25 +160,23 @@ ipsec_gre_input (vlib_main_t * vm, protocol0 = clib_net_to_host_u16 (h0->protocol); protocol1 = clib_net_to_host_u16 (h1->protocol); - if (PREDICT_TRUE(protocol0 == 0x0001)) + if (PREDICT_TRUE(protocol0 == GRE_PROTOCOL_teb)) { next0 = IPSEC_GRE_INPUT_NEXT_L2_INPUT; b0->error = node->errors[IPSEC_GRE_ERROR_NONE]; } else { - clib_warning("unknown GRE protocol: %d", protocol0); b0->error = node->errors[IPSEC_GRE_ERROR_UNKNOWN_PROTOCOL]; next0 = IPSEC_GRE_INPUT_NEXT_DROP; } - if (PREDICT_TRUE(protocol1 == 0x0001)) + if (PREDICT_TRUE(protocol1 == GRE_PROTOCOL_teb)) { next1 = IPSEC_GRE_INPUT_NEXT_L2_INPUT; b1->error = node->errors[IPSEC_GRE_ERROR_NONE]; } else { - clib_warning("unknown GRE protocol: %d", protocol1); b1->error = node->errors[IPSEC_GRE_ERROR_UNKNOWN_PROTOCOL]; next1 = IPSEC_GRE_INPUT_NEXT_DROP; } @@ -317,14 +314,13 @@ drop1: h0 = vlib_buffer_get_current (b0); protocol0 = clib_net_to_host_u16 (h0->protocol); - if (PREDICT_TRUE(protocol0 == 0x0001)) + if (PREDICT_TRUE(protocol0 == GRE_PROTOCOL_teb)) { next0 = IPSEC_GRE_INPUT_NEXT_L2_INPUT; b0->error = node->errors[IPSEC_GRE_ERROR_NONE]; } else { - clib_warning("unknown GRE protocol: %d", protocol0); b0->error = node->errors[IPSEC_GRE_ERROR_UNKNOWN_PROTOCOL]; next0 = IPSEC_GRE_INPUT_NEXT_DROP; } @@ -336,7 +332,7 @@ drop1: next0 = verr0 ? IPSEC_GRE_INPUT_NEXT_DROP : next0; /* For L2 payload set input sw_if_index to GRE tunnel for learning */ - if (PREDICT_FALSE(next0 == IPSEC_GRE_INPUT_NEXT_L2_INPUT)) + if (PREDICT_TRUE(next0 == IPSEC_GRE_INPUT_NEXT_L2_INPUT)) { u64 key = ((u64)(tun_dst0) << 32) | (u64)(tun_src0); @@ -398,7 +394,6 @@ static char * ipsec_gre_error_strings[] = { }; VLIB_REGISTER_NODE (ipsec_gre_input_node) = { - .function = ipsec_gre_input, .name = "ipsec-gre-input", /* Takes a vector of packets. */ .vector_size = sizeof (u32), @@ -416,8 +411,6 @@ VLIB_REGISTER_NODE (ipsec_gre_input_node) = { .format_trace = format_ipsec_gre_rx_trace, }; -VLIB_NODE_FUNCTION_MULTIARCH (ipsec_gre_input_node, ipsec_gre_input) - static clib_error_t * ipsec_gre_input_init (vlib_main_t * vm) { {