diff options
author | Klement Sekera <ksekera@cisco.com> | 2019-10-28 11:26:28 +0000 |
---|---|---|
committer | Ole Trøan <otroan@employees.org> | 2019-10-28 14:00:59 +0000 |
commit | 38f7ccbce0c9f4c4c9fbd37232ac1365b5dc1252 (patch) | |
tree | 268112bee4be61e16e5a9ded337e634f05858d6d /src/vnet/ip | |
parent | 7fa3dd2881be537ec6144850064ad1419dc12f3e (diff) |
ip: reassembly fix sanity checks
use correct value for sanity checks
Type: fix
Change-Id: If33db5ce3e4a26f7876c2a67832ca2947563e211
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Diffstat (limited to 'src/vnet/ip')
-rw-r--r-- | src/vnet/ip/reass/ip6_full_reass.c | 6 | ||||
-rw-r--r-- | src/vnet/ip/reass/ip6_sv_reass.c | 4 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/vnet/ip/reass/ip6_full_reass.c b/src/vnet/ip/reass/ip6_full_reass.c index 4e9079d060d..7f56d2cc2d6 100644 --- a/src/vnet/ip/reass/ip6_full_reass.c +++ b/src/vnet/ip/reass/ip6_full_reass.c @@ -1092,6 +1092,9 @@ ip6_full_reassembly_inline (vlib_main_t * vm, next0 = IP6_FULL_REASSEMBLY_NEXT_INPUT; goto skip_reass; } + vnet_buffer (b0)->ip.reass.ip6_frag_hdr_offset = + (u8 *) frag_hdr - (u8 *) ip0; + if (0 == ip6_frag_hdr_offset (frag_hdr)) { // first fragment - verify upper-layer is present @@ -1110,9 +1113,6 @@ ip6_full_reassembly_inline (vlib_main_t * vm, next0 = IP6_FULL_REASSEMBLY_NEXT_ICMP_ERROR; goto skip_reass; } - vnet_buffer (b0)->ip.reass.ip6_frag_hdr_offset = - (u8 *) frag_hdr - (u8 *) ip0; - ip6_full_reass_kv_t kv; u8 do_handoff = 0; diff --git a/src/vnet/ip/reass/ip6_sv_reass.c b/src/vnet/ip/reass/ip6_sv_reass.c index a7f360eb583..9601cc3b8db 100644 --- a/src/vnet/ip/reass/ip6_sv_reass.c +++ b/src/vnet/ip/reass/ip6_sv_reass.c @@ -546,6 +546,8 @@ ip6_sv_reassembly_inline (vlib_main_t * vm, next0 = IP6_SV_REASSEMBLY_NEXT_INPUT; goto packet_enqueue; } + vnet_buffer (b0)->ip.reass.ip6_frag_hdr_offset = + (u8 *) frag_hdr - (u8 *) ip0; if (0 == ip6_frag_hdr_offset (frag_hdr)) { // first fragment - verify upper-layer is present @@ -564,8 +566,6 @@ ip6_sv_reassembly_inline (vlib_main_t * vm, next0 = IP6_SV_REASSEMBLY_NEXT_ICMP_ERROR; goto packet_enqueue; } - vnet_buffer (b0)->ip.reass.ip6_frag_hdr_offset = - (u8 *) frag_hdr - (u8 *) ip0; ip6_sv_reass_kv_t kv; u8 do_handoff = 0; |