From 73d852c938d273ddf11f14be315f40fe198912b4 Mon Sep 17 00:00:00 2001 From: huangtiandi Date: Mon, 4 Nov 2024 13:54:42 +0800 Subject: [PATCH 1/3] fix EVP_PKEY --- lib/resty/rsa.lua | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/resty/rsa.lua b/lib/resty/rsa.lua index 0707d01..9a38292 100644 --- a/lib/resty/rsa.lua +++ b/lib/resty/rsa.lua @@ -92,6 +92,7 @@ int EVP_PKEY_CTX_ctrl(EVP_PKEY_CTX *ctx, int keytype, int optype, int cmd, int p1, void *p2); int EVP_PKEY_size(EVP_PKEY *pkey); +int EVP_PKEY_get_size(EVP_PKEY *pkey); int EVP_PKEY_encrypt_init(EVP_PKEY_CTX *ctx); int EVP_PKEY_encrypt(EVP_PKEY_CTX *ctx, @@ -388,7 +389,13 @@ function _M.new(_, opts) end end - local size = C.EVP_PKEY_size(pkey) + --local size = C.EVP_PKEY_size(pkey) + local size + if not pcall(function () return C.EVP_PKEY_size(pkey) end) then + size = C.EVP_PKEY_get_size(pkey) + else + size=C.EVP_PKEY_size(pkey) + end return setmetatable({ pkey = pkey, size = size, From cfa1208af6d67c4d9ad89a6a2c6325b25c005b4b Mon Sep 17 00:00:00 2001 From: huangtiandi Date: Mon, 4 Nov 2024 21:39:08 +0800 Subject: [PATCH 2/3] fix evp_pkey load Timing to global --- lib/resty/rsa.lua | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/lib/resty/rsa.lua b/lib/resty/rsa.lua index 9a38292..d15e78c 100644 --- a/lib/resty/rsa.lua +++ b/lib/resty/rsa.lua @@ -157,6 +157,13 @@ else evp_md_ctx_free = C.EVP_MD_CTX_destroy end +local evp_pkey_size +if not pcall(function () return C.EVP_PKEY_size end) then + evp_pkey_size = C.EVP_PKEY_get_size +else + evp_pkey_size = C.EVP_PKEY_size +end + local function ssl_err() local err_queue = {} local i = 1 @@ -389,13 +396,8 @@ function _M.new(_, opts) end end - --local size = C.EVP_PKEY_size(pkey) - local size - if not pcall(function () return C.EVP_PKEY_size(pkey) end) then - size = C.EVP_PKEY_get_size(pkey) - else - size=C.EVP_PKEY_size(pkey) - end + local size=evp_pkey_size(pkey) + return setmetatable({ pkey = pkey, size = size, From 86c6a8b58a1a1da208fd500391335b590b3782e9 Mon Sep 17 00:00:00 2001 From: huangtiandi Date: Mon, 4 Nov 2024 21:46:38 +0800 Subject: [PATCH 3/3] fix some Space --- lib/resty/rsa.lua | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/resty/rsa.lua b/lib/resty/rsa.lua index d15e78c..1fc23d4 100644 --- a/lib/resty/rsa.lua +++ b/lib/resty/rsa.lua @@ -396,8 +396,7 @@ function _M.new(_, opts) end end - local size=evp_pkey_size(pkey) - + local size = evp_pkey_size(pkey) return setmetatable({ pkey = pkey, size = size,