diff --git a/crypto/tinycrypt/Kconfig b/crypto/tinycrypt/Kconfig index 36b98ce20..58fb5ba69 100644 --- a/crypto/tinycrypt/Kconfig +++ b/crypto/tinycrypt/Kconfig @@ -93,6 +93,24 @@ config TINYCRYPT_AES_CMAC ---help--- This option enables support for AES-128 CMAC mode. +config TINYCRYPT_TEST + tristate "Enable TinyCrypt test" + default n + help + Enable the TinyCrypt test. + +if TINYCRYPT_TEST + +config TINYCRYPT_TEST_PRIORITY + int "TinyCrypt test priority" + default 100 + +config TINYCRYPT_TEST_STACKSIZE + int "TinyCrypt test stack size" + default DEFAULT_TASK_STACKSIZE + +endif # TINYCRYPT_TEST + endif # TINYCRYPT endmenu # "Crypto: TinyCrypt cryptography library" diff --git a/crypto/tinycrypt/Makefile b/crypto/tinycrypt/Makefile index f98d2ab8e..5e570fb29 100644 --- a/crypto/tinycrypt/Makefile +++ b/crypto/tinycrypt/Makefile @@ -47,6 +47,7 @@ endif CSRCS += tinycrypt/lib/source/utils.c CSRCS += tinycrypt/lib/source/ecc.c +CSRCS += tinycrypt/lib/source/ecc_platform_specific.c ifeq ($(CONFIG_TINYCRYPT_ECC_DH),y) CSRCS += tinycrypt/lib/source/ecc_dh.c @@ -96,4 +97,36 @@ ifeq ($(CONFIG_TINYCRYPT_CTR_PRNG),y) CSRCS += tinycrypt/lib/source/ctr_prng.c endif +ifeq ($(CONFIG_TINYCRYPT_TEST),y) + CFLAGS += ${INCDIR_PREFIX}$(APPDIR)/crypto/tinycrypt/tinycrypt/tests/include + CFLAGS +=-Dhex2bin=ltp_hex2bin + CFLAGS +=-DENABLE_TESTS + CSRCS += tinycrypt/tests/test_ecc_utils.c + PRIORITY = $(CONFIG_TINYCRYPT_TEST_PRIORITY) + STACKSIZE = $(CONFIG_TINYCRYPT_TEST_STACKSIZE) + + MAINSRC += tinycrypt/tests/test_aes.c + MAINSRC += tinycrypt/tests/test_cbc_mode.c + MAINSRC += tinycrypt/tests/test_ccm_mode.c + MAINSRC += tinycrypt/tests/test_cmac_mode.c + MAINSRC += tinycrypt/tests/test_ctr_mode.c + MAINSRC += tinycrypt/tests/test_ctr_prng.c + MAINSRC += tinycrypt/tests/test_ecc_dh.c + MAINSRC += tinycrypt/tests/test_ecc_dsa.c + MAINSRC += tinycrypt/tests/test_hmac.c + MAINSRC += tinycrypt/tests/test_hmac_prng.c + MAINSRC += tinycrypt/tests/test_sha256.c + PROGNAME += tinycrypt_test_aes + PROGNAME += tinycrypt_test_cbc_mode + PROGNAME += tinycrypt_test_ccm_mode + PROGNAME += tinycrypt_test_cmac_mode + PROGNAME += tinycrypt_test_ctr_mode + PROGNAME += tinycrypt_test_ctr_prng + PROGNAME += tinycrypt_test_ecc_dh + PROGNAME += tinycrypt_test_ecc_dsa + PROGNAME += tinycrypt_test_hmac + PROGNAME += tinycrypt_test_hmac_prng + PROGNAME += tinycrypt_test_sha256 +endif + include $(APPDIR)/Application.mk