This is a glossary of terms, it does not include any formal definitions of the included terms. It does, however, link to the formal definition where appropriate. In the event in a conflict between this glossary and the formal definition, the formal definition is always canonical.
Application binary interface
An ABI compatible release allows a shared library to be replaced with a new version or for applications to be relinked against the new library with the expectation that everything will run.
ABI compatible releases are also API compatible.
An alpha release is an early pre-release version. Refer to the versioning policy for specific details.
Application programming interface
An API compatible release, that is not ABI compatible, allows application to be recompiled against the new library with the expectation that everything will run.
Refer to the API compatibility policy for specific details.
A beta release is a late pre-release version. Refer to the versioning policy for specific details.
A bug fix is a fix of functionality of the libraries, modules, applications or the build system. Refer to the stable release updates policy for specific details.
The OpenSSL Bylaws provide the rules under which the OpenSSL project operates. This includes the Committer, OMC and OTC project roles and how decisions are made.
Corporate Contributor Licence Agreement
The CCLA is a legal document that grants certain rights to code contributed as part of the employment of the contributor. All non-trivial contributions on behalf of an employer must be submitted under a CCLA.
Also see: ICLA
Significant modifications for the OpenSSL library or commands are documented in the CHANGES.md file.
Continuous Integration
A suite of tests and checks that are run on every pull request, commit or on a daily basis.
Contributor Licence Agreement
This is a legal document that grants certain rights to your contributed code. All non-trivial contributions must be submitted under a CLA, either an ICLA for personal contributions or both an ICLA and a CCLA for work related contributions.
Also see: Contributor Agreements, ICLA, CCLA
OpenSSL committers are contributors who have commit access to the OpenSSL source code repository.
End-user documentation is documentation intended for users of the OpenSSL libraries and commandline utilities.
What the system does, rather than how it does it. Refer to the testing policy for specific details.
Individual Contributor Licence Agreement
The ICLA is a legal document that grants certain rights to your contributed code. All non-trivial contributions must be submitted under an ICLA.
Also see: CCLA
Linux Documentation Project
Our documentation aims to broadly conform with The Linux Documentation Project's guidelines. Refer to the documentation policy for specific details.
These releases are supported for longer than normal releases. Refer to the versioning policy for specific details.
A major release is one where API and ABI breaking changes are permitted. Refer to the versioning policy for specific details.
A minor release is one where API and ABI breaking changes are not permitted and additional functionality can be added. Refer to the versioning policy for specific details.
Very significant modifications for the OpenSSL library or commands are documented in the NEWS.md file.
OpenSSL Management Committee
This group oversees all managerial and administrative aspects of the project. The OMC is the final authority for the OpenSSL project. The OMC is governed by the OpenSSL Bylaws and the various policy documents.
OpenSSL Technical Committee
This group oversees all technical aspects of the project. The OTC is governed by the OpenSSL Bylaws and the various policy documents.
A patch release is one where API and ABI breaking changes are not permitted and no additional functionality can be added. Refer to the versioning policy for specific details.
Assembly code wrapper written in Perl. This is done to ease compatibility problems across assemblers, platforms and processor revisions. For further details see the perlasm README.
A public interface is any function, global variable, structure or macro declared in a public header file. Refer to the API compatibility policy for specific details.
A stable release is one where the permitted changes are minimised. Refer to the stable release updates policy for specific details.