libressl-CRYPTO_set_mem_functions(3)

libressl-CRYPTO_set_mem_functions3

Legacy openssl memory allocation control

Usage

Crypto Library (libcrypto, -lcrypto)

#include <openssl/crypto.h>

int

CRYPTO_set_mem_functions(void *(*m)(size_t, const char *, int), void *(*r)(void *, size_t, const char *, int), void (*f)(void *, const char *, int));

int

CRYPTO_mem_ctrl(int mode);

int

CRYPTO_mem_leaks(BIO *b);

int

CRYPTO_mem_leaks_fp(FILE *fp);

typedef int *

CRYPTO_MEM_LEAK_CB(unsigned long, const char *, int, int, void *);

int

CRYPTO_mem_leaks_cb(CRYPTO_MEM_LEAK_CB *cb);

Overview

Do not use any of the interfaces documented here. They are provided purely for compatibility with legacy application code.

CRYPTO_set_mem_functions(), CRYPTO_mem_ctrl(), CRYPTO_mem_leaks(), CRYPTO_mem_leaks_fp(), and CRYPTO_mem_leaks_cb() have no effect.

Return values

CRYPTO_set_mem_functions() always returns 0.

CRYPTO_mem_ctrl() always returns CRYPTO_MEM_CHECK_OFF.

CRYPTO_mem_leaks(), CRYPTO_mem_leaks_fp(), and CRYPTO_mem_leaks_cb() always return -1.

History

CRYPTO_mem_ctrl(), CRYPTO_mem_leaks(), and CRYPTO_mem_leaks_fp() first appeared in SSLeay 0.6.4. CRYPTO_set_mem_functions() first appeared in SSLeay 0.6.5. CRYPTO_mem_leaks_cb() first appeared in SSLeay 0.6.6. All these functions have all been available since OpenBSD 2.4.

From libressl 4.4.0-1 in Arch Linux 2026-11-01. Parsed by carta from the page's mdoc source.