aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/ip/ip4_forward.c
diff options
context:
space:
mode:
authorZhiyong Yang <zhiyong.yang@intel.com>2019-06-25 22:41:55 -0400
committerDamjan Marion <dmarion@me.com>2019-08-19 10:35:31 +0000
commita6659214aa7be7fe9fa04fbdc744affaaa8324ec (patch)
tree99aad8a798ca4c2c78c9282020a247aad71e483c /src/vnet/ip/ip4_forward.c
parente16f6a77eb18f1e9b61f987089c82fe38bc317b2 (diff)
ip: leverage existing vlib_buffer_advance
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>
Diffstat (limited to 'src/vnet/ip/ip4_forward.c')
-rw-r--r--src/vnet/ip/ip4_forward.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/vnet/ip/ip4_forward.c b/src/vnet/ip/ip4_forward.c
index 060787f9561..caf02d118cb 100644
--- a/src/vnet/ip/ip4_forward.c
+++ b/src/vnet/ip/ip4_forward.c
@@ -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;