Add missing headers to documentation generator config

This adds public C header files in include/openssl that were missing
from the HTML documentation pages. It excludes uninteresting headers
that are just wrappers for another header file, headers consisting
only of constant definitions, and C++ header files.

Adds basic summary preambles for header files that were missing it.

Change-Id: I1dc5b1932912abf3ba6df8cc63afad736a6a6964
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/92707
Reviewed-by: David Benjamin <davidben@google.com>
Auto-Submit: Lily Chen <chlily@google.com>
Commit-Queue: Lily Chen <chlily@google.com>
This commit is contained in:
Lily Chen
2026-04-15 18:28:32 +00:00
committed by boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com
parent b3e20ea8e0
commit 945597fecd
16 changed files with 106 additions and 18 deletions
+3
View File
@@ -22,6 +22,9 @@ extern "C" {
#endif
// Blake2b.
#define BLAKE2B256_DIGEST_LENGTH (256 / 8)
#define BLAKE2B_CBLOCK 128
+9 -2
View File
@@ -17,11 +17,18 @@
#include <openssl/base.h> // IWYU pragma: export
#ifdef __cplusplus
#if defined(__cplusplus)
extern "C" {
#endif
// Blowfish.
//
// This module is deprecated and retained for legacy reasons only.
//
// Use a modern cipher, such as AES-GCM or ChaCha20-Poly1305, instead.
#define BF_ENCRYPT 1
#define BF_DECRYPT 0
@@ -44,7 +51,7 @@ OPENSSL_EXPORT void BF_cbc_encrypt(const uint8_t *in, uint8_t *out,
uint8_t *ivec, int enc);
#ifdef __cplusplus
#if defined(__cplusplus)
} // extern C
#endif
+4 -2
View File
@@ -17,7 +17,7 @@
#include <openssl/base.h> // IWYU pragma: export
#ifdef __cplusplus
#if defined(__cplusplus)
extern "C" {
#endif
@@ -31,6 +31,7 @@ extern "C" {
//
// Use a modern cipher, such as AES-GCM or ChaCha20-Poly1305, instead.
#define CAST_ENCRYPT 1
#define CAST_DECRYPT 0
@@ -82,7 +83,8 @@ OPENSSL_EXPORT void CAST_cfb64_encrypt(const uint8_t *in, uint8_t *out,
size_t length, const CAST_KEY *schedule,
uint8_t ivec[8], int *num, int enc);
#ifdef __cplusplus
#if defined(__cplusplus)
} // extern C
#endif
+1
View File
@@ -36,6 +36,7 @@ extern "C" {
// the |BORINGSSL_NO_NO_CMS| build option can be used to suppress
// |OPENSSL_NO_CMS|.
DECLARE_STACK_OF(X509)
// CMS_* are flags that can be passed to functions in this library. Their
+6
View File
@@ -27,6 +27,12 @@ extern "C" {
// The best exposition is https://eprint.iacr.org/2017/667.pdf although this
// implementation uses a different KEM construction based on
// https://eprint.iacr.org/2017/1005.pdf.
//
// This module is a remnant of early post-quantum KEM deployments. It should not
// be used in any new applications. Use ML-KEM instead.
//
// TODO(crbug.com/503068543): Remove this.
struct HRSS_private_key {
uint8_t opaque[1808];
+7
View File
@@ -23,6 +23,13 @@ extern "C" {
// MD4.
//
// MD4 is not a secure hash function. There are very efficient attacks for
// finding collisions, and its preimage resistance is also broken. It is
// implemented purely for compatibility with legacy systems.
//
// Use a secure hash function, such as SHA-256, instead.
// MD4_CBLOCK is the block size of MD4.
#define MD4_CBLOCK 64
+11 -3
View File
@@ -28,11 +28,19 @@
// |OPENSSL_malloc| from pem.h or err.h
#include <openssl/crypto.h>
#ifdef __cplusplus
#if defined(__cplusplus)
extern "C" {
#endif
// PEM.
//
// This library contains functions for reading and writing data encoded in PEM
// format. This format originated in Privacy-Enhanced Mail (RFC 1421).
//
// TODO(crbug.com/42290574): Finish documenting this header.
#define PEM_BUFSIZE 1024
#define PEM_STRING_X509_OLD "X509 CERTIFICATE"
@@ -60,7 +68,6 @@ extern "C" {
#define PEM_STRING_ECPRIVATEKEY "EC PRIVATE KEY"
#define PEM_STRING_CMS "CMS"
// enc_type is one off
#define PEM_TYPE_ENCRYPTED 10
#define PEM_TYPE_MIC_ONLY 20
#define PEM_TYPE_MIC_CLEAR 30
@@ -357,6 +364,7 @@ DECLARE_PEM_rw(X509, X509)
// TODO(crbug.com/boringssl/426): When documenting these, copy the warning
// about auxiliary properties from |PEM_X509_INFO_read_bio|.
DECLARE_PEM_rw(X509_AUX, X509)
DECLARE_PEM_rw(X509_REQ, X509_REQ)
@@ -437,7 +445,7 @@ OPENSSL_EXPORT int PEM_write_PKCS8PrivateKey(FILE *fp, const EVP_PKEY *x,
pem_password_cb *cd, void *u);
#ifdef __cplusplus
#if defined(__cplusplus)
} // extern C
#endif
+1
View File
@@ -29,6 +29,7 @@ extern "C" {
// This library contains functions for extracting information from PKCS#7
// structures (RFC 2315).
DECLARE_STACK_OF(CRYPTO_BUFFER)
DECLARE_STACK_OF(X509)
DECLARE_STACK_OF(X509_CRL)
+7
View File
@@ -24,6 +24,13 @@ extern "C" {
#endif
// PKCS#8 and PKCS#12.
//
// This library contains functions for reading and writing private key
// information in PKCS#8 format (RFC 5958), and key and certificate information
// in PKCS#12 format (RFC 7292).
// PKCS8_encrypt serializes and encrypts a PKCS8_PRIV_KEY_INFO with PBES1 or
// PBES2 as defined in PKCS #5. Only pbeWithSHAAnd128BitRC4,
// pbeWithSHAAnd3-KeyTripleDES-CBC and pbeWithSHA1And40BitRC2, defined in PKCS
+4 -1
View File
@@ -17,11 +17,14 @@
#include <openssl/base.h> // IWYU pragma: export
#ifdef __cplusplus
#if defined(__cplusplus)
extern "C" {
#endif
// Poly1305.
typedef uint8_t poly1305_state[512];
// CRYPTO_poly1305_init sets up |state| so that it can be used to calculate an
+6 -1
View File
@@ -17,11 +17,16 @@
#include <openssl/base.h> // IWYU pragma: export
#ifdef __cplusplus
#if defined(__cplusplus)
extern "C" {
#endif
// RIPEMD-160.
//
// This module is deprecated and retained for legacy reasons only.
# define RIPEMD160_CBLOCK 64
# define RIPEMD160_LBLOCK (RIPEMD160_CBLOCK/4)
# define RIPEMD160_DIGEST_LENGTH 20
+3
View File
@@ -22,6 +22,9 @@ extern "C" {
#endif
// The SHA-2 family of hash functions.
// SHA-224.
// SHA224_CBLOCK is the block size of SHA-224.
+3
View File
@@ -22,6 +22,9 @@ extern "C" {
#endif
// SLH-DSA.
// SLHDSA_SHA2_128S_PUBLIC_KEY_BYTES is the number of bytes in an
// SLH-DSA-SHA2-128s public key.
#define SLHDSA_SHA2_128S_PUBLIC_KEY_BYTES 32
+7 -1
View File
@@ -22,7 +22,12 @@ extern "C" {
#endif
// CRYPTO_tls1_prf calculates |out_len| bytes of the TLS PDF, using |digest|,
// TLS PRF.
//
// The TLS PRF is defined in Section 5 of RFC 5246.
// CRYPTO_tls1_prf calculates |out_len| bytes of the TLS PRF, using |digest|,
// and writes them to |out|. It is defined in Section 5 of RFC 5246, acting on
// |secret_len| bytes of shared |secret|, |label_len| bytes of |label|,
// |seed1_len| bytes of |seed1| and |seed2_len| bytes of |seed2|. It returns one
@@ -34,6 +39,7 @@ OPENSSL_EXPORT int CRYPTO_tls1_prf(const EVP_MD *digest, uint8_t *out,
size_t seed1_len, const uint8_t *seed2,
size_t seed2_len);
#if defined(__cplusplus)
} // extern C
#endif
+4 -3
View File
@@ -30,12 +30,13 @@ extern "C" {
// limited private metadata.
//
// References:
// https://eprint.iacr.org/2020/072.pdf
// https://github.com/ietf-wg-privacypass/base-drafts
// https://github.com/WICG/trust-token-api/blob/main/README.md
// * https://eprint.iacr.org/2020/072.pdf
// * https://github.com/ietf-wg-privacypass/base-drafts
// * https://github.com/WICG/trust-token-api/blob/main/README.md
//
// WARNING: This API is unstable and subject to change.
// TRUST_TOKEN_experiment_v1 is an experimental Trust Tokens protocol using
// PMBTokens and P-384.
OPENSSL_EXPORT const TRUST_TOKEN_METHOD *TRUST_TOKEN_experiment_v1(void);
+30 -5
View File
@@ -7,8 +7,8 @@
"include/openssl/bio.h",
"include/openssl/buf.h",
"include/openssl/bytestring.h",
"include/openssl/err.h",
"include/openssl/crypto.h",
"include/openssl/err.h",
"include/openssl/ex_data.h",
"include/openssl/mem.h",
"include/openssl/obj.h",
@@ -21,34 +21,46 @@
"Name": "Low-level crypto primitives",
"Headers": [
"include/openssl/aes.h",
"include/openssl/blake2.h",
"include/openssl/blowfish.h",
"include/openssl/bn.h",
"include/openssl/cast.h",
"include/openssl/chacha.h",
"include/openssl/cmac.h",
"include/openssl/ctrdrbg.h",
"include/openssl/curve25519.h",
"include/openssl/des.h",
"include/openssl/dh.h",
"include/openssl/dsa.h",
"include/openssl/ec.h",
"include/openssl/ec_key.h",
"include/openssl/ec.h",
"include/openssl/ecdh.h",
"include/openssl/ecdsa.h",
"include/openssl/engine.h",
"include/openssl/hkdf.h",
"include/openssl/hmac.h",
"include/openssl/hrss.h",
"include/openssl/md4.h",
"include/openssl/md5.h",
"include/openssl/mldsa.h",
"include/openssl/mlkem.h",
"include/openssl/poly1305.h",
"include/openssl/rc4.h",
"include/openssl/ripemd.h",
"include/openssl/rsa.h",
"include/openssl/sha.h",
"include/openssl/siphash.h"
"include/openssl/sha2.h",
"include/openssl/siphash.h",
"include/openssl/slhdsa.h",
"include/openssl/tls_prf.h",
"include/openssl/xwing.h"
]
},{
"Name": "Crypto interfaces",
"Headers": [
"include/openssl/digest.h",
"include/openssl/cipher.h",
"include/openssl/aead.h",
"include/openssl/cipher.h",
"include/openssl/digest.h",
"include/openssl/evp.h",
"include/openssl/hpke.h",
"include/openssl/kdf.h"
@@ -60,10 +72,23 @@
"include/openssl/conf.h",
"include/openssl/x509.h"
]
},{
"Name": "Cryptographic formats and encodings",
"Headers": [
"include/openssl/cms.h",
"include/openssl/pem.h",
"include/openssl/pkcs7.h",
"include/openssl/pkcs8.h"
]
},{
"Name": "SSL implementation",
"Headers": [
"include/openssl/ssl.h"
]
},{
"Name": "Experimental APIs",
"Headers": [
"include/openssl/trust_token.h"
]
}]
}