mirror of https://github.com/wolfSSL/wolfssl.git
linuxkm/lkcapi_glue.c: update calls to scatterwalk_map() and scatterwalk_unmap() for linux commit 7450ebd29c (merged for Linux 6.15);
configure.ac: fix --disable-linuxkm-lkcapi-register; .wolfssl_known_macro_extras: fix order.pull/8667/head
parent
b38ab8a064
commit
57baae90f1
|
@ -569,9 +569,9 @@ WOLFSENTRY_H
|
|||
WOLFSENTRY_NO_JSON
|
||||
WOLFSSL_32BIT_MILLI_TIME
|
||||
WOLFSSL_AARCH64_PRIVILEGE_MODE
|
||||
WOLFSSL_AES_CTR_EXAMPLE
|
||||
WOLFSSL_AESNI_BY4
|
||||
WOLFSSL_AESNI_BY6
|
||||
WOLFSSL_AES_CTR_EXAMPLE
|
||||
WOLFSSL_AFTER_DATE_CLOCK_SKEW
|
||||
WOLFSSL_ALGO_HW_MUTEX
|
||||
WOLFSSL_ALLOW_CRIT_AIA
|
||||
|
|
|
@ -9364,9 +9364,9 @@ fi
|
|||
AC_ARG_ENABLE([linuxkm-lkcapi-register],
|
||||
[AS_HELP_STRING([--enable-linuxkm-lkcapi-register],[Register wolfCrypt implementations with the Linux Kernel Crypto API backplane. Possible values are "none", "all", "cbc(aes)", "cfb(aes)", "gcm(aes)", and "xts(aes)", or a comma-separate combination. (default: none)])],
|
||||
[ENABLED_LINUXKM_LKCAPI_REGISTER=$enableval],
|
||||
[ENABLED_LINUXKM_LKCAPI_REGISTER=none]
|
||||
[ENABLED_LINUXKM_LKCAPI_REGISTER=no]
|
||||
)
|
||||
if test "$ENABLED_LINUXKM_LKCAPI_REGISTER" != "none"
|
||||
if test "$ENABLED_LINUXKM_LKCAPI_REGISTER" != "no"
|
||||
then
|
||||
AM_CFLAGS="$AM_CFLAGS -DLINUXKM_LKCAPI_REGISTER"
|
||||
|
||||
|
|
|
@ -1145,7 +1145,12 @@ static int AesGcmCrypt_1(struct aead_request *req, int decrypt_p, int rfc4106_p)
|
|||
|
||||
if (req->src->length >= assoclen && req->src->length) {
|
||||
scatterwalk_start(&assocSgWalk, req->src);
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
|
||||
scatterwalk_map(&assocSgWalk);
|
||||
assoc = assocSgWalk.addr;
|
||||
#else
|
||||
assoc = scatterwalk_map(&assocSgWalk);
|
||||
#endif
|
||||
if (unlikely(IS_ERR(assoc))) {
|
||||
pr_err("%s: scatterwalk_map failed: %ld\n",
|
||||
crypto_tfm_alg_driver_name(crypto_aead_tfm(tfm)),
|
||||
|
@ -1177,8 +1182,13 @@ static int AesGcmCrypt_1(struct aead_request *req, int decrypt_p, int rfc4106_p)
|
|||
|
||||
if (assocmem)
|
||||
free(assocmem);
|
||||
else
|
||||
else {
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
|
||||
scatterwalk_unmap(&assocSgWalk);
|
||||
#else
|
||||
scatterwalk_unmap(assoc);
|
||||
#endif
|
||||
}
|
||||
|
||||
if (unlikely(err)) {
|
||||
pr_err("%s: %s failed: %d\n",
|
||||
|
@ -1328,7 +1338,12 @@ static int AesGcmCrypt_1(struct aead_request *req, int decrypt_p, int rfc4106_p)
|
|||
(req->dst->length >= req->assoclen + req->cryptlen))
|
||||
{
|
||||
scatterwalk_start(&in_walk, req->src);
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
|
||||
scatterwalk_map(&in_walk);
|
||||
in_map = in_walk.addr;
|
||||
#else
|
||||
in_map = scatterwalk_map(&in_walk);
|
||||
#endif
|
||||
if (unlikely(IS_ERR(in_map))) {
|
||||
pr_err("%s: scatterwalk_map failed: %ld\n",
|
||||
crypto_tfm_alg_driver_name(crypto_aead_tfm(tfm)),
|
||||
|
@ -1339,7 +1354,12 @@ static int AesGcmCrypt_1(struct aead_request *req, int decrypt_p, int rfc4106_p)
|
|||
in_text = in_map + req->assoclen;
|
||||
|
||||
scatterwalk_start(&out_walk, req->dst);
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
|
||||
scatterwalk_map(&out_walk);
|
||||
out_map = out_walk.addr;
|
||||
#else
|
||||
out_map = scatterwalk_map(&out_walk);
|
||||
#endif
|
||||
if (unlikely(IS_ERR(out_map))) {
|
||||
pr_err("%s: scatterwalk_map failed: %ld\n",
|
||||
crypto_tfm_alg_driver_name(crypto_aead_tfm(tfm)),
|
||||
|
@ -1425,10 +1445,20 @@ out:
|
|||
free(sg_buf);
|
||||
}
|
||||
else {
|
||||
if (in_map)
|
||||
if (in_map) {
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
|
||||
scatterwalk_unmap(&in_walk);
|
||||
#else
|
||||
scatterwalk_unmap(in_map);
|
||||
if (out_map)
|
||||
#endif
|
||||
}
|
||||
if (out_map) {
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
|
||||
scatterwalk_unmap(&out_walk);
|
||||
#else
|
||||
scatterwalk_unmap(out_map);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
km_AesFree(&aes_copy);
|
||||
|
|
Loading…
Reference in New Issue