net/bnxt: fix null dereference in session cleanup
[dpdk.git] / app / test / test_cryptodev_blockcipher.c
index 3cdb2c9..4944591 100644 (file)
@@ -2,6 +2,8 @@
  * Copyright(c) 2015-2017 Intel Corporation
  */
 
+#ifndef RTE_EXEC_ENV_WINDOWS
+
 #include <rte_common.h>
 #include <rte_hexdump.h>
 #include <rte_mbuf.h>
@@ -266,7 +268,10 @@ test_blockcipher_one_case(const struct blockcipher_test_case *t,
                }
                memset(obuf->buf_addr, dst_pattern, obuf->buf_len);
 
-               buf_p = rte_pktmbuf_append(obuf, buf_len + pad_len);
+               if (t->op_mask & BLOCKCIPHER_TEST_OP_DIGEST_ENCRYPTED)
+                       buf_p = rte_pktmbuf_append(obuf, buf_len + pad_len);
+               else
+                       buf_p = rte_pktmbuf_append(obuf, buf_len);
                if (!buf_p) {
                        snprintf(test_msg, BLOCKCIPHER_TEST_MSG_LEN, "line %u "
                                "FAILED: %s", __LINE__,
@@ -802,20 +807,16 @@ error_exit:
                        rte_cryptodev_sym_session_clear(dev_id, sess);
                        rte_cryptodev_sym_session_free(sess);
                }
-               if (cipher_xform)
-                       rte_free(cipher_xform);
-               if (auth_xform)
-                       rte_free(auth_xform);
+               rte_free(cipher_xform);
+               rte_free(auth_xform);
        }
 
        if (op)
                rte_crypto_op_free(op);
 
-       if (obuf)
-               rte_pktmbuf_free(obuf);
+       rte_pktmbuf_free(obuf);
 
-       if (ibuf)
-               rte_pktmbuf_free(ibuf);
+       rte_pktmbuf_free(ibuf);
 
        return status;
 }
@@ -1218,3 +1219,5 @@ free_blockcipher_test_suite(struct unit_test_suite *ts)
 {
        free(ts);
 }
+
+#endif /* !RTE_EXEC_ENV_WINDOWS */