HEX
Server: LiteSpeed
System: Linux baran.dnsprotection.me 4.18.0-553.83.1.lve.el8.x86_64 #1 SMP Wed Nov 12 10:04:12 UTC 2025 x86_64
User: ddir12 (3618)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //opt/imunify360-webshield/lualib/resty/openssl/include/evp/mac.lua
local ffi = require "ffi"

require "resty.openssl.include.ossl_typ"
require "resty.openssl.include.provider"

ffi.cdef [[
  typedef struct evp_mac_st EVP_MAC;
  typedef struct evp_mac_ctx_st EVP_MAC_CTX;

  EVP_MAC_CTX *EVP_MAC_CTX_new(EVP_MAC *mac);
  void EVP_MAC_CTX_free(EVP_MAC_CTX *ctx);

  const OSSL_PROVIDER *EVP_MAC_get0_provider(const EVP_MAC *mac);
  EVP_MAC *EVP_MAC_fetch(OSSL_LIB_CTX *libctx, const char *algorithm,
                          const char *properties);

  int EVP_MAC_init(EVP_MAC_CTX *ctx, const unsigned char *key, size_t keylen,
                    const OSSL_PARAM params[]);
  int EVP_MAC_update(EVP_MAC_CTX *ctx, const unsigned char *data, size_t datalen);
  int EVP_MAC_final(EVP_MAC_CTX *ctx,
                    unsigned char *out, size_t *outl, size_t outsize);

  size_t EVP_MAC_CTX_get_mac_size(EVP_MAC_CTX *ctx);

  typedef void* fake_openssl_mac_provided_list_fn(EVP_MAC *mac, void *arg);
  void EVP_MAC_do_all_provided(OSSL_LIB_CTX *libctx,
                              fake_openssl_mac_provided_list_fn*,
                              void *arg);
  // int EVP_MAC_up_ref(EVP_MAC *mac);
  void EVP_MAC_free(EVP_MAC *mac);

  const char *EVP_MAC_get0_name(const EVP_MAC *mac);

  int EVP_MAC_CTX_set_params(EVP_MAC_CTX *ctx, const OSSL_PARAM params[]);
  const OSSL_PARAM *EVP_MAC_CTX_settable_params(EVP_MAC_CTX *ctx);
  int EVP_MAC_CTX_get_params(EVP_MAC_CTX *ctx, OSSL_PARAM params[]);
  const OSSL_PARAM *EVP_MAC_CTX_gettable_params(EVP_MAC_CTX *ctx);
]]