ip: leverage existing vlib_buffer_advance 43/20343/5
authorZhiyong Yang <zhiyong.yang@intel.com>
Wed, 26 Jun 2019 02:41:55 +0000 (22:41 -0400)
committerDamjan Marion <dmarion@me.com>
Mon, 19 Aug 2019 10:35:31 +0000 (10:35 +0000)
The function ip4_rewrite_inline_with_gso can leverage
the existing vlib_buffer_advance to simplify code.

Type: fix

Change-Id: I25d943dc78aba2f67654385cf3f693eb01e0210e
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
src/vnet/ip/ip4_forward.c

index 060787f..caf02d1 100644 (file)
@@ -2505,8 +2505,7 @@ ip4_rewrite_inline_with_gso (vlib_main_t * vm,
       if (PREDICT_TRUE (error0 == IP4_ERROR_NONE))
        {
          u32 next_index = adj0[0].rewrite_header.next_index;
-         b[0]->current_data -= rw_len0;
-         b[0]->current_length += rw_len0;
+         vlib_buffer_advance (b[0], -(word) rw_len0);
          tx_sw_if_index0 = adj0[0].rewrite_header.sw_if_index;
          vnet_buffer (b[0])->sw_if_index[VLIB_TX] = tx_sw_if_index0;
 
@@ -2523,8 +2522,7 @@ ip4_rewrite_inline_with_gso (vlib_main_t * vm,
       if (PREDICT_TRUE (error1 == IP4_ERROR_NONE))
        {
          u32 next_index = adj1[0].rewrite_header.next_index;
-         b[1]->current_data -= rw_len1;
-         b[1]->current_length += rw_len1;
+         vlib_buffer_advance (b[1], -(word) rw_len1);
 
          tx_sw_if_index1 = adj1[0].rewrite_header.sw_if_index;
          vnet_buffer (b[1])->sw_if_index[VLIB_TX] = tx_sw_if_index1;
@@ -2641,8 +2639,7 @@ ip4_rewrite_inline_with_gso (vlib_main_t * vm,
       if (PREDICT_TRUE (error0 == IP4_ERROR_NONE))
        {
          u32 next_index = adj0[0].rewrite_header.next_index;
-         b[0]->current_data -= rw_len0;
-         b[0]->current_length += rw_len0;
+         vlib_buffer_advance (b[0], -(word) rw_len0);
          tx_sw_if_index0 = adj0[0].rewrite_header.sw_if_index;
          vnet_buffer (b[0])->sw_if_index[VLIB_TX] = tx_sw_if_index0;