Licensing
Relevant source files
The following files were used as context for generating this wiki page:
The librelp project employs a multi-faceted licensing strategy to ensure the availability of free documentation, the open-source nature of the core library, and the sustainability of the project through commercial options. The project specifically addresses three areas: documentation, source code, and commercial usage rights.
Documentation Licensing
The project's documentation, including the Reliable Event Logging Protocol (RELP) specification and manuals, is licensed under the GNU Free Documentation License (GFDL).
GNU Free Documentation License (Version 1.3)
The GFDL is a copyleft license designed for manuals, textbooks, or other functional documents. It ensures that everyone has the freedom to copy and redistribute the work, with or without modifications, commercially or non-commercially.
Key aspects of the GFDL as applied to librelp include:
- Applicability: Applies to any manual or work containing a notice placed by the copyright holder.
- Verbatim Copying: Allows copying and distribution in any medium, provided the license and copyright notices are reproduced.
- Modifications: Derivative works must be released under the same license.
- Secondary Sections: Allows for specific sections (like "History" or "Acknowledgements") to be handled with specific preservation requirements.
Sources: doc/gfdl.html:1-412, doc/relp.html:10-12
Software Licensing
The core library implementation (librelp) is primarily distributed under the GNU General Public License (GPL) Version 3 or later.
GNU General Public License (GPLv3)
The GPLv3 ensures that the software remains free for all users. It permits users to redistribute and/or modify the software under the terms of the GPL as published by the Free Software Foundation. The license is distributed with the source code in a file typically named COPYING.
Sources: src/relp.h:7-17, src/librelp.h:7-17, src/relp.c:7-17
Dual-Licensing and Commercial Use
Adiscon GmbH provides an alternative for users whose needs are not met by the GPL. If the terms of the GPL are unsuitable (for example, in proprietary closed-source environments), users may obtain a commercial license by contacting sales@adiscon.com.
Sources: src/relp.h:21-24, src/librelp.h:21-24, src/relpsrv.c:21-24
Contributor Copyright Assignment
The project maintains a strict policy regarding contributions. By submitting code or other contributions to the project, contributors assign their copyright to Adiscon GmbH, Germany.
This assignment is a prerequisite for contribution and serves two primary purposes:
- Dual-Licensing Support: It permits Adiscon to manage the dual-licensing model (GPL and commercial) effectively.
- Project Sustainability: It helps fund further development of the free software.
Sources: src/relp.h:26-32, src/librelp.h:26-32, src/relpsrv.c:26-32
License Distribution Model
The following diagram illustrates how different components of the librelp project are mapped to specific licenses and the pathways for commercial acquisition.
The diagram shows the distribution of licensing across documentation, source code, and the contribution workflow.
Sources: doc/gfdl.html:1, src/relp.h:9-24, src/relp.h:26-28
Summary Table of Licensing Terms
| Component | License | Primary Holder | Purpose |
|---|---|---|---|
| Library Source Code | GNU GPLv3+ | Adiscon GmbH | Ensures software remains open-source and free. |
| Documentation/Specs | GNU GFDLv1.3+ | Rainer Gerhards / Adiscon | Ensures documentation is free to copy and modify. |
| Commercial Options | Proprietary | Adiscon GmbH | Supports proprietary use cases and project funding. |
| Contributions | Assigned | Adiscon GmbH | Enables the dual-licensing model. |
| Test Utilities | Apache 2.0 / GPL | Mathias Nyman / Adiscon | Varies; some test files (e.g., tests/receive.c) use Apache 2.0. |
Sources: doc/gfdl.html:5, src/relp.h:7-32, tests/receive.c:13-25
Third-Party Components
Certain files within the project, specifically those intended for testing or specific utilities, may carry different licensing headers. For example, some test-related files are licensed under the Apache License, Version 2.0.
Sources: tests/receive.c:13-25, tests/send.c:13-25
The licensing structure of librelp is designed to protect the freedoms of open-source users while providing a clear legal path for commercial entities and ensuring the long-term maintenance of the RELP protocol implementation.