3 LIBSODIUM=${SRCTOP}/sys/contrib/libsodium/src/libsodium
5 .PATH: ${SRCTOP}/sys/opencrypto
6 .PATH: ${SRCTOP}/sys/crypto
7 .PATH: ${SRCTOP}/sys/crypto/blowfish
8 .PATH: ${SRCTOP}/sys/crypto/camellia
9 .PATH: ${SRCTOP}/sys/crypto/des
10 .PATH: ${SRCTOP}/sys/crypto/rijndael
11 .PATH: ${SRCTOP}/sys/crypto/sha2
12 .PATH: ${SRCTOP}/sys/crypto/siphash
13 .PATH: ${SRCTOP}/sys/crypto/skein
14 .PATH: ${SRCTOP}/sys/crypto/blake2
15 .PATH: ${SRCTOP}/sys/crypto/chacha20
16 .PATH: ${SRCTOP}/sys/contrib/libb2
17 .PATH: ${LIBSODIUM}/crypto_onetimeauth/poly1305
18 .PATH: ${LIBSODIUM}/crypto_onetimeauth/poly1305/donna
19 .PATH: ${LIBSODIUM}/crypto_verify/sodium
20 .PATH: ${SRCTOP}/sys/crypto/libsodium
23 SRCS = crypto.c cryptodev_if.c
24 SRCS += criov.c cryptosoft.c xform.c
25 SRCS += cast.c cryptodeflate.c rmd160.c rijndael-alg-fst.c rijndael-api.c rijndael-api-fst.c
26 CFLAGS.cryptodeflate.c += ${ZLIB_CFLAGS}
27 SRCS += skipjack.c bf_enc.c bf_ecb.c bf_skey.c
28 SRCS += camellia.c camellia-api.c
29 SRCS += des_ecb.c des_enc.c des_setkey.c
30 SRCS += sha1.c sha256c.c sha512c.c
31 SRCS += skein.c skein_block.c
32 # unroll the 256 and 512 loops, half unroll the 1024
33 CFLAGS+= -DSKEIN_LOOP=995
34 .if exists(${MACHINE_ARCH}/skein_block_asm.s)
35 .PATH: ${SRCTOP}/sys/crypto/skein/${MACHINE_ARCH}
36 SRCS += skein_block_asm.s
37 CFLAGS += -DSKEIN_ASM -DSKEIN_USE_ASM=1792 # list of block functions to replace with assembly: 256+512+1024 = 1792
38 ACFLAGS += -DELF -Wa,--noexecstack
39 # Fully unroll all loops in the assembly optimized version
40 AFLAGS+= --defsym SKEIN_LOOP=0
43 SRCS += gmac.c gfmult.c
47 CFLAGS.blake2b-ref.c += -I${SRCTOP}/sys/crypto/blake2 -DSUFFIX=_ref
48 CFLAGS.blake2s-ref.c += -I${SRCTOP}/sys/crypto/blake2 -DSUFFIX=_ref
49 CFLAGS.blake2-sw.c += -I${SRCTOP}/sys/crypto/blake2
50 CWARNFLAGS.blake2b-ref.c += -Wno-cast-qual -Wno-unused-function
51 CWARNFLAGS.blake2s-ref.c += -Wno-cast-qual -Wno-unused-function
55 LIBSODIUM_INC=${LIBSODIUM}/include
56 LIBSODIUM_COMPAT=${SRCTOP}/sys/crypto/libsodium
57 SRCS += xform_poly1305.c
58 CFLAGS.xform_poly1305.c += -I${LIBSODIUM_INC} -I${LIBSODIUM_COMPAT}
59 SRCS += onetimeauth_poly1305.c
60 CFLAGS.onetimeauth_poly1305.c += -I${LIBSODIUM_INC}/sodium -I${LIBSODIUM_COMPAT}
61 SRCS += poly1305_donna.c
62 CFLAGS.poly1305_donna.c += -I${LIBSODIUM_INC}/sodium -I${LIBSODIUM_COMPAT}
64 CFLAGS.verify.c += -I${LIBSODIUM_INC}/sodium -I${LIBSODIUM_COMPAT}
66 CFLAGS.randombytes.c += -I${LIBSODIUM_INC} -I${LIBSODIUM_COMPAT}
68 CFLAGS.utils.c += -I${LIBSODIUM_INC} -I${LIBSODIUM_COMPAT}
70 SRCS += opt_param.h cryptodev_if.h bus_if.h device_if.h
73 SRCS += xform_cbc_mac.c
75 .include <bsd.kmod.mk>