examples/ipsec-secgw: fix esp padding check
authorSergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
Thu, 9 Jun 2016 08:42:42 +0000 (09:42 +0100)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Tue, 21 Jun 2016 09:38:51 +0000 (11:38 +0200)
Current code fails to correctly check padding sequence for inbound
packets.
Padding sequence starts on 1 but it checks for 0.

Fixes: d299106e8e31 ("examples/ipsec-secgw: add IPsec sample application")

Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
examples/ipsec-secgw/esp.c

index 0f6b33e..7dce78c 100644 (file)
@@ -139,7 +139,7 @@ esp4_tunnel_inbound_post_crypto(struct rte_mbuf *m, struct ipsec_sa *sa,
 
        padding = pad_len - *pad_len;
        for (i = 0; i < *pad_len; i++) {
-               if (padding[i] != i) {
+               if (padding[i] != i + 1) {
                        RTE_LOG(ERR, IPSEC_ESP, "invalid pad_len field\n");
                        return -EINVAL;
                }