FAQ: Common Development and Distribution License (CDDL)
What is the CDDL and why was it chosen for the
OpenSolaris program?
CDDL is the Common
Development and Distribution License. It is an open source license
that takes the well-known Mozilla Public License (MPL) and makes it
reusable without modification. We wanted a copyleft license that
provided open source protections and freedom and also enabled creation of larger works for commercial purposes.
Has the CDDL been approved by the OSI?
Yes. The CDDL meets the requirements of the
Open Source
Definition and has been approved as an open source license by the
Open Source Initiative.
Why did you write another open source license?
We reviewed a number of existing open source licenses but were unable
to find one that was appropriate for the OpenSolaris source code. We
modified the license that most closely met our needs (MPL) and feel our
changes made contributors' rights even clearer. We designed the CDDL to
be reusable and attractive to other open source projects with similar
goals.
Will all of the Solaris operating system be released under
the CDDL?
We plan to release as much of the source code as possible under the CDDL.
Third-party open source used in the Solaris operating system will remain
available under its associated license(s). For example, the version of
Perl included in the OpenSolaris source
base is licensed under the Perl Artistic License. And code that can not be made available as open source may
be provided in binary form. Refer to the roadmap for information about the planned
availability of particular technology.
Why did you base the CDDL on the MPL?
The MPL is a well-regarded license and had several attributes Sun was
looking for, including:
- The requirement that the source of modifications be made available under
the open source license;
- The ability to distribute executables under a different license;
- A "file-based" definition of modifications and covered software;
- An explicit patent license.
What improvements over the MPL did you make?
In addition to retaining all desired features of the MPL (detailed
above), the CDDL is designed to be reused by others and contains several
improvements to make it more general:
- Required notices were simplified;
- The defnition of Modifications was clarified to make it easier for people to understand what is covered by the license and what is not;
- Concerns about choice of law, venue and jurisdiction were addressed;
- An option to make the Covered Software available under a specific version of the license was added.
A summary description
of the changes and the redline diffs
(PDF) between the MPL 1.1 and the CDDL are provided.
If you wanted a copyleft license, why didn't you just
use the GPL or LGPL?
We needed an open source license that allowed files released under the
license to be linked with files released under other licenses. While a
license like LGPL would allow this for dynamically-linked code, we also
needed to be able to release software that statically links source files
available under different licenses. In addition, we wanted to allow
others to add externsions to OpenSolaris with different license terms.
This was only possible under a license like the MPL; however, we could not
use the MPL because it is not a "template" license allowing reuse by
others. Consequently, we crafted a variant of the MPL, taking the
opportunity to make it a template license as a step towards reducing
license proliferation for others finding themselves in a similar
position.
What does the CDDL say about patents?
The CDDL provides an explicit patent license for code released under the
license. This means that you can use, modify, and redistribute code released
under CDDL without worrying about any patents that the contributors of the
code (including Sun) might have on the contributed technology. The license
also includes a provision to discourage patent litigation against
developers by revoking the rights to the code for anyone initiating a
patent claim against a developer regarding code they have contributed.
Can code licensed under the CDDL be combined with code
licensed under other open source licenses?
CDDL is file-based. That means files licensed under the CDDL can be
combined with files licensed under other licenses, whether open source or
proprietary. However, other licenses may have different restrictions which
may prevent such combination; it is your responsibility to read and
recognize such restrictions.
What about dual licensing? Can I license my code under the
CDDL as well as another license?
Yes, if you are the copyright owner for the code you can choose to license
under multiple licenses, including the CDDL.
If I use code licensed under the CDDL in my proprietary
product, will I have to share my source code?
Yes, for any source files that are licensed under the CDDL and any
modifications you make. However, you don't need to share the source for
your proprietary source files.
If I contribute code to the OpenSolaris source base, what
will I be asked to do as far as licensing is concerned?
Code contributed to the OpenSolaris source base must be made available
under the CDDL, and you must submit a signed
Contributor Agreement.
Projects may have different contribution submission processes. Contact
the Project Leaders - listed on the project page - for specifics.
May I take portions of the OpenSolaris source code and use
it in another code base?
Yes, you can use the OpenSolaris source code in other projects as long as
you comply with the terms of the CDDL.
Can I redistribute or sell the OpenSolaris source code with my modifications?
Yes, you can modify and redistribute code licensed under the CDDL,
including charging for it if you wish. However, you will need to meet the
terms of the CDDL, including making the source of your modified code
available under the CDDL.
May I use the OpenSolaris source code or binaries commercially?
Yes, you may use the OpenSolaris source code in commercial products. Note
that if you distribute binaries built from code released under the CDDL, you
will need to meet the terms of the CDDL and distribute the corresponding
source code under the CDDL. See the license for details.
Can I use the CDDL for my project (unrelated to the OpenSolaris program)?
Yes, the license is intended to be reusable by anyone.
Can Sun ever take away the OpenSolaris source code?
No. The code is available to the community forever.
|