summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Schultz <andreas.schultz@travelping.com>2018-07-17 11:10:16 +0200
committerFlorin Coras <florin.coras@gmail.com>2018-07-18 01:39:15 +0000
commit96cc67dd80e7fbf56071925afff056929965af6d (patch)
tree5a4cdb722ed8215bcdb9b4fe5a9aeab19d752e0f
parent882fcfe6f019f341e654daafe5afae9e69b64c50 (diff)
Fix GTP-U header in 4x IPv4 vector encapsulation
The fourth GTP-U packet had a wrong reference, leading to data corruption. Change-Id: Id82f87368183d5e8b7047133c5ea799f2a9cb43c Signed-off-by: Andreas Schultz <andreas.schultz@travelping.com>
-rw-r--r--src/plugins/gtpu/gtpu_encap.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/plugins/gtpu/gtpu_encap.c b/src/plugins/gtpu/gtpu_encap.c
index 8ad53c537a6..5c37f4db306 100644
--- a/src/plugins/gtpu/gtpu_encap.c
+++ b/src/plugins/gtpu/gtpu_encap.c
@@ -308,7 +308,7 @@ gtpu_encap_inline (vlib_main_t * vm,
new_l2 = clib_host_to_net_u16 (vlib_buffer_length_in_chain(vm, b2)
- sizeof (*ip4_2) - sizeof(*udp2));
gtpu2->length = new_l2;
- gtpu3 = (gtpu_header_t *)(udp1+3);
+ gtpu3 = (gtpu_header_t *)(udp3+1);
new_l3 = clib_host_to_net_u16 (vlib_buffer_length_in_chain(vm, b3)
- sizeof (*ip4_3) - sizeof(*udp3));
gtpu3->length = new_l3;