openssl/3.2.1

A toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols
Recipe info
2024-04-04

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
openssl/3.2.1

Using openssl

Note

If you are a new Conan user, we recommend reading the how to consume packages tutorial.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
openssl/3.2.1
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("openssl/3.2.1")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): OpenSSL
  • CMake target name(s): openssl::openssl
  • ssl => OpenSSL::SSL
    crypto => OpenSSL::Crypto
    
  • pkg-config file name(s): openssl.pc
  • ssl => libssl.pc
    crypto => libcrypto.pc
    

A simple use case using the CMake file name and the global target:

# ...
find_package(OpenSSL REQUIRED)
# ...
target_link_libraries(YOUR_TARGET openssl::openssl)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the openssl homepage listed above:

#include "openssl/aes.h"
#include "openssl/asn1.h"
#include "openssl/asn1_mac.h"
#include "openssl/asn1err.h"
#include "openssl/asn1t.h"
#include "openssl/async.h"
#include "openssl/asyncerr.h"
#include "openssl/bio.h"
#include "openssl/bioerr.h"
#include "openssl/blowfish.h"
#include "openssl/bn.h"
#include "openssl/bnerr.h"
#include "openssl/buffer.h"
#include "openssl/buffererr.h"
#include "openssl/camellia.h"
#include "openssl/cast.h"
#include "openssl/cmac.h"
#include "openssl/cmp.h"
#include "openssl/cmp_util.h"
#include "openssl/cmperr.h"
#include "openssl/cms.h"
#include "openssl/cmserr.h"
#include "openssl/comp.h"
#include "openssl/comperr.h"
#include "openssl/conf.h"
#include "openssl/conf_api.h"
#include "openssl/conferr.h"
#include "openssl/configuration.h"
#include "openssl/conftypes.h"
#include "openssl/core.h"
#include "openssl/core_dispatch.h"
#include "openssl/core_names.h"
#include "openssl/core_object.h"
#include "openssl/crmf.h"
#include "openssl/crmferr.h"
#include "openssl/crypto.h"
#include "openssl/cryptoerr.h"
#include "openssl/cryptoerr_legacy.h"
#include "openssl/ct.h"
#include "openssl/cterr.h"
#include "openssl/decoder.h"
#include "openssl/decodererr.h"
#include "openssl/des.h"
#include "openssl/dh.h"
#include "openssl/dherr.h"
#include "openssl/dsa.h"
#include "openssl/dsaerr.h"
#include "openssl/dtls1.h"
#include "openssl/e_os2.h"
#include "openssl/e_ostime.h"
#include "openssl/ebcdic.h"
#include "openssl/ec.h"
#include "openssl/ecdh.h"
#include "openssl/ecdsa.h"
#include "openssl/ecerr.h"
#include "openssl/encoder.h"
#include "openssl/encodererr.h"
#include "openssl/engine.h"
#include "openssl/engineerr.h"
#include "openssl/err.h"
#include "openssl/ess.h"
#include "openssl/esserr.h"
#include "openssl/evp.h"
#include "openssl/evperr.h"
#include "openssl/fips_names.h"
#include "openssl/fipskey.h"
#include "openssl/hmac.h"
#include "openssl/hpke.h"
#include "openssl/http.h"
#include "openssl/httperr.h"
#include "openssl/idea.h"
#include "openssl/kdf.h"
#include "openssl/kdferr.h"
#include "openssl/lhash.h"
#include "openssl/macros.h"
#include "openssl/md2.h"
#include "openssl/md4.h"
#include "openssl/md5.h"
#include "openssl/mdc2.h"
#include "openssl/modes.h"
#include "openssl/obj_mac.h"
#include "openssl/objects.h"
#include "openssl/objectserr.h"
#include "openssl/ocsp.h"
#include "openssl/ocsperr.h"
#include "openssl/opensslconf.h"
#include "openssl/opensslv.h"
#include "openssl/ossl_typ.h"
#include "openssl/param_build.h"
#include "openssl/params.h"
#include "openssl/pem.h"
#include "openssl/pem2.h"
#include "openssl/pemerr.h"
#include "openssl/pkcs12.h"
#include "openssl/pkcs12err.h"
#include "openssl/pkcs7.h"
#include "openssl/pkcs7err.h"
#include "openssl/prov_ssl.h"
#include "openssl/proverr.h"
#include "openssl/provider.h"
#include "openssl/quic.h"
#include "openssl/rand.h"
#include "openssl/randerr.h"
#include "openssl/rc2.h"
#include "openssl/rc4.h"
#include "openssl/rc5.h"
#include "openssl/ripemd.h"
#include "openssl/rsa.h"
#include "openssl/rsaerr.h"
#include "openssl/safestack.h"
#include "openssl/seed.h"
#include "openssl/self_test.h"
#include "openssl/sha.h"
#include "openssl/srp.h"
#include "openssl/srtp.h"
#include "openssl/ssl.h"
#include "openssl/ssl2.h"
#include "openssl/ssl3.h"
#include "openssl/sslerr.h"
#include "openssl/sslerr_legacy.h"
#include "openssl/stack.h"
#include "openssl/store.h"
#include "openssl/storeerr.h"
#include "openssl/symhacks.h"
#include "openssl/thread.h"
#include "openssl/tls1.h"
#include "openssl/trace.h"
#include "openssl/ts.h"
#include "openssl/tserr.h"
#include "openssl/txt_db.h"
#include "openssl/types.h"
#include "openssl/ui.h"
#include "openssl/uierr.h"
#include "openssl/whrlpool.h"
#include "openssl/x509.h"
#include "openssl/x509_vfy.h"
#include "openssl/x509err.h"
#include "openssl/x509v3.h"
#include "openssl/x509v3err.h"