X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fipsec%2Fesp_decrypt.c;h=3f463505e01aaf54ec0c0845e0ee482036c0ba6c;hb=9f6957d1a5b23d4bee9390da20537db6e93b3433;hp=68cb825f23b9f99276ea06f5500fc473789a796e;hpb=920fd77e9c78860b42dc9250a85288152de007d7;p=vpp.git diff --git a/src/vnet/ipsec/esp_decrypt.c b/src/vnet/ipsec/esp_decrypt.c index 68cb825f23b..3f463505e01 100644 --- a/src/vnet/ipsec/esp_decrypt.c +++ b/src/vnet/ipsec/esp_decrypt.c @@ -277,9 +277,19 @@ esp_decrypt_inline (vlib_main_t * vm, } else { - ih4 = - (ip4_header_t *) ((u8 *) esp0 - - sizeof (ip4_header_t)); + if (sa0->udp_encap) + { + ih4 = + (ip4_header_t *) ((u8 *) esp0 - + sizeof (udp_header_t) - + sizeof (ip4_header_t)); + } + else + { + ih4 = + (ip4_header_t *) ((u8 *) esp0 - + sizeof (ip4_header_t)); + } oh4 = vlib_buffer_get_current (o_b0); ip_hdr_size = sizeof (ip4_header_t); }