Guidelines for Submitters
The following two options exist for contributing code to GENIVI. In both cases, the guidelines for handling third- party IP in contributions apply (see below). GENIVI has defined a process for evaluating and accepting contributed code. This includes automated code scanning to detect IP issues related to the code. Please contact firstname.lastname@example.org for details.
Code Contribution Option 1: Using the project license
Code contributions can be submitted to the GENIVI open source project mailing lists, if they are licensed under the project's open source license.
By adding the following sign-off line with your real name and email address to the submission email
"Signed-off-by: Firstname Lastname <email@example.com>"
you indicate your acceptance of the following:
- GENIVI Certificate of Origin (COO)
"By making a contribution to this project, I certify that:
a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or
b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or
c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.
d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent wih this project or the open source license(s) involved."
- Authorization (only for contributions on behalf of a corporation)
"I am authorized to submit this contribution on behalf of the corporation holding the copyright"
In addition, a disclosure document must be provided, if the submission contains third-party code (see below).
Please contact firstname.lastname@example.org for other licensing options if the project license cannot be applied to the code for any reason.
If you are submitting code on behalf of a company that has signed a Code Contribution License Agreement (CLA) with GENIVI, this option does not apply.
Contribution Option 2: GENIVI Alliance Entity Contributors License Agreement
The GENIVI Alliance Entity Contributors License Agreement (CLA) is a GENIVI-approved document to support contribution of original code to GENIVI. The CLA is primarily designed for corporate contributors and must be signed by a person with authority to act on behalf of the contributing company.
The benefits of using a CLA include:
- It clearly states what is required by the contributing company and by GENIVI
- It serves as a license for the code until the code is accepted by GENIVI and an open source license is applied
- It allows a company to "sign once" and use it for all future contributions
- It allows a company to name the individuals who have authority to submit code on behalf of the company.
To properly execute a CLA, a member company must do the following:
- Complete all company information fields on page 4
- Have the CLA signed and dated by an person authorized to act on behalf of the company
- Identify at least one individual on page 5 who is authorized to submit a code contribution on behalf of the company.
Note that GENIVI will limit submitters of code to only those listed on page 5 and code submitted by other individuals on behalf of the company will not be accepted. If this list changes over time, an update signed by an authorized person submit should be sent to email@example.com.
Completed CLAs should be scanned and emailed to firstname.lastname@example.org. A countersigned copy of the CLA will be returned by email. From this point in time, submissions under the CLA will be accepted by GENIVI, e.g. by sending the code to the project's email list.
Guideline for Handling Third-Party IP in Contributions
As a general rule, only original code should be contributed to GENIVI. Third-party open source components which are available elsewhere (e.g. the Linux kernel or the C libraries) will be obtained by GENIVI directly from the other open source project(s). Modifications/extensions to such components should be provided to GENIVI in the form of patches. The submitter must include the exact location and version numbers for all outside open source components that are required for the contribution to build and run.
If the contribution "reuses" code snippets from other open source projects which were directly incorporated in the contributed source code files, a disclosure document must be provided with the contribution, providing details about the incorporated code (e.g. project name, version) and the applicable open source license(s). The GENIVI Third-Party Disclosure Document template
GENIVI will reject a contribution containing non-original code, if
- no disclosure document is provided
- the license(s) governing the non-original code are not compatible with the GENIVI project license or licensing policy
- an automated code scan performed by GENIVI during the acceptance process, produces results that differ from the information provided in the disclosure document
If you have questions about the handling of third-party IP, please contact email@example.com.