mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2025-03-28 19:21:08 +00:00
Add new functions, psa_load_persistent_key(), psa_free_persistent_key_data(), and psa_save_persistent_key(), for managing persistent keys. These functions load to or save from our internal representation of key slots. Serialization is a concern of the storage backend implementation and doesn't abstraction-leak into the lifetime management code. An initial implementation for files is provided. Additional storage backends can implement this interface for other storage types.
80 lines
2.2 KiB
Makefile
80 lines
2.2 KiB
Makefile
CFLAGS ?= -O2 -I../include -I../library
|
|
WARNING_CFLAGS ?= \
|
|
-Werror -Wall -Wextra \
|
|
-Wno-unused-function \
|
|
-Wno-overlength-strings \
|
|
-Wdeclaration-after-statement \
|
|
# Don't delete this line.
|
|
|
|
LDFLAGS ?= -L../library -lmbedcrypto
|
|
|
|
DEP := ../library/libmbedcrypto.a
|
|
|
|
# Python executable
|
|
PYTHON ?= python
|
|
|
|
APPS := \
|
|
test_suite_psa_crypto \
|
|
test_suite_psa_crypto_metadata \
|
|
test_suite_psa_crypto_storage_file \
|
|
# Don't delete this line.
|
|
|
|
# Look up for associated function files
|
|
func.test_suite_psa_crypto := test_suite_psa_crypto
|
|
func.test_suite_psa_crypto_metadata := test_suite_psa_crypto_metadata
|
|
func.test_suite_psa_crypto_storage_file := test_suite_psa_crypto_storage_file
|
|
|
|
.SILENT:
|
|
|
|
.PHONY: all test clean
|
|
|
|
all: $(APPS)
|
|
|
|
$(DEP):
|
|
$(MAKE) -C ../library
|
|
|
|
C_FILES := $(addsuffix .c,$(APPS))
|
|
|
|
.SECONDEXPANSION:
|
|
$(C_FILES): %.c: suites/$$(func.$$*).function suites/%.data scripts/generate_test_code.py suites/helpers.function suites/main_test.function suites/host_test.function
|
|
echo " Gen $@"
|
|
$(PYTHON) scripts/generate_test_code.py -f suites/$(func.$*).function \
|
|
-d suites/$*.data \
|
|
-t suites/main_test.function \
|
|
-p suites/host_test.function \
|
|
-s suites \
|
|
--helpers-file suites/helpers.function \
|
|
-o .
|
|
|
|
|
|
$(APPS): %: %.c $(DEP)
|
|
echo " CC $<"
|
|
$(CC) $(CFLAGS) $(WARNING_CFLAGS) $< $(LDFLAGS) -o $@
|
|
|
|
clean:
|
|
rm -rf $(APPS) *.c *.data TESTS
|
|
rm -rf data_files/ctr_drbg_seed data_files/hmac_drbg_seed data_files/mpi_write
|
|
|
|
test: $(APPS)
|
|
./test_suite_psa_crypto_metadata
|
|
./test_suite_psa_crypto
|
|
./test_suite_psa_crypto_storage_file
|
|
|
|
# Create separate targets for generating embedded tests.
|
|
EMBEDDED_TESTS := $(addprefix embedded_,$(APPS))
|
|
|
|
# Generate test code for target.
|
|
|
|
.SECONDEXPANSION:
|
|
$(EMBEDDED_TESTS): embedded_%: suites/$$(func.$$*).function suites/%.data scripts/generate_test_code.py suites/helpers.function suites/main_test.function suites/target_test.function
|
|
echo " Gen ./TESTS/mbedcrypto/$*/$*.c"
|
|
$(PYTHON) scripts/generate_test_code.py -f suites/$(func.$*).function \
|
|
-d suites/$*.data \
|
|
-t suites/main_test.function \
|
|
-p suites/target_test.function \
|
|
-s suites \
|
|
--helpers-file suites/helpers.function \
|
|
-o ./TESTS/mbedcrypto/$*
|
|
|
|
gen-embedded-test: $(EMBEDDED_TESTS)
|