Development

Vendored dependencies

Pinned OpenSSL and libyaml sources, checksums, provenance, and build policy.

Source snapshot 60c72c2bView original
On this page
DependencyVersionRelease SHA-256Upstream license
OpenSSL4.1.050c17baf54cb008f6ce42d50deb4b28050a1aad711636cabd4b241c7e90cc2fdApache-2.0, see openssl-4.1.0/LICENSE.txt
libyaml0.2.5c642ae9b75fee120b2d96c712538bd2cf283228d2337df2cf2988e3c02678ef4MIT, see yaml-0.2.5/License

Archives are retained under dist/ alongside their unpacked source trees. OpenSSL’s checksum was compared with the upstream release checksum. These immutable sources are the build inputs; dependency updates must be explicit changes to the archives, source trees, checksums, and build policy together.

Source locations:

SOURCE_SHA256SUMS records every unpacked source input. The build verifies both archives and the exact source inventory before building, rejecting extra files or directories, missing files, symlinks, special files, noncanonical paths, duplicate manifest entries, and checksum mismatches before running Configure or a compiler. The verifier explicitly lists eight optional empty OpenSSL scaffold directories present in the authenticated release archive but absent from Git checkouts: cloudflare-quiche, fuzz/corpora, oqs-provider, pkcs11-provider, python-ecdsa, tlsfuzzer, tlslite-ng, and wycheproof. These directories must be real and empty when present; their contents, links, and special entries are never allowed. The inventory verifier uses Python 3’s standard library (already installed in the test VM). Intentional source changes must update this manifest as part of their review. Keep source trees unchanged during verification and building; use a clean build after a dependency update.

tools/build/deps.sh verifies release archives and sources, compiles out of tree, and installs static libraries into the project’s build directory. It disables unused OpenSSL applications, tests, QUIC, legacy protocols/providers, dynamic modules, and compression. It does not download anything or use system crypto libraries.

Upstream source formatting, attribution, and license files are preserved.

END OF DOCUMENT / psh/3All documentation