Port libsparkcrypto test cases
This commit is contained in:
1
lib/import/import-libsparkcryptofat.mk
Normal file
1
lib/import/import-libsparkcryptofat.mk
Normal file
@@ -0,0 +1 @@
|
|||||||
|
include $(call select_from_repositories,lib/import/import-libsparkcrypto.mk)
|
||||||
@@ -10,7 +10,8 @@ SRC_C += \
|
|||||||
posix_common.c \
|
posix_common.c \
|
||||||
posix_fat.c
|
posix_fat.c
|
||||||
|
|
||||||
SRC_ADS += system.ads \
|
SRC_ADS += \
|
||||||
|
system.ads \
|
||||||
s-soflin.ads \
|
s-soflin.ads \
|
||||||
s-imgint.ads \
|
s-imgint.ads \
|
||||||
s-stoele.ads \
|
s-stoele.ads \
|
||||||
@@ -25,9 +26,10 @@ SRC_ADS += system.ads \
|
|||||||
ada.ads \
|
ada.ads \
|
||||||
g-souinf.ads \
|
g-souinf.ads \
|
||||||
g-trasym.ads \
|
g-trasym.ads \
|
||||||
s-unstyp.ads
|
s-unstyp.ads \
|
||||||
|
|
||||||
SRC_ADB += g-io.adb \
|
SRC_ADB += \
|
||||||
|
g-io.adb \
|
||||||
a-except.adb \
|
a-except.adb \
|
||||||
a-tags.adb \
|
a-tags.adb \
|
||||||
a-finali.adb \
|
a-finali.adb \
|
||||||
@@ -94,6 +96,7 @@ vpath platform.% $(ADA_RUNTIME_LIB_DIR)
|
|||||||
vpath string_utils.% $(ADA_RUNTIME_LIB_DIR)
|
vpath string_utils.% $(ADA_RUNTIME_LIB_DIR)
|
||||||
vpath ss_utils.% $(ADA_RUNTIME_LIB_DIR)
|
vpath ss_utils.% $(ADA_RUNTIME_LIB_DIR)
|
||||||
vpath a-except.adb $(ADA_RUNTIME_DIR)
|
vpath a-except.adb $(ADA_RUNTIME_DIR)
|
||||||
|
vpath s-osprim.adb $(ADA_RUNTIME_DIR)
|
||||||
|
|
||||||
vpath %.c $(ADA_RUNTIME_PLATFORM_DIR)
|
vpath %.c $(ADA_RUNTIME_PLATFORM_DIR)
|
||||||
vpath %.ads $(ADA_RTS_SOURCE)
|
vpath %.ads $(ADA_RTS_SOURCE)
|
||||||
|
|||||||
2
lib/mk/libsparkcryptofat.mk
Normal file
2
lib/mk/libsparkcryptofat.mk
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
LSC_RUNTIME := ada
|
||||||
|
include $(call select_from_repositories,lib/mk/libsparkcrypto.inc)
|
||||||
848
lib/symbols/ada
848
lib/symbols/ada
File diff suppressed because it is too large
Load Diff
326
lib/symbols/libsparkcryptofat
Normal file
326
lib/symbols/libsparkcryptofat
Normal file
@@ -0,0 +1,326 @@
|
|||||||
|
lsc__aes__cbc__decrypt T
|
||||||
|
lsc__aes__cbc_E D 2
|
||||||
|
lsc__aes__cbc__encrypt T
|
||||||
|
lsc__aes__dec_key T
|
||||||
|
lsc__aes__decrypt T
|
||||||
|
lsc__aes_E D 2
|
||||||
|
lsc__aes__enc_key T
|
||||||
|
lsc__aes__encrypt T
|
||||||
|
lsc__aes_generic__cbc_E D 2
|
||||||
|
lsc__aes_generic__dec_key_typeIP T
|
||||||
|
lsc__aes_generic_E D 2
|
||||||
|
lsc__aes_generic__enc_key_typeIP T
|
||||||
|
lsc__aes_generic__key_bytes T
|
||||||
|
lsc__aes_generic__keylen_typeN R 4
|
||||||
|
lsc__aes_generic__keylen_typeS R 16
|
||||||
|
lsc__aes__l128 R 1
|
||||||
|
lsc__aes__l192 R 1
|
||||||
|
lsc__aes__l256 R 1
|
||||||
|
lsc_E D 2
|
||||||
|
lsc__internal__aes__aes_dec_contextIP T
|
||||||
|
lsc__internal__aes__aes_enc_contextIP T
|
||||||
|
lsc__internal__aes__cbc__decrypt T
|
||||||
|
lsc__internal__aes__cbc_E D 2
|
||||||
|
lsc__internal__aes__cbc__encrypt T
|
||||||
|
lsc__internal__aes__create_aes128_dec_context T
|
||||||
|
lsc__internal__aes__create_aes128_enc_context T
|
||||||
|
lsc__internal__aes__create_aes192_dec_context T
|
||||||
|
lsc__internal__aes__create_aes192_enc_context T
|
||||||
|
lsc__internal__aes__create_aes256_dec_context T
|
||||||
|
lsc__internal__aes__create_aes256_enc_context T
|
||||||
|
lsc__internal__aes__decrypt T
|
||||||
|
lsc__internal__aes_E D 2
|
||||||
|
lsc__internal__aes__encrypt T
|
||||||
|
lsc__internal__aes__key_typeIP T
|
||||||
|
lsc__internal__aes__message_typeIP T
|
||||||
|
lsc__internal__aes__nb R 1
|
||||||
|
lsc__internal__aes__null_aes128_key R 16
|
||||||
|
lsc__internal__aes__null_aes192_key R 24
|
||||||
|
lsc__internal__aes__null_aes256_key R 32
|
||||||
|
lsc__internal__aes__null_block R 16
|
||||||
|
lsc__internal__aes__null_schedule R 240
|
||||||
|
lsc__internal__aes__print_E D 2
|
||||||
|
lsc__internal__aes__tables_E D 2
|
||||||
|
lsc__internal__aes__tables__rcon R 120
|
||||||
|
lsc__internal__aes__tables__si R 256
|
||||||
|
lsc__internal__aes__tables__s R 256
|
||||||
|
lsc__internal__aes__tables__t1 R 1024
|
||||||
|
lsc__internal__aes__tables__t2 R 1024
|
||||||
|
lsc__internal__aes__tables__t3 R 1024
|
||||||
|
lsc__internal__aes__tables__t4 R 1024
|
||||||
|
lsc__internal__aes__tables__t5 R 1024
|
||||||
|
lsc__internal__aes__tables__t6 R 1024
|
||||||
|
lsc__internal__aes__tables__t7 R 1024
|
||||||
|
lsc__internal__aes__tables__t8 R 1024
|
||||||
|
lsc__internal__aes__tables__Trcon_typeBIP T
|
||||||
|
lsc__internal__aes__tables__Tsbox_typeBIP T
|
||||||
|
lsc__internal__aes__tables__Ttable_typeBIP T
|
||||||
|
lsc__internal__aes__tables__u1 R 1024
|
||||||
|
lsc__internal__aes__tables__u2 R 1024
|
||||||
|
lsc__internal__aes__tables__u3 R 1024
|
||||||
|
lsc__internal__aes__tables__u4 R 1024
|
||||||
|
lsc__internal__bignum__add_inplace T
|
||||||
|
lsc__internal__bignum__add T
|
||||||
|
lsc__internal__bignum__big_intIP T
|
||||||
|
lsc__internal__bignum__copy T
|
||||||
|
lsc__internal__bignum__double_inplace T
|
||||||
|
lsc__internal__bignum_E D 2
|
||||||
|
lsc__internal__bignum__equal T
|
||||||
|
lsc__internal__bignum__initialize T
|
||||||
|
lsc__internal__bignum__is_zero T
|
||||||
|
lsc__internal__bignum__less T
|
||||||
|
lsc__internal__bignum__mod_add_inplace T
|
||||||
|
lsc__internal__bignum__mod_add T
|
||||||
|
lsc__internal__bignum__mod_sub_inplace T
|
||||||
|
lsc__internal__bignum__mod_sub T
|
||||||
|
lsc__internal__bignum__mont_exp T
|
||||||
|
lsc__internal__bignum__mont_exp_window T
|
||||||
|
lsc__internal__bignum__mont_mult T
|
||||||
|
lsc__internal__bignum__native_to_be T
|
||||||
|
lsc__internal__bignum__shr_inplace T
|
||||||
|
lsc__internal__bignum__size_square_mod T
|
||||||
|
lsc__internal__bignum__sub_inplace T
|
||||||
|
lsc__internal__bignum__sub T
|
||||||
|
lsc__internal__bignum__word_inverse T
|
||||||
|
lsc__internal__byteorder32__be_to_native T
|
||||||
|
lsc__internal__byteorder32_E D 2
|
||||||
|
lsc__internal__byteorder32__le_to_native T
|
||||||
|
lsc__internal__byteorder32__native_to_be T
|
||||||
|
lsc__internal__byteorder32__native_to_le T
|
||||||
|
lsc__internal__byteorder64__be_to_native T
|
||||||
|
lsc__internal__byteorder64_E D 2
|
||||||
|
lsc__internal__byteorder64__le_to_native T
|
||||||
|
lsc__internal__byteorder64__native_to_be T
|
||||||
|
lsc__internal__byteorder64__native_to_le T
|
||||||
|
lsc__internal__byteswap32_E D 2
|
||||||
|
lsc__internal__byteswap32__swap T
|
||||||
|
lsc__internal__byteswap64_E D 2
|
||||||
|
lsc__internal__byteswap64__swap T
|
||||||
|
lsc__internal__convert_E D 2
|
||||||
|
lsc__internal__convert_hash_E D 2
|
||||||
|
lsc__internal__convert_hmac_E D 2
|
||||||
|
lsc__internal__debug_E D 2
|
||||||
|
lsc__internal__ec__A3s B 80
|
||||||
|
lsc__internal__ec_E D 2
|
||||||
|
lsc__internal__ec___elabs T
|
||||||
|
lsc__internal__ec__invert T
|
||||||
|
lsc__internal__ec__J4s D 4
|
||||||
|
lsc__internal__ec__make_affine T
|
||||||
|
lsc__internal__ec__on_curve T
|
||||||
|
lsc__internal__ec__one B 80
|
||||||
|
lsc__internal__ec__point_add T
|
||||||
|
lsc__internal__ec__point_double T
|
||||||
|
lsc__internal__ec__point_mult T
|
||||||
|
lsc__internal__ec_signature_E D 2
|
||||||
|
lsc__internal__ec_signature__signature_typeN R 4
|
||||||
|
lsc__internal__ec_signature__signature_typeS R 16
|
||||||
|
lsc__internal__ec_signature__sign T
|
||||||
|
lsc__internal__ec_signature__verify T
|
||||||
|
lsc__internal__ec__two_point_mult T
|
||||||
|
lsc__internal__ec__uncompress_point T
|
||||||
|
lsc__internal_E D 2
|
||||||
|
lsc__internal__hmac_ripemd160__authenticate T
|
||||||
|
lsc__internal__hmac_ripemd160__context_finalize_outer T
|
||||||
|
lsc__internal__hmac_ripemd160__context_finalize T
|
||||||
|
lsc__internal__hmac_ripemd160__context_init T
|
||||||
|
lsc__internal__hmac_ripemd160__context_typeIP T
|
||||||
|
lsc__internal__hmac_ripemd160__context_update T
|
||||||
|
lsc__internal__hmac_ripemd160_E D 2
|
||||||
|
lsc__internal__hmac_ripemd160__get_auth T
|
||||||
|
lsc__internal__hmac_ripemd160__ipad R 64
|
||||||
|
lsc__internal__hmac_ripemd160__opad R 64
|
||||||
|
lsc__internal__hmac_sha1__authenticate T
|
||||||
|
lsc__internal__hmac_sha1__context_finalize_outer T
|
||||||
|
lsc__internal__hmac_sha1__context_finalize T
|
||||||
|
lsc__internal__hmac_sha1__context_init T
|
||||||
|
lsc__internal__hmac_sha1__context_typeIP T
|
||||||
|
lsc__internal__hmac_sha1__context_update T
|
||||||
|
lsc__internal__hmac_sha1_E D 2
|
||||||
|
lsc__internal__hmac_sha1__get_auth T
|
||||||
|
lsc__internal__hmac_sha1__ipad R 64
|
||||||
|
lsc__internal__hmac_sha1__opad R 64
|
||||||
|
lsc__internal__hmac_sha256__authenticate T
|
||||||
|
lsc__internal__hmac_sha256__context_finalize T
|
||||||
|
lsc__internal__hmac_sha256__context_init T
|
||||||
|
lsc__internal__hmac_sha256__context_typeIP T
|
||||||
|
lsc__internal__hmac_sha256__context_update T
|
||||||
|
lsc__internal__hmac_sha256_E D 2
|
||||||
|
lsc__internal__hmac_sha256__get_auth T
|
||||||
|
lsc__internal__hmac_sha256__get_prf T
|
||||||
|
lsc__internal__hmac_sha256__pseudorandom T
|
||||||
|
lsc__internal__hmac_sha384__authenticate T
|
||||||
|
lsc__internal__hmac_sha384__context_finalize T
|
||||||
|
lsc__internal__hmac_sha384__context_init T
|
||||||
|
lsc__internal__hmac_sha384__context_typeIP T
|
||||||
|
lsc__internal__hmac_sha384__context_update T
|
||||||
|
lsc__internal__hmac_sha384_E D 2
|
||||||
|
lsc__internal__hmac_sha384__get_auth T
|
||||||
|
lsc__internal__hmac_sha384__get_prf T
|
||||||
|
lsc__internal__hmac_sha384__null_auth R 24
|
||||||
|
lsc__internal__hmac_sha384__pseudorandom T
|
||||||
|
lsc__internal__hmac_sha512__authenticate T
|
||||||
|
lsc__internal__hmac_sha512__context_finalize T
|
||||||
|
lsc__internal__hmac_sha512__context_init T
|
||||||
|
lsc__internal__hmac_sha512__context_typeIP T
|
||||||
|
lsc__internal__hmac_sha512__context_update T
|
||||||
|
lsc__internal__hmac_sha512_E D 2
|
||||||
|
lsc__internal__hmac_sha512__get_auth T
|
||||||
|
lsc__internal__hmac_sha512__get_prf T
|
||||||
|
lsc__internal__hmac_sha512__null_auth R 32
|
||||||
|
lsc__internal__hmac_sha512__pseudorandom T
|
||||||
|
lsc__internal__io_E D 2
|
||||||
|
lsc__internal__io__end_of_stream T
|
||||||
|
lsc__internal__io__new_line T
|
||||||
|
lsc__internal__io__print_byte T
|
||||||
|
lsc__internal__io__print_index T
|
||||||
|
lsc__internal__io__print_natural T
|
||||||
|
lsc__internal__io__print_word32_array T
|
||||||
|
lsc__internal__io__print_word32 T
|
||||||
|
lsc__internal__io__print_word64_array T
|
||||||
|
lsc__internal__io__print_word64 T
|
||||||
|
lsc__internal__io__put_line T
|
||||||
|
lsc__internal__io__put T
|
||||||
|
lsc__internal__io__read_byte T
|
||||||
|
lsc__internal__math_int_E D 2
|
||||||
|
lsc__internal__ops32__block_copy T
|
||||||
|
lsc__internal__ops32__block_xor T
|
||||||
|
lsc__internal__ops32__byte0 T
|
||||||
|
lsc__internal__ops32__byte1 T
|
||||||
|
lsc__internal__ops32__byte2 T
|
||||||
|
lsc__internal__ops32__byte3 T
|
||||||
|
lsc__internal__ops32__bytes_to_word T
|
||||||
|
lsc__internal__ops32__bytex T
|
||||||
|
lsc__internal__ops32_E D 2
|
||||||
|
lsc__internal__ops32__xor2 T
|
||||||
|
lsc__internal__ops32__xor3 T
|
||||||
|
lsc__internal__ops32__xor4 T
|
||||||
|
lsc__internal__ops32__xor5 T
|
||||||
|
lsc__internal__ops64__block_copy T
|
||||||
|
lsc__internal__ops64__block_xor T
|
||||||
|
lsc__internal__ops64__bytes_to_word T
|
||||||
|
lsc__internal__ops64_E D 2
|
||||||
|
lsc__internal__ops64__xor2 T
|
||||||
|
lsc__internal__pad32__block_terminate T
|
||||||
|
lsc__internal__pad32_E D 2
|
||||||
|
lsc__internal__pad64__block_terminate T
|
||||||
|
lsc__internal__pad64_E D 2
|
||||||
|
lsc__internal__ripemd160__context_finalize T
|
||||||
|
lsc__internal__ripemd160__context_init T
|
||||||
|
lsc__internal__ripemd160__context_typeIP T
|
||||||
|
lsc__internal__ripemd160__context_update T
|
||||||
|
lsc__internal__ripemd160__data_lengthIP T
|
||||||
|
lsc__internal__ripemd160_E D 2
|
||||||
|
lsc__internal__ripemd160__get_hash T
|
||||||
|
lsc__internal__ripemd160__hash_context T
|
||||||
|
lsc__internal__ripemd160__hash T
|
||||||
|
lsc__internal__ripemd160__message_typeIP T
|
||||||
|
lsc__internal__ripemd160__null_block R 64
|
||||||
|
lsc__internal__ripemd160__null_hash R 20
|
||||||
|
lsc__internal__ripemd160__print_E D 2
|
||||||
|
lsc__internal__sha1__add T
|
||||||
|
lsc__internal__sha1__ch T
|
||||||
|
lsc__internal__sha1__context_finalize T
|
||||||
|
lsc__internal__sha1__context_init T
|
||||||
|
lsc__internal__sha1__context_typeIP T
|
||||||
|
lsc__internal__sha1__context_update T
|
||||||
|
lsc__internal__sha1__data_lengthIP T
|
||||||
|
lsc__internal__sha1_E D 2
|
||||||
|
lsc__internal__sha1__get_hash T
|
||||||
|
lsc__internal__sha1__hash_context T
|
||||||
|
lsc__internal__sha1__hash T
|
||||||
|
lsc__internal__sha1__init_data_length T
|
||||||
|
lsc__internal__sha1__k1 R 4
|
||||||
|
lsc__internal__sha1__k2 R 4
|
||||||
|
lsc__internal__sha1__k3 R 4
|
||||||
|
lsc__internal__sha1__k4 R 4
|
||||||
|
lsc__internal__sha1__maj T
|
||||||
|
lsc__internal__sha1__message_typeIP T
|
||||||
|
lsc__internal__sha1__null_block R 64
|
||||||
|
lsc__internal__sha1__null_hash R 20
|
||||||
|
lsc__internal__sha1__null_schedule R 320
|
||||||
|
lsc__internal__sha256__add T
|
||||||
|
lsc__internal__sha256__cap_sigma_0_256 T
|
||||||
|
lsc__internal__sha256__cap_sigma_1_256 T
|
||||||
|
lsc__internal__sha256__ch T
|
||||||
|
lsc__internal__sha256__context_finalize T
|
||||||
|
lsc__internal__sha256__context_typeIP T
|
||||||
|
lsc__internal__sha256__context_update_internal T
|
||||||
|
lsc__internal__sha256__context_update T
|
||||||
|
lsc__internal__sha256__data_lengthIP T
|
||||||
|
lsc__internal__sha256_E D 2
|
||||||
|
lsc__internal__sha256__hash_context T
|
||||||
|
lsc__internal__sha256__hash T
|
||||||
|
lsc__internal__sha256__init_data_length T
|
||||||
|
lsc__internal__sha256__maj T
|
||||||
|
lsc__internal__sha256__message_typeIP T
|
||||||
|
lsc__internal__sha256__null_block R 64
|
||||||
|
lsc__internal__sha256__null_schedule R 256
|
||||||
|
lsc__internal__sha256__sha256_context_init T
|
||||||
|
lsc__internal__sha256__sha256_get_hash T
|
||||||
|
lsc__internal__sha256__sha256_null_hash R 32
|
||||||
|
lsc__internal__sha256__sigma_0_256 T
|
||||||
|
lsc__internal__sha256__sigma_1_256 T
|
||||||
|
lsc__internal__sha256__tables_E D 2
|
||||||
|
lsc__internal__sha256__tables__k R 256
|
||||||
|
lsc__internal__sha512__add T
|
||||||
|
lsc__internal__sha512__cap_sigma_0_512 T
|
||||||
|
lsc__internal__sha512__cap_sigma_1_512 T
|
||||||
|
lsc__internal__sha512__ch T
|
||||||
|
lsc__internal__sha512__context_finalize T
|
||||||
|
lsc__internal__sha512__context_typeIP T
|
||||||
|
lsc__internal__sha512__context_update_internal T
|
||||||
|
lsc__internal__sha512__context_update T
|
||||||
|
lsc__internal__sha512__data_lengthIP T
|
||||||
|
lsc__internal__sha512_E D 2
|
||||||
|
lsc__internal__sha512__hash_context T
|
||||||
|
lsc__internal__sha512__init_data_length T
|
||||||
|
lsc__internal__sha512__maj T
|
||||||
|
lsc__internal__sha512__message_typeIP T
|
||||||
|
lsc__internal__sha512__null_block R 128
|
||||||
|
lsc__internal__sha512__null_schedule R 640
|
||||||
|
lsc__internal__sha512__null_sha384_hash R 48
|
||||||
|
lsc__internal__sha512__null_sha512_hash R 64
|
||||||
|
lsc__internal__sha512__sha384_context_init T
|
||||||
|
lsc__internal__sha512__sha384_get_hash T
|
||||||
|
lsc__internal__sha512__sha384_hash T
|
||||||
|
lsc__internal__sha512__sha512_context_init T
|
||||||
|
lsc__internal__sha512__sha512_get_hash T
|
||||||
|
lsc__internal__sha512__sha512_hash T
|
||||||
|
lsc__internal__sha512__sigma_0_512 T
|
||||||
|
lsc__internal__sha512__sigma_1_512 T
|
||||||
|
lsc__internal__sha512__tables_E D 2
|
||||||
|
lsc__internal__sha512__tables__k R 640
|
||||||
|
lsc__internal__types__byte_array32_to_word32 T
|
||||||
|
lsc__internal__types__byte_array64_to_word64 T
|
||||||
|
lsc__internal__types_E D 2
|
||||||
|
lsc__internal__types__Tbyte_array32_typeBIP T
|
||||||
|
lsc__internal__types__Tbyte_array64_typeBIP T
|
||||||
|
lsc__internal__types__word32_array_typeIP T
|
||||||
|
lsc__internal__types__word32_to_byte_array32 T
|
||||||
|
lsc__internal__types__word64_array_typeIP T
|
||||||
|
lsc__internal__types__word64_to_byte_array64 T
|
||||||
|
lsc__ops_generic_E D 2
|
||||||
|
lsc__ripemd160_E D 2
|
||||||
|
lsc__ripemd160_generic_E D 2
|
||||||
|
lsc__ripemd160__hash T
|
||||||
|
lsc__ripemd160__hmac_E D 2
|
||||||
|
lsc__ripemd160__hmac_generic_E D 2
|
||||||
|
lsc__ripemd160__hmac__hmac T
|
||||||
|
lsc__sha1_E D 2
|
||||||
|
lsc__sha1_generic_E D 2
|
||||||
|
lsc__sha1__hash T
|
||||||
|
lsc__sha1__hmac_E D 2
|
||||||
|
lsc__sha1__hmac_generic_E D 2
|
||||||
|
lsc__sha1__hmac__hmac T
|
||||||
|
lsc__sha2_E D 2
|
||||||
|
lsc__sha2_generic_E D 2
|
||||||
|
lsc__sha2__hash_sha256 T
|
||||||
|
lsc__sha2__hash_sha384 T
|
||||||
|
lsc__sha2__hash_sha512 T
|
||||||
|
lsc__sha2__hmac_E D 2
|
||||||
|
lsc__sha2__hmac_generic_E D 2
|
||||||
|
lsc__sha2__hmac__hmac_sha256 T
|
||||||
|
lsc__sha2__hmac__hmac_sha384 T
|
||||||
|
lsc__sha2__hmac__hmac_sha512 T
|
||||||
|
lsc__types__bytesIP T
|
||||||
|
lsc__types_E D 2
|
||||||
72
run/test-libsparkcrypto.run
Normal file
72
run/test-libsparkcrypto.run
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
set build_components {
|
||||||
|
core init server/log_terminal
|
||||||
|
test/libsparkcrypto
|
||||||
|
lib/vfs/jitterentropy
|
||||||
|
drivers/rtc
|
||||||
|
timer
|
||||||
|
}
|
||||||
|
|
||||||
|
build $build_components
|
||||||
|
create_boot_directory
|
||||||
|
|
||||||
|
install_config {
|
||||||
|
<config>
|
||||||
|
<parent-provides>
|
||||||
|
<service name="LOG"/>
|
||||||
|
<service name="PD"/>
|
||||||
|
<service name="CPU"/>
|
||||||
|
<service name="ROM"/>
|
||||||
|
<service name="IO_PORT"/>
|
||||||
|
</parent-provides>
|
||||||
|
<default-route>
|
||||||
|
<any-service> <parent/> </any-service>
|
||||||
|
</default-route>
|
||||||
|
<default caps="100"/>
|
||||||
|
|
||||||
|
<start name="timer">
|
||||||
|
<resource name="RAM" quantum="1M"/>
|
||||||
|
<provides> <service name="Timer"/> </provides>
|
||||||
|
</start>
|
||||||
|
|
||||||
|
<start name="rtc_drv">
|
||||||
|
<resource name="RAM" quantum="1M"/>
|
||||||
|
<provides> <service name="Rtc"/> </provides>
|
||||||
|
</start>
|
||||||
|
|
||||||
|
<start name="terminal">
|
||||||
|
<binary name="log_terminal"/>
|
||||||
|
<resource name="RAM" quantum="2M"/>
|
||||||
|
<provides><service name="Terminal"/></provides>
|
||||||
|
</start>
|
||||||
|
|
||||||
|
<start name="test-libsparkcrypto">
|
||||||
|
<resource name="RAM" quantum="100M"/>
|
||||||
|
<config>
|
||||||
|
<vfs>
|
||||||
|
<ram/>
|
||||||
|
<dir name="dev">
|
||||||
|
<jitterentropy name="random"/>
|
||||||
|
<log/>
|
||||||
|
<rtc/>
|
||||||
|
</dir>
|
||||||
|
</vfs>
|
||||||
|
<libc stdout="/dev/log" stderr="/dev/log" rtc="/dev/rtc" />
|
||||||
|
</config>
|
||||||
|
<route>
|
||||||
|
<service name="Terminal"> <child name="terminal"/> </service>
|
||||||
|
<any-service> <parent/> <any-child/> </any-service>
|
||||||
|
</route>
|
||||||
|
</start>
|
||||||
|
</config>
|
||||||
|
}
|
||||||
|
|
||||||
|
build_boot_image {
|
||||||
|
core init test-libsparkcrypto log_terminal rtc_drv timer
|
||||||
|
libc.lib.so vfs.lib.so ld.lib.so ada.lib.so
|
||||||
|
libcrypto.lib.so libaunit.lib.so libsparkcryptofat.lib.so
|
||||||
|
vfs_jitterentropy.lib.so
|
||||||
|
}
|
||||||
|
|
||||||
|
append qemu_args " -nographic "
|
||||||
|
|
||||||
|
run_genode_until "child \"test-libsparkcrypto\" exited with exit value 0" 200
|
||||||
64
src/test/libsparkcrypto/lsc_internal_benchmark.adb
Normal file
64
src/test/libsparkcrypto/lsc_internal_benchmark.adb
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
-------------------------------------------------------------------------------
|
||||||
|
-- This file is part of libsparkcrypto.
|
||||||
|
--
|
||||||
|
-- Copyright (C) 2019, Componolit GmbH
|
||||||
|
-- All rights reserved.
|
||||||
|
--
|
||||||
|
-- Redistribution and use in source and binary forms, with or without
|
||||||
|
-- modification, are permitted provided that the following conditions are met:
|
||||||
|
--
|
||||||
|
-- * Redistributions of source code must retain the above copyright notice,
|
||||||
|
-- this list of conditions and the following disclaimer.
|
||||||
|
--
|
||||||
|
-- * Redistributions in binary form must reproduce the above copyright
|
||||||
|
-- notice, this list of conditions and the following disclaimer in the
|
||||||
|
-- documentation and/or other materials provided with the distribution.
|
||||||
|
--
|
||||||
|
-- * Neither the name of the nor the names of its contributors may be used
|
||||||
|
-- to endorse or promote products derived from this software without
|
||||||
|
-- specific prior written permission.
|
||||||
|
--
|
||||||
|
-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
-- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
-- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
|
||||||
|
-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||||
|
-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||||
|
-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||||
|
-- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||||
|
-- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
-- POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
pragma Style_Checks ("-s");
|
||||||
|
|
||||||
|
pragma Warnings (Off, "formal parameter ""T"" is not referenced");
|
||||||
|
|
||||||
|
package body LSC_Internal_Benchmark
|
||||||
|
is
|
||||||
|
function Routine_Name (T : Test_Case) return Message_String
|
||||||
|
is
|
||||||
|
begin
|
||||||
|
return Format ("Void");
|
||||||
|
end Routine_Name;
|
||||||
|
|
||||||
|
---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
procedure Register_Tests (T : in out Test_Case) is
|
||||||
|
package Registration is new
|
||||||
|
AUnit.Test_Cases.Specific_Test_Case_Registration (Test_Case);
|
||||||
|
use Registration;
|
||||||
|
begin
|
||||||
|
null;
|
||||||
|
end Register_Tests;
|
||||||
|
|
||||||
|
---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
function Name (T : Test_Case) return Test_String is
|
||||||
|
begin
|
||||||
|
pragma Unreferenced (T);
|
||||||
|
return Format ("Benchmark dummy");
|
||||||
|
end Name;
|
||||||
|
|
||||||
|
end LSC_Internal_Benchmark;
|
||||||
14
src/test/libsparkcrypto/startup.cc
Normal file
14
src/test/libsparkcrypto/startup.cc
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
/*
|
||||||
|
* \brief Startup code for Ada main program
|
||||||
|
* \author Alexander Senier
|
||||||
|
* \date 2019-01-03
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <ada/component.h>
|
||||||
|
|
||||||
|
extern "C" void _ada_main(void);
|
||||||
|
|
||||||
|
void Ada::Component::main()
|
||||||
|
{
|
||||||
|
_ada_main();
|
||||||
|
}
|
||||||
44
src/test/libsparkcrypto/target.mk
Normal file
44
src/test/libsparkcrypto/target.mk
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
TARGET = test-libsparkcrypto
|
||||||
|
|
||||||
|
SRC_ADB = \
|
||||||
|
lsc_internal_benchmark.adb \
|
||||||
|
lsc_internal_suite.adb \
|
||||||
|
lsc_internal_test_aes.adb \
|
||||||
|
lsc_internal_test_aes_cbc.adb \
|
||||||
|
lsc_internal_test_bignum.adb \
|
||||||
|
lsc_internal_test_ec.adb \
|
||||||
|
lsc_internal_test_hmac.adb \
|
||||||
|
lsc_internal_test_ripemd160.adb \
|
||||||
|
lsc_internal_test_sha1.adb \
|
||||||
|
lsc_internal_test_sha2.adb \
|
||||||
|
lsc_internal_test_shadow.adb \
|
||||||
|
lsc_suite.adb \
|
||||||
|
lsc_test_aes.adb \
|
||||||
|
lsc_test_aes_cbc.adb \
|
||||||
|
lsc_test_hmac_ripemd160.adb \
|
||||||
|
lsc_test_hmac_sha1.adb \
|
||||||
|
lsc_test_hmac_sha2.adb \
|
||||||
|
lsc_test_ripemd160.adb \
|
||||||
|
lsc_test_sha1.adb \
|
||||||
|
lsc_test_sha2.adb \
|
||||||
|
main.adb \
|
||||||
|
openssl.adb \
|
||||||
|
tests.adb \
|
||||||
|
util.adb \
|
||||||
|
util_tests.adb
|
||||||
|
|
||||||
|
SRC_CC = startup.cc
|
||||||
|
SRC_C = libglue.c
|
||||||
|
OPT_C = -DDEBUG
|
||||||
|
|
||||||
|
LIBS = ada libaunit libsparkcryptofat libcrypto libc
|
||||||
|
|
||||||
|
LSC_TESTS_DIR := $(call select_from_ports,libsparkcrypto)/libsparkcrypto/tests
|
||||||
|
|
||||||
|
INC_DIR += $(LSC_TESTS_DIR)
|
||||||
|
CUSTOM_ADA_OPT += -gnatec=$(call select_from_ports,libsparkcrypto)/libsparkcrypto/build/pragmas.adc
|
||||||
|
|
||||||
|
vpath lsc_internal_benchmark.adb $(PRG_DIR)
|
||||||
|
vpath %.adb $(LSC_TESTS_DIR)
|
||||||
|
vpath %.ads $(LSC_TESTS_DIR)
|
||||||
|
vpath %.c $(LSC_TESTS_DIR)
|
||||||
Reference in New Issue
Block a user