HEX
Server: LiteSpeed
System: Linux sv4.hami.host 5.14.0-611.54.3.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 7 16:31:24 EDT 2026 x86_64
User: armgroup (1008)
PHP: 8.2.32
Disabled: show_source, system, shell_exec, passthru, exec, popen, proc_open, mail, socket_create, socket_create_listen, socket_create_pair, link, dl, openlog, syslog, stream_socket_server, curl_multi_init
Upload Files
File: //opt/imunify360-webshield/lualib/resty/openssl/crypto.lua
local ffi = require "ffi"
local ffi_cast = ffi.cast
local C = ffi.C
require "resty.openssl.include.crypto"

local _M = {}

function _M.memcmp(a, b, len)
  if type(len) ~= "number" or len < 1 then
    return nil, "crypto:memcmp arg 'len' must be a number > 0"
  end
  if type(a) ~= "string" and type(a) ~= "cdata" then
    return nil, "crypto:memcmp only strings and cdata types are supported"
  end

  return C.CRYPTO_memcmp(ffi_cast("void*", a), ffi_cast("void*", b), len)
end

return _M