ERR_SET_MARK(3) | Library Functions Manual | ERR_SET_MARK(3)

# NAME

`ERR_set_mark`, `ERR_pop_to_mark` — set marks and pop OpenSSL errors until mark

# SYNOPSIS

library “libcrypto”
`#include <openssl/err.h>`

int
`ERR_set_mark`(void);

int
`ERR_pop_to_mark`(void);

# DESCRIPTION

`ERR_set_mark`() sets a mark on the current topmost error record if there is one.

`ERR_pop_to_mark`() will pop the top of the error stack until a mark is found. The mark is then removed. If there is no mark, the whole stack is removed.

# RETURN VALUES

`ERR_set_mark`() returns 0 if the error stack is empty, otherwise 1.

`ERR_pop_to_mark`() returns 0 if there was no mark in the error stack, which implies that the stack became empty, otherwise 1.

# SEE ALSO

ERR(3)

# HISTORY

`ERR_set_mark`() and `ERR_pop_to_mark`() first appeared in OpenSSL 0.9.8 and have been available since OpenBSD 4.5.

June 8, 2025 | Debian