OPENSSL_FILE(3ssl)

OPENSSL_FILE3ssl

Generic c programming utility macros

Usage

 #include <openssl/macros.h>
 #define OPENSSL_FILE /* typically: __FILE__ */
 #define OPENSSL_LINE /* typically: __LINE__ */
 #define OPENSSL_FUNC /* typically: __func__ */
 #define OPENSSL_MSTR_HELPER(x) #x
 #define OPENSSL_MSTR(x) OPENSSL_MSTR_HELPER(x)

Overview

The macros OPENSSL_FILE and OPENSSL_LINE typically yield the current filename and line number during C compilation. When OPENSSL_NO_FILENAMES is defined they yield "" and 0, respectively.

The macro OPENSSL_FUNC attempts to yield the name of the C function currently being compiled, as far as language and compiler versions allow. Otherwise, it yields "(unknown function)".

The macro OPENSSL_MSTR yields the expansion of the macro given as argument, which is useful for concatenation with string constants. The macro OPENSSL_MSTR_HELPER is an auxiliary macro for this purpose.

Return values

see above

Releases

3 releases since Debian 12 (Bookworm); the text changed 2 times.

  1. 12
  2. 13
  3. Arch

History

OPENSSL_FUNC, OPENSSL_MSTR, and OPENSSL_MSTR_HELPER were added in OpenSSL 3.0.

From openssl 3.6.5-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.