X509_LOAD_CERT_FILE(3)

πŸ“¦ version 4.4.0, in alpine 3.24, arch rolling

okay bestie, welcome to the X509_LOAD_CERT_FILE(3) page from the Library Functions Manual β€” this one is literally all about reading, decoding, and caching certificates and CRLs with libcrypto, and it's lowkey iconic πŸ’–βœ¨

🌸 NAME 🌸

X509_load_cert_file, X509_load_crl_file, X509_load_cert_crl_file β€” read, decode, and cache certificates and CRLs, periodt πŸ’…

πŸŽ€ SYNOPSIS πŸŽ€

library β€œlibcrypto” #include <openssl/x509_vfy.h>

int
X509_load_cert_file(X509_LOOKUP *ctx, const char *file, int type);

int
X509_load_crl_file(X509_LOOKUP *ctx, const char *file, int type);

int
X509_load_cert_crl_file(X509_LOOKUP *ctx, const char *file, int type);

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so X509_load_cert_file() with a type of X509_FILETYPE_PEM reads one or more certificates in PEM format from the given file using PEM_read_bio_X509_AUX(3); with a type of X509_FILETYPE_ASN1, it reads one certificate in DER format using d2i_X509_bio(3). the certificates that get read are added to the X509_STORE memory cache object associated with the given ctx using X509_STORE_add_cert(3). slay 🫢

X509_load_crl_file() with a type of X509_FILETYPE_PEM reads one or more certificate revocation lists in PEM format from the given file using PEM_read_bio_X509_CRL(3); with a type of X509_FILETYPE_ASN1, it reads one certificate revocation list in DER format using d2i_X509_CRL_bio(3). the certificate revocation lists that get read are added to the X509_STORE memory cache object associated with the given ctx using X509_STORE_add_crl(3). literally the CRL version of the vibe πŸ’œ

X509_load_cert_crl_file() with a type of X509_FILETYPE_PEM reads one or more certificates and/or certificate revocation lists in PEM format from the given file using PEM_X509_INFO_read_bio(3) and adds them to the X509_STORE memory cache object associated with the given ctx using X509_STORE_add_cert(3) and X509_STORE_add_crl(3), respectively. certs and CRLs in one file? that's giving main character energy fr fr ✨

🚨 bestie, heads up: X509_load_cert_crl_file() with a type of X509_FILETYPE_ASN1 is equivalent to X509_load_cert_file() and cannot be used to read a certificate revocation list. no cap, that's the rule πŸ’€

πŸ‘‘ RETURN VALUES πŸ‘‘

these functions return the number of objects loaded, or 0 on error. simple as that, bestie 🌈

⭐ SEE ALSO ⭐

πŸ’– HISTORY πŸ’–

X509_load_cert_file() first appeared in SSLeay 0.8.0, and X509_load_crl_file() first appeared in SSLeay 0.9.0. these functions have been available since OpenBSD 2.4. iconic longevity behavior πŸ”₯

X509_load_cert_crl_file() first appeared in OpenSSL 0.9.5 and has been available since OpenBSD 2.7. she's been around, okay?! πŸŽ€


and that's the whole page, bestie πŸ’… brought to you by Debian, dated June 8, 2025, and yes ma'am, this is still the X509_LOAD_CERT_FILE(3) page β€” periodt πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from