表一:
|
相同点 |
1、要求公开对源代码所做的修改 |
|
2、要求根据开源许可协议公开对源代码所做的修改 |
|
3、允许根据不同的许可协议发布可执行程序 |
|
4、明确认可专利授权 |
|
5、出现专利侵权诉讼时,许可证授予的权利自动终止。 |
|
不同点 |
MPL |
CDDL |
分析 |
|
整体概念 |
“修改(Modification)” |
后者将“可执行程序”也覆盖到“修改”的范围中去,扩大了许可证的保护范围。 |
|
1.9“修改”指的是对源代码或先前的修改版本的内容结构所做的任何增加或删除。当覆盖代码作为一系列文件发布时,修改程序是指:
A.对包含源代码和在先修改程序的文件的内容所做的任何增加或删除。
B.包含源代码和前期修改的任何部分的新文件。 |
1.9.“修改”指下列源代码或可执行程序形式之一:A.对包含原创软件或在先修改版本进行添附、删除或修改所得到的文档;
B.包含原创软件或在先修改版本一部分的新文档;
C.根据本许可条款散布或以其他渠道传播的新文档。
|
|
Code |
Software |
扩宽了CDDL许可证的应用范围:既包括源代码(Source Code),也包括可执行程序(Executables) |
|
对“商业用途”(Commercial Use)的定义 |
删除 |
或许SUN公司认为,软件的用途本来就有两种:商业目的和非商业目的,“我们无意使人产生误解,认为开源许可协议执意在商业用途和非商业用途中划分出明显的界限。” |
|
具体条款 |
1.1“贡献者”指每一个创建修改程序或对修改的创建程序做出贡献的实体。 |
1.1“贡献者”指每一个创建了修改程序或对修改程序的创建做出贡献的个人或实体。 |
后者提出“个人”也可作为“贡献者”,这似乎预示着SUN公司更加注重个人开发者对于软件的意义,或许今后会在CDDL的社区建设中投入更大的支持。 |
|
1.11“源代码”指的是适于对覆盖代码进行修改的形式,包括它所包含的所有模块,还有任何附带的接口定义文件和控制可执行程序编译和安装的脚本,以及源代码与原创性代码或者其他贡献者选择的众所周知的可利用的覆盖代码的差别比较清单。 |
1.12“源代码”指(a)修改计算机软件代码时的常用形式或(b)包括或附加于上述代码中的相关文档。 |
后者对“源代码”的定义更为简化,但包括的范围却更加广泛,且具有了随着今后技术的发展不断伸缩的弹性空间。 |
|
2.源代码许可 |
2.许可 |
前者的“许可”只限于源代码,而后者在改变了这一章的名称后,可将许可的对象扩展到包括源代码和可执行程序在内的更大范围。 |
|
3.2公开源代码
所有由你创建的修改程序或为其创建做出贡献的修改程序,必须根据本许可协议公开其源代码。可以通过与可执行程序在相同的介质上提供,也可通过电子发布机制提供。…… |
3.1公开源代码
所有以可执行程序形式传播或以其他方式公开的覆盖代码,其源代码形式均需同样公开,且该源代码只能依本许可条款公开。当传播或以其他方式公开覆盖代码时,必须随源代码副本附有本许可协议的副本。必须通知上述可执行程序覆盖代码的接收者,如何以合理方式或通常用于交换软件的方式获得上述覆盖代码的源代码。 |
MPL要求创建修改程序的人只需公开该修改程序的源代码即可,这样做的结果是,他人要想得到一套完整的源代码,必须去搜索不同贡献者公开的修改程序的源代码,并把这些源代码整合在一起才能继续利用;而CDDL的规定则明显简化了“重复利用(reusable)”的过程,由于它要求任何根据本许可协议发布覆盖代码的人必须公开其发布的全部覆盖代码的源代码――而非仅公开他所做的修改的那部分源代码,因此,可以通过一次公开便得到全部的源代码。 |
|
6.1新版本
Netscape通信公司(Netscape)可能不定时发行许可证修订的或新的版本。每一版本都有不同的版本号。
|
4.1新版本
SUN公司是本许可证原始版本的创始人,并有权随时修改并发布本许可证的新版本。…… |
后者强化了SUN公司作为许可证创始人及唯一有权修改者的地位。 |
|
6.2新版本的效力
一旦覆盖代码在某个特定的许可证下发行,你可以继续在那个版本的条款下使用它。你也可以选择在Netscape的后继许可证下使用覆盖代码。…… |
4.2新版本的效力
你可以根据最初收到覆盖代码时的许可证版本继续使用、发布或以其它方式公开覆盖代码。如果最初开发者在原创软件中附有声明,禁止根据后续许可版本发布或公开其原创软件,则只能根据收到该软件时的许可证版本进行发布和公开。…… |
在许可证中规定双方有权依约定取消采用许可证后续版本,这是CDDL的一个开创,也是其它许可证从未规定的(以前的许可证大多如MPL一样,允许使用后续版本或当时版本)。CDDL这一规定的积极意义在于:1、即使SUN公司发布的后续版本与先前版本有冲突,也不会影响使用先前版本的贡献者和开发者的意志选择;2、由于CDDL也同时表明了,可以根据当事人意志排除这一规定,相当于赋予了当事人更大的选择权,也提高了CDDL重复利用的价值。 |
|
8.2 b)某些软件、硬件或者设备,而不是当事人的贡献者版本,直接或者间接的侵犯某项专利权,那么任何根据2.1(b)和2.2(a)中当事人所授予你的权利将在你对当事人创建的修改程序进行制作、使用、出售、分发等自行为之日起被撤销。 |
删除 |
MPL本条规定的后果是:只要针对硬件或设备的任何一环提起专利诉讼,许可的权利便终止。而CDDL仅将权利终止的条件限定在就“代码“本身提起的专利诉讼。这一规定明显地给CDDL的社区成员吃了一颗“定心丸”,同时减少了诉讼出现的机率。但我们也应当看到,SUN公司目前主推的是操作系统Solaris,相对于Netscape的主力产品(主要是浏览器),应用Solaris“触犯”硬件设备专利权“雷区”的可能性更大,因此,这样的一条“硬件专利条款”对于CDDL来说也就显得尤为重要。 |
|
11.其他
……本许可受加州法律管辖(除非任何延及法律之外的条款或者其他),但与法律冲突的条款除外。在发生诉争时,如果至少有一方是在美国从事业务的公民,特许或注册的商业实体,则所有关于本许可证的诉讼的管辖法院都是北加州地区的联邦法庭,管辖地在圣塔克拉拉县…… |
删除对管辖地及适用法律的规定。 |
MPL规定出现诉讼应适用加州法律,而CDDL排除了本项管辖地规定,不难看出后者的最终目的是增强CDDL的普适性,但这也为日后的诉讼采用何种准据法留下了困境。 |
|
|
|
|
|
(四)对CDDL许可证的整体评价
在SUN力排众议推出CDDL许可证并用它推广Solaris之前,商业界出现了两件大事:一是IBM公司宣布放弃其所拥有的500项专利;二是SUN公司极力推广其倡导的“Open Standard”行动正式启动。这似乎很难让人不把CDDL许可证的诞生同两件大事联系起来进行对比。
首先,虽然IBM公司放弃专利的宣布也引来了一些非议,比如说其放弃的并非核心专利、IBM仍有可能利用其他未放弃的专利就其产品收取高额费用等等。但无可否认的是,IBM毕竟对世界做出了这样一个“放弃专利权”的姿态在,且这种放弃是毫无条件的。与之相比,SUN公司的“许可使用专利”只是一种附条件的“暂时许可”,尽管SUN公司曾经多次在各种场合承诺“不会起诉用户”,但在这个商定社会里,无论是企业还是个人都不能放弃自我保护的意识。毕竟,GPL许可证的“开放”是一种追求自由的理念;而商业公司的“开放”则是一种改变商业模式的游戏规则。破坏“自由的理念”至多只能受到道义上谴责,而打破游戏规则却要承担实实在在的法律后果。
其次,SUN公司在推广其Open Standard的宣言之后不久推出了CDDL许可证,这两者的关系似乎也颇令人寻味。CDDL许可证的全称是Common Development and Distribution License,即“通用开发和发布许可”,这一命名习惯似乎与其它的商业公司许可证不同。如MPL许可证是以公司名称Mozilla命名,而NOKOS则是因Nokia公司而得名。与之相比,CDDL许可证一上来便摆出了“冠盖”开源社区的架势,其力图成为“通用”协议的气势难以小视。非但如此,CDDL的英文发音为kuddle,与“摇篮”(cuddle)同音。这是否意味着推出CDDL许可证只是SUN公司的开放标准计划的一个开场曲,而CDDL将成为孕育未来的通用许可证的摇篮呢?虽说这一切只是揣测,但考虑到CDDL许可证里强烈的通用性、可重用性特征[8],再加上目前开源许可协议种类繁多的混乱局面,我们不难想到CDDL许可证的意图是在未来的开源世界扮演一个“一统天下”的角色。正如SUN公司负责操作平台部门的副总裁Glenn Weinberg所说:“有了CDDL,同类社区的其他项目和许可就无需再创建新的许可协议。[9]”
无论怎样,就像统一标准是一件好事一样,开源许可证的统一总要强于分散和混乱的现状,况且“天下大事分久必合”,未来总会出现一种具有“模板”性质的开源许可证,它成为开源软件许可证的统一标准或许只是时间的问题。而我们唯一可以关注和影响的,只是什么样的许可证能够承担起这样的责任。从目前来看,大多数网上开发者寄希望于GPL,然而GPL似乎无意在短时间内通过修改具体条款以担此重任;SUN公司有意于完成统一大业,然而其诚意与能力仍有待时间的检验。但无论是否有这样一个统一许可证出现,无论由谁来承担这样一个“终结者”的角色,必然会影响到Linux和其他开源软件的未来。
--------------------------------------------------------------------------------
[1] 《OpenSolaris的精神本质》
http://blogs.sun.com/roller/resources/GavinLu/OpenSolaris.html
登录时间:2005-6-25
[2]《OSI 认可 CDDL 授权 Sun 释出部份 Solaris 程序代码》
http://www.openfoundry.org/article.pl?sid=05/02/18/0638206&mode=thread
登录时间:2005-6-25
[3] 《Open source with IP protection: Have it both ways with Sun's CDDL》
http://searchenterpriselinux.techtarget.com/originalContent/0,289142,sid39_gci1067452,00.html
登录时间:2005-6-25
[4]《开原码组织要减少授权种类》
http://taiwan.cnet.com/news/software/0,2000064576,20096510-20000746c,00.htm
登录时间:2005-6-25
[5] 《Sun新许可协议:禁止Solaris和Linux“异花授粉”》http://www.zdnet.com.cn/news/softwares/story/0,3800055189,39318160,00.htm
登录时间:2005-6-25
[6]《开放Solaris之战》
http://tech.sina.com.cn/it/2005-04-20/1141588198.shtml
登录时间:2005-6-25
[7] See “we didn't want anyone to see the definition and conclude that the license makes a distinction between commercial and non-commercial use”--<Description and Rationale>
[8] 见前文表一
[9] 《CDDL协议之诞生》
http://www.cnw.com.cn/store/detail/detail.asp?articleId=12958&ColumnId=2094&pg=&view=
登录时间:2005-6-25