aboutsummaryrefslogtreecommitdiffstats
path: root/server/resty/openssl/version.lua
diff options
context:
space:
mode:
Diffstat (limited to 'server/resty/openssl/version.lua')
-rw-r--r--server/resty/openssl/version.lua117
1 files changed, 0 insertions, 117 deletions
diff --git a/server/resty/openssl/version.lua b/server/resty/openssl/version.lua
deleted file mode 100644
index f982b61..0000000
--- a/server/resty/openssl/version.lua
+++ /dev/null
@@ -1,117 +0,0 @@
--- https://github.com/GUI/lua-openssl-ffi/blob/master/lib/openssl-ffi/version.lua
-local ffi = require "ffi"
-local C = ffi.C
-local ffi_str = ffi.string
-
-ffi.cdef[[
- // 1.0
- unsigned long SSLeay(void);
- const char *SSLeay_version(int t);
- // >= 1.1
- unsigned long OpenSSL_version_num();
- const char *OpenSSL_version(int t);
- // >= 3.0
- const char *OPENSSL_info(int t);
- // BoringSSL
- int BORINGSSL_self_test(void);
-]]
-
-local version_func, info_func
-local types_table
-
--- >= 1.1
-local ok, version_num = pcall(function()
- local num = C.OpenSSL_version_num()
- version_func = C.OpenSSL_version
- types_table = {
- VERSION = 0,
- CFLAGS = 1,
- BUILT_ON = 2,
- PLATFORM = 3,
- DIR = 4,
- ENGINES_DIR = 5,
- VERSION_STRING = 6,
- FULL_VERSION_STRING = 7,
- MODULES_DIR = 8,
- CPU_INFO = 9,
- }
- return num
-end)
-
-
-if not ok then
- -- 1.0.x
- ok, version_num = pcall(function()
- local num = C.SSLeay()
- version_func = C.SSLeay_version
- types_table = {
- VERSION = 0,
- CFLAGS = 2,
- BUILT_ON = 3,
- PLATFORM = 4,
- DIR = 5,
- }
- return num
- end)
-end
-
-
-if not ok then
- error(string.format("OpenSSL has encountered an error: %s; is OpenSSL library loaded?",
- tostring(version_num)))
-elseif type(version_num) == 'number' and version_num < 0x10000000 then
- error(string.format("OpenSSL version %s is not supported", tostring(version_num or 0)))
-elseif not version_num then
- error("Can not get OpenSSL version")
-end
-
-if version_num >= 0x30000000 then
- local info_table = {
- INFO_CONFIG_DIR = 1001,
- INFO_ENGINES_DIR = 1002,
- INFO_MODULES_DIR = 1003,
- INFO_DSO_EXTENSION = 1004,
- INFO_DIR_FILENAME_SEPARATOR = 1005,
- INFO_LIST_SEPARATOR = 1006,
- INFO_SEED_SOURCE = 1007,
- INFO_CPU_SETTINGS = 1008,
- }
-
- for k, v in pairs(info_table) do
- types_table[k] = v
- end
-
- info_func = C.OPENSSL_info
-else
- info_func = function(_)
- error(string.format("OPENSSL_info is not supported on %s", ffi_str(version_func(0))))
- end
-end
-
-local BORINGSSL = false
-pcall(function()
- local _ = C.BORINGSSL_self_test
- BORINGSSL = true
-end)
-
-return setmetatable({
- version_num = tonumber(version_num),
- version_text = ffi_str(version_func(0)),
- version = function(t)
- return ffi_str(version_func(t))
- end,
- info = function(t)
- return ffi_str(info_func(t))
- end,
- OPENSSL_3X = version_num >= 0x30000000 and version_num < 0x30200000,
- OPENSSL_30 = version_num >= 0x30000000 and version_num < 0x30100000, -- for backward compat, deprecated
- OPENSSL_11 = version_num >= 0x10100000 and version_num < 0x10200000,
- OPENSSL_111 = version_num >= 0x10101000 and version_num < 0x10200000,
- OPENSSL_11_OR_LATER = version_num >= 0x10100000 and version_num < 0x30200000,
- OPENSSL_111_OR_LATER = version_num >= 0x10101000 and version_num < 0x30200000,
- OPENSSL_10 = version_num < 0x10100000 and version_num > 0x10000000,
- BORINGSSL = BORINGSSL,
- BORINGSSL_110 = BORINGSSL and version_num >= 0x10100000 and version_num < 0x10101000
- }, {
- __index = types_table,
-}) \ No newline at end of file