mirror of
https://github.com/qosmio/nss-packages.git
synced 2025-12-16 16:21:53 +00:00
Kernel 6.1+ expects the driver to be registered with a unique name. Signed-off-by: Sean Khan <datapronix@protonmail.com>
127 lines
4.6 KiB
Diff
127 lines
4.6 KiB
Diff
--- a/cryptoapi/v2.0/nss_cryptoapi.c
|
|
+++ b/cryptoapi/v2.0/nss_cryptoapi.c
|
|
@@ -896,7 +896,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
*/
|
|
.base = {
|
|
.cra_name = "echainiv(authenc(hmac(sha1),cbc(aes)))",
|
|
- .cra_driver_name = "nss-hmac-sha1-cbc-aes",
|
|
+ .cra_driver_name = "nss-hmac-sha1-cbc-aes-echainiv",
|
|
.cra_priority = 10000,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = AES_BLOCK_SIZE,
|
|
@@ -961,7 +961,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
*/
|
|
.base = {
|
|
.cra_name = "echainiv(authenc(hmac(sha256),cbc(aes)))",
|
|
- .cra_driver_name = "nss-hmac-sha256-cbc-aes",
|
|
+ .cra_driver_name = "nss-hmac-sha256-cbc-aes-echainiv",
|
|
.cra_priority = 10000,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = AES_BLOCK_SIZE,
|
|
@@ -1070,7 +1070,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
*/
|
|
.base = {
|
|
.cra_name = "echainiv(authenc(hmac(sha384),cbc(aes)))",
|
|
- .cra_driver_name = "nss-hmac-sha384-cbc-aes",
|
|
+ .cra_driver_name = "nss-hmac-sha384-cbc-aes-echainiv",
|
|
.cra_priority = 10000,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = AES_BLOCK_SIZE,
|
|
@@ -1093,7 +1093,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
*/
|
|
.base = {
|
|
.cra_name = "echainiv(authenc(hmac(sha512),cbc(aes)))",
|
|
- .cra_driver_name = "nss-hmac-sha512-cbc-aes",
|
|
+ .cra_driver_name = "nss-hmac-sha512-cbc-aes-echainiv",
|
|
.cra_priority = 10000,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = AES_BLOCK_SIZE,
|
|
@@ -1116,7 +1116,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
*/
|
|
.base = {
|
|
.cra_name = "echainiv(authenc(hmac(sha1),cbc(des3_ede)))",
|
|
- .cra_driver_name = "nss-hmac-sha1-cbc-3des",
|
|
+ .cra_driver_name = "nss-hmac-sha1-cbc-3des-echainiv",
|
|
.cra_priority = 300,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
|
@@ -1139,7 +1139,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
*/
|
|
.base = {
|
|
.cra_name = "echainiv(authenc(hmac(sha256),cbc(des3_ede)))",
|
|
- .cra_driver_name = "nss-hmac-sha256-cbc-3des",
|
|
+ .cra_driver_name = "nss-hmac-sha256-cbc-3des-echainiv",
|
|
.cra_priority = 300,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = DES3_EDE_BLOCK_SIZE,
|
|
@@ -1160,7 +1160,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
{
|
|
.base = {
|
|
.cra_name = "authenc(hmac(sha1),cbc(aes))",
|
|
- .cra_driver_name = "nss-hmac-sha1-cbc-aes",
|
|
+ .cra_driver_name = "nss-hmac-sha1-cbc-aes-auth",
|
|
.cra_priority = 10000,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = AES_BLOCK_SIZE,
|
|
@@ -1183,7 +1183,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
*/
|
|
.base = {
|
|
.cra_name = "authenc(hmac(sha256),cbc(aes))",
|
|
- .cra_driver_name = "nss-hmac-sha256-cbc-aes",
|
|
+ .cra_driver_name = "nss-hmac-sha256-cbc-aes-auth",
|
|
.cra_priority = 10000,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = AES_BLOCK_SIZE,
|
|
@@ -1206,7 +1206,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
*/
|
|
.base = {
|
|
.cra_name = "authenc(hmac(sha384),cbc(aes))",
|
|
- .cra_driver_name = "nss-hmac-sha384-cbc-aes",
|
|
+ .cra_driver_name = "nss-hmac-sha384-cbc-aes-auth",
|
|
.cra_priority = 10000,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = AES_BLOCK_SIZE,
|
|
@@ -1298,7 +1298,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
*/
|
|
.base = {
|
|
.cra_name = "rfc4106(gcm(aes))",
|
|
- .cra_driver_name = "nss-rfc4106-gcm",
|
|
+ .cra_driver_name = "nss-rfc4106-gcm-aes128",
|
|
.cra_priority = 10000,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = AES_BLOCK_SIZE,
|
|
@@ -1321,7 +1321,7 @@ struct aead_alg cryptoapi_aead_algs[] =
|
|
*/
|
|
.base = {
|
|
.cra_name = "seqiv(rfc4106(gcm(aes)))",
|
|
- .cra_driver_name = "nss-rfc4106-gcm",
|
|
+ .cra_driver_name = "nss-seqiv-rfc4106-gcm",
|
|
.cra_priority = 10000,
|
|
.cra_flags = CRYPTO_ALG_ASYNC,
|
|
.cra_blocksize = AES_BLOCK_SIZE,
|
|
@@ -2166,6 +2166,7 @@ static const struct file_operations ctx_
|
|
void nss_cryptoapi_add_ctx2debugfs(struct nss_cryptoapi_ctx *ctx)
|
|
{
|
|
char buf[NSS_CRYPTOAPI_DEBUGFS_MAX_NAME] = {0};
|
|
+ struct dentry *existing;
|
|
|
|
if (!g_cryptoapi.root) {
|
|
nss_cfi_err("%px: DebugFS root directory missing(%px)\n", &g_cryptoapi, ctx);
|
|
@@ -2173,6 +2174,16 @@ void nss_cryptoapi_add_ctx2debugfs(struc
|
|
}
|
|
|
|
snprintf(buf, sizeof(buf), "ctx%d", ctx->sid);
|
|
+
|
|
+ /* Check if the directory already exists */
|
|
+ existing = debugfs_lookup(buf, g_cryptoapi.root);
|
|
+ if (existing) {
|
|
+ /* Directory already exists, store it and return */
|
|
+ ctx->dentry = existing;
|
|
+ nss_cfi_info("%px: Context debugfs entry already exists for ctx%d\n", ctx, ctx->sid);
|
|
+ return;
|
|
+ }
|
|
+
|
|
ctx->dentry = debugfs_create_dir(buf, g_cryptoapi.root);
|
|
if (!ctx->dentry) {
|
|
nss_cfi_err("%px: Unable to create context debugfs entry", ctx);
|