Some time ago we started the process of drafting an agreement for use by corporations and other organizations whose employees contribute code and other material to the Mozilla project, and created bug 369879 to track this effort. After some delay (for which I apologize) we now have a draft of such an agreement ready for public comment.

In this post I provide a little bit of background to the proposed agreement (formally known as the Mozilla Corporate Contributor License Agreement, or the Mozilla corporate CLA for short).


First, let me clarify what this document is, and what it is not. The proposed corporate CLA is intended to provide a legal mechanism by which organizations can make blanket donations of code and other copyrighted material to the Mozilla project, either one-time contributions or ongoing contributions. It is independent of and orthogonal to the current CVS contributor form (and its future replacement): The CVS contributor form is signed by an individual person who has commit access, and governs that person’s access to the Mozilla repository; the corporate CLA is signed by a corporate manager, and deals with IP rights to Mozilla code and other materials contributed by that organization’s employees and contractors (none of whom may actually have commit access).

Contributor license agreements are not new to the open source world, but they are new to the Mozilla project. The basic purpose of a CLA is to provide a more formal legal mechanism by which a project can accept contributed code and documentation and ensure that it has all the rights necessary for the project and others to use, distribute, modify, etc., the contributed materials. A good example is the Apache project, which has both a corporate CLA and an individual CLA (for the case where people are contributing code and other materials for which they themselves hold the copyright).

In contrast, the Mozilla project has allowed anyone to contribute code and other materials without first signing any agreements, and has relied on committers to verify that the persons contributing the code actually have rights to do so, and that the contributions are properly licensed under whatever open source license is appropriate (typically the MPL/GPL/LGPL trilicense, but not always).

We started the process of drafting a corporate CLA because some organizations expressed an interest in using this type of mechanism as a way to formalize their contributions to the project. We thought it could also be useful for committers: When accepting patches from corporate employees and contractors, if a corporate CLA is already in place then committers don’t need to do any further verification or seek additional permissions.

Note that our current plan (unless there’s a consensus to do otherwise) is to offer the corporate CLA as an option for organizations contributing to Mozilla, but not to make its use mandatory. Also, at this time we do not plan to require individual contributors to sign a CLA, although we could certainly create a Mozilla individual CLA for optional use if there are enough people interested in having one.

Notes on the draft corporate CLA

As noted above, the proposed Mozilla Corporate Contributor License Agreement is similar in intent to the corporate CLAs used in the Apache project and others. The Mozilla corporate CLA was designed specifically for Mozilla and hence has some significant differences from other CLAs; however the overall format of the CLA, and some of the text, is modeled after existing CLAs wherever appropriate.

As noted in the second paragraph, the corporate CLA is intended to cover any contribution to any project operated under Mozilla Foundation auspices as part of the overall Mozilla project. It does not cover contributions to other projects not directly under Foundation auspices, for example independently-developed Firefox extensions, third-party XUL applications, etc.

The goal of section 2 of the CLA (the copyright license from the contributor) is to get a broad enough grant of rights so that we would be able to choose an appropriate copyright license when distributing the contribution as part of the relevant Mozilla project, whether that be the MPL/GPL/LGPL trilicense, some other open source license, or a Creative Commons or similar license for documentation or other non-code material. We would be also able to update license versions without needing to get additional permissions (for example, if we ever do a new version of the MPL).

Note that section 2 is not a copyright assignment. Contributors would retain copyright to their contributions to the Mozilla project, just as they do now, and would be able to use those contributions as they wish outside the context of Mozilla.

The goal of section 3 of the CLA (the patent license from the contributor) is to get rights sufficient to distribute the contributed material as part of our project distributions under our standard licenses, while making it clear we are not asking corporations to grant unlimited rights to practice their patents in all contexts. Note that section 3 covers not just current patents but future ones as well, so it’s relevant even for corporate contributors who don’t hold any patents at present.

Finally, Schedule A can be used either to make a one-time contribution or ongoing contributions, whatever the organization in question prefers.

Commenting on the public draft

If you have specific comments on the language of the public draft, please feel free to add them to the bug report or send them via private email to me. If you have more general comments or questions on other issues related to the draft CLA, please post in the newsgroup or the corresponding mailing list.