2014-12-12 19:56:36 +00:00
|
|
|
|
2016-02-03 00:34:23 +00:00
|
|
|
PACKAGE= tests
|
2016-05-04 23:20:53 +00:00
|
|
|
|
2014-12-12 19:56:36 +00:00
|
|
|
TESTSDIR= ${TESTSBASE}/sys/opencrypto
|
|
|
|
BINDIR= ${TESTSDIR}
|
|
|
|
|
Import Blake2 algorithms (blake2b, blake2s) from libb2
The upstream repository is on github BLAKE2/libb2. Files landed in
sys/contrib/libb2 are the unmodified upstream files, except for one
difference: secure_zero_memory's contents have been replaced with
explicit_bzero() only because the previous implementation broke powerpc
link. Preferential use of explicit_bzero() is in progress upstream, so
it is anticipated we will be able to drop this diff in the future.
sys/crypto/blake2 contains the source files needed to port libb2 to our
build system, a wrapped (limited) variant of the algorithm to match the API
of our auth_transform softcrypto abstraction, incorporation into the Open
Crypto Framework (OCF) cryptosoft(4) driver, as well as an x86 SSE/AVX
accelerated OCF driver, blake2(4).
Optimized variants of blake2 are compiled for a number of x86 machines
(anything from SSE2 to AVX + XOP). On those machines, FPU context will need
to be explicitly saved before using blake2(4)-provided algorithms directly.
Use via cryptodev / OCF saves FPU state automatically, and use via the
auth_transform softcrypto abstraction does not use FPU.
The intent of the OCF driver is mostly to enable testing in userspace via
/dev/crypto. ATF tests are added with published KAT test vectors to
validate correctness.
Reviewed by: jhb, markj
Obtained from: github BLAKE2/libb2
Differential Revision: https://reviews.freebsd.org/D14662
2018-03-21 16:18:14 +00:00
|
|
|
CFLAGS+= -I${SRCTOP}/tests
|
|
|
|
CFLAGS.blake2_test.c += -I${SRCTOP}/sys/opencrypto
|
|
|
|
CFLAGS.blake2_test.c += -I${SRCTOP}/sys/contrib/libb2
|
2018-08-17 00:32:00 +00:00
|
|
|
CFLAGS.poly1305_test.c += -I${SRCTOP}/sys/opencrypto
|
Import Blake2 algorithms (blake2b, blake2s) from libb2
The upstream repository is on github BLAKE2/libb2. Files landed in
sys/contrib/libb2 are the unmodified upstream files, except for one
difference: secure_zero_memory's contents have been replaced with
explicit_bzero() only because the previous implementation broke powerpc
link. Preferential use of explicit_bzero() is in progress upstream, so
it is anticipated we will be able to drop this diff in the future.
sys/crypto/blake2 contains the source files needed to port libb2 to our
build system, a wrapped (limited) variant of the algorithm to match the API
of our auth_transform softcrypto abstraction, incorporation into the Open
Crypto Framework (OCF) cryptosoft(4) driver, as well as an x86 SSE/AVX
accelerated OCF driver, blake2(4).
Optimized variants of blake2 are compiled for a number of x86 machines
(anything from SSE2 to AVX + XOP). On those machines, FPU context will need
to be explicitly saved before using blake2(4)-provided algorithms directly.
Use via cryptodev / OCF saves FPU state automatically, and use via the
auth_transform softcrypto abstraction does not use FPU.
The intent of the OCF driver is mostly to enable testing in userspace via
/dev/crypto. ATF tests are added with published KAT test vectors to
validate correctness.
Reviewed by: jhb, markj
Obtained from: github BLAKE2/libb2
Differential Revision: https://reviews.freebsd.org/D14662
2018-03-21 16:18:14 +00:00
|
|
|
|
2018-08-17 00:32:00 +00:00
|
|
|
ATF_TESTS_C+= blake2_test poly1305_test
|
Import Blake2 algorithms (blake2b, blake2s) from libb2
The upstream repository is on github BLAKE2/libb2. Files landed in
sys/contrib/libb2 are the unmodified upstream files, except for one
difference: secure_zero_memory's contents have been replaced with
explicit_bzero() only because the previous implementation broke powerpc
link. Preferential use of explicit_bzero() is in progress upstream, so
it is anticipated we will be able to drop this diff in the future.
sys/crypto/blake2 contains the source files needed to port libb2 to our
build system, a wrapped (limited) variant of the algorithm to match the API
of our auth_transform softcrypto abstraction, incorporation into the Open
Crypto Framework (OCF) cryptosoft(4) driver, as well as an x86 SSE/AVX
accelerated OCF driver, blake2(4).
Optimized variants of blake2 are compiled for a number of x86 machines
(anything from SSE2 to AVX + XOP). On those machines, FPU context will need
to be explicitly saved before using blake2(4)-provided algorithms directly.
Use via cryptodev / OCF saves FPU state automatically, and use via the
auth_transform softcrypto abstraction does not use FPU.
The intent of the OCF driver is mostly to enable testing in userspace via
/dev/crypto. ATF tests are added with published KAT test vectors to
validate correctness.
Reviewed by: jhb, markj
Obtained from: github BLAKE2/libb2
Differential Revision: https://reviews.freebsd.org/D14662
2018-03-21 16:18:14 +00:00
|
|
|
|
2019-05-10 00:03:32 +00:00
|
|
|
TAP_TESTS_SH+= runtests
|
2014-12-12 19:56:36 +00:00
|
|
|
|
2020-07-20 12:47:15 +00:00
|
|
|
TEST_METADATA.runtests+= required_programs="python3"
|
2017-06-01 19:46:48 +00:00
|
|
|
TEST_METADATA.runtests+= required_user="root"
|
|
|
|
|
2019-05-10 00:03:32 +00:00
|
|
|
PYMODULES= cryptodev.py cryptodevh.py cryptotest.py
|
2014-12-12 19:56:36 +00:00
|
|
|
|
2016-05-04 23:20:53 +00:00
|
|
|
${PACKAGE}FILES+= ${PYMODULES}
|
2014-12-12 19:56:36 +00:00
|
|
|
|
|
|
|
.include <bsd.test.mk>
|