diff --git a/ChangeLog b/ChangeLog index fe8e5e77e..13f4e5a95 100644 --- a/ChangeLog +++ b/ChangeLog @@ -9,6 +9,7 @@ Changes * Improvements to the CMake build system, contributed by Julian Ospald. * Work around a bug of the version of Clang shipped by Apple with Mavericks that prevented bignum.c from compiling. (Reported by Rafael Baptista.) + * Improvements to tests/Makefile, contributed by Oden Eriksson. Security * Forbid change of server certificate during renegotiation to prevent diff --git a/tests/Makefile b/tests/Makefile index 3fcf92b99..8c18378a9 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -9,6 +9,14 @@ CFLAGS += -I../include -D_FILE_OFFSET_BITS=64 -Wall -W -Wdeclaration-after-state OFLAGS = -O2 LDFLAGS += -L../library -lpolarssl $(SYS_LDFLAGS) +ifndef SHARED +DEP=../library/libpolarssl.a +CHECK_PRELOAD= +else +DEP=../library/libpolarssl.so +CHECK_PRELOAD= LD_PRELOAD=../library/libpolarssl.so +endif + ifdef DEBUG CFLAGS += -g3 endif @@ -115,151 +123,151 @@ test_suite_gcm.encrypt_256.c : suites/test_suite_gcm.function suites/test_suite_ echo " Generate $@" scripts/generate_code.pl suites $* $* -test_suite_aes.ecb: test_suite_aes.ecb.c ../library/libpolarssl.a +test_suite_aes.ecb: test_suite_aes.ecb.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_aes.cbc: test_suite_aes.cbc.c ../library/libpolarssl.a +test_suite_aes.cbc: test_suite_aes.cbc.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_aes.cfb: test_suite_aes.cfb.c ../library/libpolarssl.a +test_suite_aes.cfb: test_suite_aes.cfb.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_aes.rest: test_suite_aes.rest.c ../library/libpolarssl.a +test_suite_aes.rest: test_suite_aes.rest.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_arc4: test_suite_arc4.c ../library/libpolarssl.a +test_suite_arc4: test_suite_arc4.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_base64: test_suite_base64.c ../library/libpolarssl.a +test_suite_base64: test_suite_base64.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_blowfish: test_suite_blowfish.c ../library/libpolarssl.a +test_suite_blowfish: test_suite_blowfish.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_camellia: test_suite_camellia.c ../library/libpolarssl.a +test_suite_camellia: test_suite_camellia.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_cipher.aes: test_suite_cipher.aes.c ../library/libpolarssl.a +test_suite_cipher.aes: test_suite_cipher.aes.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_cipher.blowfish: test_suite_cipher.blowfish.c ../library/libpolarssl.a +test_suite_cipher.blowfish: test_suite_cipher.blowfish.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_cipher.camellia: test_suite_cipher.camellia.c ../library/libpolarssl.a +test_suite_cipher.camellia: test_suite_cipher.camellia.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_cipher.des: test_suite_cipher.des.c ../library/libpolarssl.a +test_suite_cipher.des: test_suite_cipher.des.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_cipher.null: test_suite_cipher.null.c ../library/libpolarssl.a +test_suite_cipher.null: test_suite_cipher.null.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_ctr_drbg: test_suite_ctr_drbg.c ../library/libpolarssl.a +test_suite_ctr_drbg: test_suite_ctr_drbg.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_des: test_suite_des.c ../library/libpolarssl.a +test_suite_des: test_suite_des.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_dhm: test_suite_dhm.c ../library/libpolarssl.a +test_suite_dhm: test_suite_dhm.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_error: test_suite_error.c ../library/libpolarssl.a +test_suite_error: test_suite_error.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_gcm.decrypt_128: test_suite_gcm.decrypt_128.c ../library/libpolarssl.a +test_suite_gcm.decrypt_128: test_suite_gcm.decrypt_128.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_gcm.decrypt_192: test_suite_gcm.decrypt_192.c ../library/libpolarssl.a +test_suite_gcm.decrypt_192: test_suite_gcm.decrypt_192.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_gcm.decrypt_256: test_suite_gcm.decrypt_256.c ../library/libpolarssl.a +test_suite_gcm.decrypt_256: test_suite_gcm.decrypt_256.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_gcm.encrypt_128: test_suite_gcm.encrypt_128.c ../library/libpolarssl.a +test_suite_gcm.encrypt_128: test_suite_gcm.encrypt_128.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_gcm.encrypt_192: test_suite_gcm.encrypt_192.c ../library/libpolarssl.a +test_suite_gcm.encrypt_192: test_suite_gcm.encrypt_192.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_gcm.encrypt_256: test_suite_gcm.encrypt_256.c ../library/libpolarssl.a +test_suite_gcm.encrypt_256: test_suite_gcm.encrypt_256.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_hmac_shax: test_suite_hmac_shax.c ../library/libpolarssl.a +test_suite_hmac_shax: test_suite_hmac_shax.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_md: test_suite_md.c ../library/libpolarssl.a +test_suite_md: test_suite_md.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_mdx: test_suite_mdx.c ../library/libpolarssl.a +test_suite_mdx: test_suite_mdx.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_mpi: test_suite_mpi.c ../library/libpolarssl.a +test_suite_mpi: test_suite_mpi.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_pbkdf2: test_suite_pbkdf2.c ../library/libpolarssl.a +test_suite_pbkdf2: test_suite_pbkdf2.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_pkcs1_v21: test_suite_pkcs1_v21.c ../library/libpolarssl.a +test_suite_pkcs1_v21: test_suite_pkcs1_v21.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_pkcs5: test_suite_pkcs5.c ../library/libpolarssl.a +test_suite_pkcs5: test_suite_pkcs5.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_rsa: test_suite_rsa.c ../library/libpolarssl.a +test_suite_rsa: test_suite_rsa.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_shax: test_suite_shax.c ../library/libpolarssl.a +test_suite_shax: test_suite_shax.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_x509parse: test_suite_x509parse.c ../library/libpolarssl.a +test_suite_x509parse: test_suite_x509parse.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_x509write: test_suite_x509write.c ../library/libpolarssl.a +test_suite_x509write: test_suite_x509write.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_xtea: test_suite_xtea.c ../library/libpolarssl.a +test_suite_xtea: test_suite_xtea.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_debug: test_suite_debug.c ../library/libpolarssl.a +test_suite_debug: test_suite_debug.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ -test_suite_version: test_suite_version.c ../library/libpolarssl.a +test_suite_version: test_suite_version.c $(DEP) echo " CC $@.c" $(CC) $(CFLAGS) $(OFLAGS) $@.c $(LDFLAGS) -o $@ @@ -273,12 +281,12 @@ endif check: $(APPS) ifndef WINDOWS - echo "Running checks (Success if all tests PASSED)" + echo "Running checks (Success if all tests PASSED)" RETURN=0; \ for i in $(APPS); \ do \ echo " - $${i}"; \ - RESULT=`./$${i} | grep -v 'PASS$$' | grep -v -- '-----' | grep -v '^$$'`; \ + RESULT=`$(CHECK_PRELOAD) ./$${i} | grep -v 'PASS$$' | grep -v -- '----' | grep -v '^$$'`; \ FAILED=`echo $$RESULT |grep FAILED`; \ echo " $$RESULT"; \ if [ "$$FAILED" != "" ]; \