+ echo "Test environment configuration:"
+ # check which mode to be enabled (library/legacy)
+ if [[ -n "${SGW_MODE}" && "${SGW_MODE}" == "library" ]]; then
+ DPDK_MODE="-w 300 -l"
+ echo "[enabled] library mode"
+ else
+ DPDK_MODE=""
+ echo "[enabled] legacy mode"
+ fi
+
+ # check if esn is demanded
+ if [[ -n "${SGW_ESN}" && "${SGW_ESN}" == "esn-on" ]]; then
+ DPDK_VARS="${DPDK_VARS} -e"
+ XFRM_ESN="flag esn"
+ echo "[enabled] extended sequence number"
+ else
+ XFRM_ESN=""
+ echo "[disabled] extended sequence number"
+ fi
+
+ # check if atom is demanded
+ if [[ -n "${SGW_ATOM}" && "${SGW_ATOM}" == "atom-on" ]]; then
+ DPDK_VARS="${DPDK_VARS} -a"
+ echo "[enabled] sequence number atomic behavior"
+ else
+ echo "[disabled] sequence number atomic behavior"
+ fi
+
+ # check if inline should be enabled
+ if [[ -n "${SGW_CRYPTO}" && "${SGW_CRYPTO}" == "inline" ]]; then
+ CRYPTO_DEV='--vdev="crypto_null0"'
+ SGW_CFG_XPRM_IN="port_id 0 type inline-crypto-offload"
+ SGW_CFG_XPRM_OUT="port_id 0 type inline-crypto-offload"
+ echo "[enabled] inline crypto mode"
+ else
+ SGW_CFG_XPRM_IN=""
+ SGW_CFG_XPRM_OUT=""
+ echo "[disabled] inline crypto mode"
+ fi
+
+ # check if fallback should be enabled
+ if [[ -n "${SGW_CRYPTO_FLBK}" ]] && [[ -n ${SGW_CFG_XPRM_IN} ]] \
+ && [[ "${SGW_MODE}" == "library" ]] \
+ && [[ "${SGW_CRYPTO_FLBK}" == "cpu-crypto" \
+ || "${SGW_CRYPTO_FLBK}" == "lookaside-none" ]]; then
+ CRYPTO_DEV=""
+ SGW_CFG_XPRM_IN="${SGW_CFG_XPRM_IN} fallback ${SGW_CRYPTO_FLBK}"
+ SGW_CFG_XPRM_OUT=""
+ echo "[enabled] crypto fallback ${SGW_CRYPTO_FLBK} mode"
+ else
+ if [[ -n "${SGW_CRYPTO_FLBK}" \
+ && "${SGW_CRYPTO}" != "inline" ]]; then
+ echo "SGW_CRYPTO variable needs to be set to \
+\"inline\" for ${SGW_CRYPTO_FLBK} fallback setting"
+ exit 127
+ elif [[ -n "${SGW_CRYPTO_FLBK}" \
+ && "${SGW_MODE}" != "library" ]]; then
+ echo "SGW_MODE variable needs to be set to \
+\"library\" for ${SGW_CRYPTO_FLBK} fallback setting"
+ exit 127
+ fi
+ echo "[disabled] crypto fallback mode"
+ fi
+