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.
Sign-Off and DCO (Developers Certificate of Origin) Acceptance
Every contribution must carry the following sign-off line with your real name and email address:
"Signed-off-by: Firstname Lastname <email@example.com>"
By supplying this sign-off line, you indicate your acceptance of the following GENIVI Certificate of Origin (DCO):
- "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."
If you contribute on behalf of an organization (e.g. your employer), you acknowledge, by supplying the above sign-off line, that "I am authorized to submit this contribution on behalf of the organization holding the copyright".
When you submit code for the first time, the project maintainer will contact you and make sure that you are familiar with the DCO and answer all the questions you might have regarding contributions.
Code Contribution Options
If you or your organization has signed a Contributor License Agreement (CLA) with GENIVI and you are an authorized submitter, then Option 2 applies. Otherwise, Option 1 applies. If unsure about the option to use, please contact firstname.lastname@example.org before submitting any code.
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. Please contact email@example.com for other licensing options if the project license cannot be applied to the code for any reason.
Code Contribution Option 2: Using the CLA
The GENIVI Contributors License Agreement (CLA) is a contractual framework which allows certain authorized submitters to contribute code to GENIVI. If you are an authorized submitter, please clearly mark your contribution as “Provided under the terms of the GENIVI Contributor License Agreement” and indicate which OSS license you recommend GENIVI to apply to your contribution. If you are not an authorized submitter, do not use this option, or your contribution will be rejected.
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 upstream open source project(s). Modifications/extensions to such components should be first provided to the upstream project in the form of patches. Only in case the upstream project has not yet reviewed or rejected a patch, it can be provided to GENIVI.
You must include the exact location and version numbers for all upstream 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 firstname.lastname@example.org.