aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetri Savolainen <petri.savolainen@nokia.com>2019-06-07 11:11:52 +0300
committerPetri Savolainen <petri.savolainen@nokia.com>2019-06-24 12:02:43 +0300
commit5a57b8d273a8325418b536fdc01ba745383c3473 (patch)
tree97b4f543c35aae3090852dcee37426d53fb74ec8
parent6b86d7138744731f30cab9b8a24bddb34a83941c (diff)
test: ipsec: run ipsec_api example in make check
Run ipsec examples under linux-generic platform specific test cases, as these examples assume that loop1 and loop2 interfaces are available. Signed-off-by: Petri Savolainen <petri.savolainen@nokia.com> Reviewed-by: Dmitry Eremin-Solenikov <deremin-solenikov@cavium.com>
-rw-r--r--example/ipsec_api/Makefile.am24
-rwxr-xr-xexample/ipsec_api/odp_ipsec_api_run_esp_out.sh7
-rwxr-xr-xexample/ipsec_api/odp_ipsec_api_run_simple.sh7
-rw-r--r--platform/linux-generic/test/Makefile.am12
-rwxr-xr-xplatform/linux-generic/test/ipsec/ipsec_api_example.sh32
5 files changed, 67 insertions, 15 deletions
diff --git a/example/ipsec_api/Makefile.am b/example/ipsec_api/Makefile.am
index 8f81e3233..16b1fbfd0 100644
--- a/example/ipsec_api/Makefile.am
+++ b/example/ipsec_api/Makefile.am
@@ -2,18 +2,18 @@ include $(top_srcdir)/example/Makefile.inc
bin_PROGRAMS = odp_ipsec_api
-dist_bin_SCRIPTS = \
- $(srcdir)/odp_ipsec_api_run_ah_in.sh \
- $(srcdir)/odp_ipsec_api_run_ah_out.sh \
- $(srcdir)/odp_ipsec_api_run_ah_tun_in.sh \
- $(srcdir)/odp_ipsec_api_run_ah_tun_out.sh \
- $(srcdir)/odp_ipsec_api_run_esp_in.sh \
- $(srcdir)/odp_ipsec_api_run_esp_out.sh \
- $(srcdir)/odp_ipsec_api_run_esp_tun_in.sh \
- $(srcdir)/odp_ipsec_api_run_esp_tun_out.sh \
- $(srcdir)/odp_ipsec_api_run_live.sh \
- $(srcdir)/odp_ipsec_api_run_router.sh \
- $(srcdir)/odp_ipsec_api_run_simple.sh
+dist_check_SCRIPTS = \
+ odp_ipsec_api_run_ah_in.sh \
+ odp_ipsec_api_run_ah_out.sh \
+ odp_ipsec_api_run_ah_tun_in.sh \
+ odp_ipsec_api_run_ah_tun_out.sh \
+ odp_ipsec_api_run_esp_in.sh \
+ odp_ipsec_api_run_esp_out.sh \
+ odp_ipsec_api_run_esp_tun_in.sh \
+ odp_ipsec_api_run_esp_tun_out.sh \
+ odp_ipsec_api_run_live.sh \
+ odp_ipsec_api_run_router.sh \
+ odp_ipsec_api_run_simple.sh
odp_ipsec_api_SOURCES = \
odp_ipsec.c \
diff --git a/example/ipsec_api/odp_ipsec_api_run_esp_out.sh b/example/ipsec_api/odp_ipsec_api_run_esp_out.sh
index d5dc6e0e6..e846dfbec 100755
--- a/example/ipsec_api/odp_ipsec_api_run_esp_out.sh
+++ b/example/ipsec_api/odp_ipsec_api_run_esp_out.sh
@@ -4,7 +4,12 @@
# - 2 loop interfaces
# - 10 packets
# - Specify API mode on command line
-./odp_ipsec_api -i loop1,loop2 \
+
+if [ -z "$IPSEC_EXAMPLE_PATH" ]; then
+IPSEC_EXAMPLE_PATH=.
+fi
+
+${IPSEC_EXAMPLE_PATH}/odp_ipsec_api -i loop1,loop2 \
-r 192.168.222.2/32:loop2:08.00.27.F5.8B.DB \
-p 192.168.111.0/24:192.168.222.0/24:out:esp \
-e 192.168.111.2:192.168.222.2:\
diff --git a/example/ipsec_api/odp_ipsec_api_run_simple.sh b/example/ipsec_api/odp_ipsec_api_run_simple.sh
index e1698bd2b..8b9b9d7b9 100755
--- a/example/ipsec_api/odp_ipsec_api_run_simple.sh
+++ b/example/ipsec_api/odp_ipsec_api_run_simple.sh
@@ -4,7 +4,12 @@
# - 2 loop interfaces
# - 10 packets
# - Specify API mode on command line
-./odp_ipsec_api -i loop1,loop2 \
+
+if [ -z "$IPSEC_EXAMPLE_PATH" ]; then
+IPSEC_EXAMPLE_PATH=.
+fi
+
+${IPSEC_EXAMPLE_PATH}/odp_ipsec_api -i loop1,loop2 \
-r 192.168.222.2/32:loop2:08.00.27.F5.8B.DB \
-s 192.168.111.2:192.168.222.2:loop1:loop2:10:100 \
-c 2 "$@"
diff --git a/platform/linux-generic/test/Makefile.am b/platform/linux-generic/test/Makefile.am
index 03a1474da..daeb779fb 100644
--- a/platform/linux-generic/test/Makefile.am
+++ b/platform/linux-generic/test/Makefile.am
@@ -1,12 +1,22 @@
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
TESTS = validation/api/pktio/pktio_run.sh \
validation/api/pktio/pktio_run_tap.sh \
- validation/api/shmem/shmem_linux$(EXEEXT)
+ validation/api/shmem/shmem_linux$(EXEEXT) \
+ ipsec/ipsec_api_example.sh
+
+dist_check_SCRIPTS = ipsec/ipsec_api_example.sh
+test_SCRIPTS = $(dist_check_SCRIPTS)
SUBDIRS += validation/api/pktio\
validation/api/shmem\
diff --git a/platform/linux-generic/test/ipsec/ipsec_api_example.sh b/platform/linux-generic/test/ipsec/ipsec_api_example.sh
new file mode 100755
index 000000000..82fd193d9
--- /dev/null
+++ b/platform/linux-generic/test/ipsec/ipsec_api_example.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+#
+# Copyright (c) 2019, Nokia
+# All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+
+# 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
+
+# Absolute path to the example binary. This is needed during distcheck, which
+# keeps scripts and binaries in different directories (scripts are not copied
+# into the distribution directory).
+export IPSEC_EXAMPLE_PATH=$(pwd)/../../../example/ipsec_api
+
+declare -i RESULT=0
+
+pushd $(dirname $0)/../../../../example/ipsec_api
+
+./odp_ipsec_api_run_simple.sh
+RESULT+=$?
+
+./odp_ipsec_api_run_esp_out.sh
+RESULT+=$?
+
+popd
+
+exit ${RESULT}