aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatias Elo <matias.elo@nokia.com>2021-07-01 17:12:26 +0300
committerMatias Elo <matias.elo@nokia.com>2021-07-07 09:21:49 +0300
commit33d451574585ebe7ee6a7d7e93b648f2746e3560 (patch)
tree6ca323b23c9b0dd71e62bab9fc6b370b1ce0cbb7
parentbe504c32b8fb227ebdc665bce70dd7598f1d88ef (diff)
Port e44410dff "example: ipsec_crypto: enhance runtime scripts"
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
-rw-r--r--platform/linux-dpdk/m4/configure.m41
-rw-r--r--platform/linux-dpdk/test/Makefile.am6
-rw-r--r--platform/linux-dpdk/test/example/Makefile.am1
-rw-r--r--platform/linux-dpdk/test/example/ipsec_crypto/Makefile.am23
-rw-r--r--platform/linux-dpdk/test/example/ipsec_crypto/pktio_env72
5 files changed, 103 insertions, 0 deletions
diff --git a/platform/linux-dpdk/m4/configure.m4 b/platform/linux-dpdk/m4/configure.m4
index 6c0149df7..1e6e8306c 100644
--- a/platform/linux-dpdk/m4/configure.m4
+++ b/platform/linux-dpdk/m4/configure.m4
@@ -84,6 +84,7 @@ AC_CONFIG_FILES([platform/linux-dpdk/Makefile
platform/linux-dpdk/test/example/classifier/Makefile
platform/linux-dpdk/test/example/generator/Makefile
platform/linux-dpdk/test/example/ipsec_api/Makefile
+ platform/linux-dpdk/test/example/ipsec_crypto/Makefile
platform/linux-dpdk/test/example/l2fwd_simple/Makefile
platform/linux-dpdk/test/example/l3fwd/Makefile
platform/linux-dpdk/test/example/packet/Makefile
diff --git a/platform/linux-dpdk/test/Makefile.am b/platform/linux-dpdk/test/Makefile.am
index b21fd5314..a1580cec3 100644
--- a/platform/linux-dpdk/test/Makefile.am
+++ b/platform/linux-dpdk/test/Makefile.am
@@ -1,6 +1,12 @@
include $(top_srcdir)/test/Makefile.inc
TESTS_ENVIRONMENT += TEST_DIR=${top_builddir}/test/validation
+if WITH_OPENSSL
+TESTS_ENVIRONMENT += WITH_OPENSSL=1
+else
+TESTS_ENVIRONMENT += WITH_OPENSSL=0
+endif
+
SUBDIRS =
if test_vald
diff --git a/platform/linux-dpdk/test/example/Makefile.am b/platform/linux-dpdk/test/example/Makefile.am
index 7cbb2fde1..947647cd4 100644
--- a/platform/linux-dpdk/test/example/Makefile.am
+++ b/platform/linux-dpdk/test/example/Makefile.am
@@ -2,6 +2,7 @@ SUBDIRS = \
classifier \
generator \
ipsec_api \
+ ipsec_crypto \
l2fwd_simple \
l3fwd \
packet \
diff --git a/platform/linux-dpdk/test/example/ipsec_crypto/Makefile.am b/platform/linux-dpdk/test/example/ipsec_crypto/Makefile.am
new file mode 100644
index 000000000..101c97cdf
--- /dev/null
+++ b/platform/linux-dpdk/test/example/ipsec_crypto/Makefile.am
@@ -0,0 +1,23 @@
+EXTRA_DIST = pktio_env
+
+# If building out-of-tree, make check will not copy the scripts and data to the
+# $(builddir) assuming that all commands are run locally. However this prevents
+# running tests on a remote target using LOG_COMPILER.
+# So copy all script and data files explicitly here.
+all-local:
+ if [ "x$(srcdir)" != "x$(builddir)" ]; then \
+ for f in $(EXTRA_DIST); do \
+ if [ -e $(srcdir)/$$f ]; then \
+ mkdir -p $(builddir)/$$(dirname $$f); \
+ cp -f $(srcdir)/$$f $(builddir)/$$f; \
+ fi \
+ done \
+ fi
+clean-local:
+ if [ "x$(srcdir)" != "x$(builddir)" ]; then \
+ for f in $(EXTRA_DIST); do \
+ rm -f $(builddir)/$$f; \
+ done \
+ fi
+
+.NOTPARALLEL:
diff --git a/platform/linux-dpdk/test/example/ipsec_crypto/pktio_env b/platform/linux-dpdk/test/example/ipsec_crypto/pktio_env
new file mode 100644
index 000000000..1c6e7d172
--- /dev/null
+++ b/platform/linux-dpdk/test/example/ipsec_crypto/pktio_env
@@ -0,0 +1,72 @@
+#!/bin/sh
+#
+# Copyright (C) 2021, Marvell
+# All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+# Script to setup interfaces used for running application on linux-dpdk.
+#
+# ipsec_api application uses two loop devices loop0 and loop1.
+#
+
+if [ "$0" == "$BASH_SOURCE" ]; then
+ echo "Error: Platform specific env file has to be sourced."
+ exit 1
+fi
+
+# Absolute path to the .env file.
+LINUX_ENV_PATH=$PWD/../../platform/linux-dpdk/test
+
+TESTENV="tests-linux-dpdk.env"
+
+if [ -f $LINUX_ENV_PATH/$TESTENV ]; then
+ source $LINUX_ENV_PATH/$TESTENV
+else
+ echo "BUG: unable to find $TESTENV!"
+ echo "$TESTENV has to be in following directory: "
+ echo " $LINUX_ENV_PATH"
+ exit 1
+fi
+
+# Skip IPsec example tests when there's no OpenSSL.
+if [ -n "$WITH_OPENSSL" ] && [ ${WITH_OPENSSL} -eq 0 ]; then
+ echo "Crypto not supported. Skipping."
+ exit 77
+fi
+
+# Skip live and router mode tests.
+if [ ${IPSEC_APP_MODE} -eq 1 ] || [ ${IPSEC_APP_MODE} -eq 2 ]; then
+ echo "Live / Router mode test. Skipping."
+ exit 77
+fi
+
+IF0=p7p1
+IF1=p8p1
+
+NEXT_HOP_MAC0=08:00:27:76:B5:E0
+NEXT_HOP_MAC1=08:00:27:F5:8B:DB
+
+LIF0=loop1
+LIF1=loop2
+
+IF_LIST=$LIF0,$LIF1
+ROUTE_IF_INB=$LIF0
+ROUTE_IF_OUTB=$LIF1
+OUT_IF=$LIF1
+IN_IF=$LIF0
+
+validate_result()
+{
+ return 0
+}
+
+setup_interfaces()
+{
+ return 0
+}
+
+cleanup_interfaces()
+{
+ return 0
+}