CONF_MODULES_FREE(3ossl)

πŸ’– CONF_MODULES_FREE πŸ’–

okay bestie, welcome to CONF_MODULES_FREE(3ossl) β€” the OpenSSL configuration cleanup functions. yes, it's giving "janitor energy" but honestly? someone has to do it and that someone is you. ✨


🌸 NAME 🌸

CONF_modules_free, CONF_modules_finish, CONF_modules_unload β€” the OpenSSL configuration cleanup functions. the lil trio that tidies up after your config party. πŸ§ΉπŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

#include <openssl/conf.h>

void CONF_modules_finish(void);
void CONF_modules_unload(int all);

and now for the part that's lowkey in its flop era: the following functions have been deprecated since OpenSSL 1.1.0, and can be hidden entirely by defining OPENSSL_API_COMPAT with a suitable version value β€” peep openssl_user_macros(7) for that:

void CONF_modules_free(void);
🫢 just so we're clear: deprecated means do not use it. she's retired. she's on a beach somewhere. leave her alone. 😭

✨ DESCRIPTION ✨

CONF_modules_free() closes down and frees up all memory allocated by all configuration modules. normally β€” and we're talking in versions of OpenSSL prior to 1.1.0 β€” applications called CONF_modules_free() at exit to tidy up any configuration performed. so like, it was the "okay everyone say goodbye, we're leaving" function. πŸ₯²

CONF_modules_finish() calls each configuration module's finish handler, so it can free up any configuration that module may have performed. it's the group-chat "ok wrapping up, drop your final thoughts" message. πŸ’¬

CONF_modules_unload() finishes and unloads configuration modules. and here's the vibe check on the all argument:

  • if all is set to 0, only modules loaded from DSOs will be unloads. πŸ¦‹
  • if all is set to 1, all modules, including built-in modules, will be unloaded. πŸ‘‘

(yes, the manpage fr says "unloads" there. we're keeping it. character-for-character. no cap. πŸ’€)


🌈 RETURN VALUES 🌈

none of the functions return a value. they're void. they give you nothing back and honestly? that's the most unbothered behaviour possible. no notes. πŸ‘‘


πŸ¦‹ SEE ALSO πŸ¦‹

go read those too, bestie, they're part of the lore. πŸ“š


πŸ’œ HISTORY πŸ’œ

CONF_modules_free() was deprecated in OpenSSL 1.1.0 β€” do not use it. for more information see OPENSSL_init_crypto(3). periodt. 🚫


Copyright 2004-2020 The OpenSSL Project Authors. All Rights Reserved.

Licensed under the Apache License 2.0 (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at <https://www.openssl.org/source/license.html>.


okay that's the whole page, you ate that fr fr πŸ’– this was CONF_MODULES_FREE(3ossl) from OpenSSL 3.5.9, dated 2026-09-29 β€” mwah, slay, go free your modules responsibly πŸŽ€βœ¨πŸ«Ά

πŸ“¦ where this page comes from