@@ -42,9 +42,13 @@ do_trap() {
4242
4343trap do_trap INT TERM
4444
45+ TLS13_ALL_CIPHERS=" TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256:TLS_AES_128_CCM_SHA256:TLS_AES_128_CCM_8_SHA256"
46+
4547TLS13_CIPHERS=(
4648 TLS_AES_256_GCM_SHA384
4749 TLS_AES_128_GCM_SHA256
50+ TLS_AES_128_CCM_SHA256
51+ TLS_AES_128_CCM_8_SHA256
4852)
4953TLS12_CIPHERS=(
5054 ECDHE-ECDSA-AES256-GCM-SHA384
@@ -53,6 +57,14 @@ TLS12_CIPHERS=(
5357 ECDHE-ECDSA-AES128-GCM-SHA256
5458 ECDHE-RSA-AES128-GCM-SHA256
5559 DHE-RSA-AES128-GCM-SHA256
60+ ECDHE-ECDSA-AES256-CCM8
61+ ECDHE-ECDSA-AES256-CCM
62+ DHE-RSA-AES256-CCM8
63+ DHE-RSA-AES256-CCM
64+ ECDHE-ECDSA-AES128-CCM8
65+ ECDHE-ECDSA-AES128-CCM
66+ DHE-RSA-AES128-CCM8
67+ DHE-RSA-AES128-CCM
5668 ECDHE-ECDSA-AES256-SHA384
5769 ECDHE-RSA-AES256-SHA384
5870 DHE-RSA-AES256-SHA256
@@ -67,6 +79,10 @@ TLS12_CIPHERS=(
6779 DHE-RSA-AES128-SHA
6880 AES256-GCM-SHA384
6981 AES128-GCM-SHA256
82+ AES256-CCM8
83+ AES256-CCM
84+ AES128-CCM8
85+ AES128-CCM
7086 AES256-SHA256
7187 AES128-SHA256
7288 AES256-SHA
@@ -269,22 +285,32 @@ check_log() {
269285 # Check wolfEngine's cipher code was used.
270286 grep we_aes_gcm_cipher $TMP_LOG > /dev/null 2>&1
271287 GCM_GREP=$?
288+ grep we_aes_ccm_cipher $TMP_LOG > /dev/null 2>&1
289+ CCM_GREP=$?
272290 grep we_aes_cbc_cipher $TMP_LOG > /dev/null 2>&1
273291 CBC_GREP=$?
274292 grep we_des3_cbc_cipher $TMP_LOG > /dev/null 2>&1
275293 DES3CBC_GREP=$?
276- if [ $GCM_GREP != 0 -a $CBC_GREP != 0 -a $DES3CBC_GREP != 0 ]; then
277- printf " \t\tCipher not wolfEngine...failed\n"
278- FAIL=$(( FAIL+ 1 ))
279- fi
294+ CIPHER_WOLFENGINE=0
280295 if [ $GCM_GREP = 0 ]; then
281296 WE_ALGS=" $WE_ALGS AES-GCM"
297+ CIPHER_WOLFENGINE=1
298+ fi
299+ if [ $CCM_GREP = 0 ]; then
300+ WE_ALGS=" $WE_ALGS AES-CCM"
301+ CIPHER_WOLFENGINE=1
282302 fi
283303 if [ $CBC_GREP = 0 ]; then
284304 WE_ALGS=" $WE_ALGS AES-CBC"
305+ CIPHER_WOLFENGINE=1
285306 fi
286307 if [ $DES3CBC_GREP = 0 ]; then
287308 WE_ALGS=" $WE_ALGS DES3-CBC"
309+ CIPHER_WOLFENGINE=1
310+ fi
311+ if [ " $CIPHER_WOLFENGINE " = " 0" ]; then
312+ printf " \t\tCipher not wolfEngine...failed\n"
313+ FAIL=$(( FAIL+ 1 ))
288314 fi
289315
290316 printf " $WE_ALGS \n"
@@ -297,7 +323,7 @@ start_openssl_server() {
297323 ($OPENSSL_DIR /apps/openssl s_server -www \
298324 -cert $CERT_DIR /server-cert.pem -key $CERT_DIR /server-key.pem \
299325 -dcert $CERT_DIR /server-ecc.pem -dkey $CERT_DIR /ecc-key.pem \
300- -accept $OPENSSL_PORT \
326+ -accept $OPENSSL_PORT $OPENSSL_ALL_CIPHERS \
301327 > $LOG_SERVER 2>&1
302328 ) &
303329 OPENSSL_SERVER_PID=$!
@@ -318,10 +344,10 @@ start_we_openssl_server() {
318344
319345 (OPENSSL_CONF=engine.conf \
320346 $OPENSSL_DIR /apps/openssl s_server -www \
321- -engine wolfSSL \
347+ -engine $WOLFENGINE_NAME \
322348 -cert $CERT_DIR /server-cert.pem -key $CERT_DIR /server-key.pem \
323349 -dcert $CERT_DIR /server-ecc.pem -dkey $CERT_DIR /ecc-key.pem \
324- -accept $WE_OPENSSL_PORT \
350+ -accept $WE_OPENSSL_PORT $OPENSSL_ALL_CIPHERS \
325351 > $LOG_WE_SERVER 2>&1
326352 ) &
327353 WE_OPENSSL_SERVER_PID=$!
@@ -344,7 +370,7 @@ do_we_client() {
344370 OPENSSL_CONF=engine.conf \
345371 LD_LIBRARY_PATH=" ./.libs:$LD_LIBRARY_PATH " \
346372 $OPENSSL_DIR /apps/openssl s_client \
347- -engine wolfSSL \
373+ -engine $WOLFENGINE_NAME \
348374 -cipher $CIPHER $TLS_VERSION \
349375 -curves $CURVES \
350376 -connect localhost:$OPENSSL_PORT \
@@ -355,7 +381,7 @@ do_we_client() {
355381 OPENSSL_CONF=engine.conf \
356382 LD_LIBRARY_PATH=" ./.libs:$LD_LIBRARY_PATH " \
357383 $OPENSSL_DIR /apps/openssl s_client \
358- -engine wolfSSL \
384+ -engine $WOLFENGINE_NAME \
359385 -ciphersuites $CIPHER $TLS_VERSION \
360386 -curves $CURVES \
361387 -connect localhost:$OPENSSL_PORT \
@@ -504,7 +530,7 @@ do_configure() {
504530 printf " Setting up wolfEngine\n"
505531 printf " \tConfigure ... "
506532 ./configure LDFLAGS=" -L$OPENSSL_DIR " --with-openssl=$OPENSSL_DIR \
507- --enable-debug & > $LOG_FILE
533+ $WITH_WOLFSSL --enable-debug & > $LOG_FILE
508534 if [ " $? " = " 0" ]; then
509535 printf " done\n"
510536 else
@@ -668,6 +694,16 @@ else
668694 VERSIONS=" 1.0.2 1.1.1"
669695fi
670696
697+ if [ " $WOLFSSL_DIR " != " " ]; then
698+ WITH_WOLFSSL=" --with-wolfssl=$WOLFSSL_DIR "
699+ if [ -d " $WOLFSSL_DIR /lib" ]; then
700+ WOLFSSL_LIBDIR=" :$WOLFSSL_DIR /lib"
701+ else
702+ WOLFSSL_LIBDIR=" :$WOLFSSL_DIR "
703+ fi
704+ fi
705+ export OPENSSL_ENGINES=" $PWD /.libs"
706+
671707CURVES=prime256v1
672708for VERSION in $VERSIONS
673709do
679715 if [ " $VERSION " = " 1.0.2" ]; then
680716 setup_openssl_102h
681717 OPENSSL_DIR=" ${OPENSSL_1_0_2_SOURCE} "
718+ OPENSSL_ALL_CIPHERS=" -cipher ALL"
719+ WOLFENGINE_NAME=wolfengine
682720 fi
683721 if [ " $VERSION " = " 1.1.0" ]; then
684722 setup_openssl_110j
685723 OPENSSL_DIR=" ${OPENSSL_1_1_0_SOURCE} "
724+ OPENSSL_ALL_CIPHERS=" -cipher ALL"
725+ WOLFENGINE_NAME=libwolfengine
686726 fi
687727 if [ " $VERSION " = " 1.1.1" ]; then
688728 setup_openssl_111b
689729 OPENSSL_DIR=" ${OPENSSL_1_1_1_SOURCE} "
730+ OPENSSL_ALL_CIPHERS=" -cipher ALL -ciphersuites $TLS13_ALL_CIPHERS "
731+ WOLFENGINE_NAME=libwolfengine
690732 fi
691733
692- export LD_LIBRARY_PATH=$OPENSSL_DIR
734+ export LD_LIBRARY_PATH=$OPENSSL_DIR$WOLFSSL_LIBDIR
693735
694736 do_configure
695737 if [ " $NO_TEST_CLIENT " = " " ]; then
0 commit comments