我对 SCO 的访问
本文描述了我于 2003 年 6 月 17 日访问 SCO 的经历,目的是讨论 SCO 关于 Linux 侵犯其知识产权的声明。我访问了位于犹他州林登的 SCO 办公室,大约一个小时。我与操作系统部门高级副总裁 Chris Sontag 和公共关系总监 Blake Stowell 进行了交谈。为了与他们交谈,我签署了一份保密协议。
本文的简短版本是,正如我在去之前所预料的那样,SCO 的声明未经证实。SCO 愿意向我展示的信息量非常有限,它本身既不能证明 SCO 的声明是真实的,也不能证明其声明是虚假的。
我不会在此处给出完整的背景,因为其他地方已经充分报道了,例如在 Karsten Self 的页面上。截至 2003 年 6 月 17 日的简短版本是,SCO 起诉了 IBM,声称 IBM 窃取了 SCO 的知识产权工作,并将其纳入了 Linux(当我在本文中说“Linux”时,我特指 Linux 内核,而不是完整的发行版)。SCO 是 Unix 的现任所有者,Unix 最初由 AT&T 开发。SCO(以前名为 Caldera)从另一家名为 SCO 的公司购买了 Unix 的权利,该公司后来更名为 Tarantella。SCO 连同 Unix 一起购买了许多合同协议,包括与 IBM 的一份。SCO 声称 IBM 违反了该合同。
SCO 还向大约 1,500 家 Linux 发行版的商业用户发送了一封信,警告他们 Linux 可能是未经授权的 SCO 代码衍生品。也就是说,SCO 声称 Linux 实际上在某种程度上归 SCO 所有,并且可能无法根据 GPL 发行。该信还声称,由于这一点,Linux 用户可能承担法律责任。
SCO 表示将向独立分析师提供 Linux 是 Unix 衍生品的证据。在 Linux Journal 主编 Don Marti 的帮助下,我联系了 SCO,并提出成为这些分析师之一。SCO 同意了,但条件是我签署保密协议并前往其位于犹他州林登的总部。
SCO 的法律案件变得复杂,因为当 SCO 被命名为 Caldera 时,它本身就是 Linux 发行商,并且可能根据 GPL 发行了它现在声称拥有的代码。它也因 SCO 已将 GPL 下的 Linux 代码纳入 UnixWare 的指控而变得复杂。这些问题可能确实会导致 SCO 的法律案件失败,但不是我希望它失败的方式。
我之所以费心访问 SCO,是因为我关心自由软件,特别是 Linux 的发展。SCO 的声明给 Linux 蒙上了一层阴影。我从商业伙伴那里听到猜测,企业 IT 用户将避开免费版本的 Linux,因为他们不愿意承担使用它的法律风险。我认为这对 Linux 或自由软件都不利。
我记得 AT&T 起诉 BSDI 和加州大学的案件,这可以说阻碍了 BSD 的发展几年。事实上,这可以说正是 Linux 流行的根本原因,因为 Linux 的发展没有停滞。SCO 起诉 IBM 的案件在某些方面是对 AT&T 案件的重演,我担心它也可能阻碍 Linux 的发展。
SCO 只愿意与签署了苛刻的保密协议 (NDA) 的人交谈,该协议基本上允许 SCO 声明其提供的任何信息都是机密的,无论签署人是否已经知道,并且没有提供任何可以披露该信息的条件。大多数 Linux 开发人员无法签署这样的保密协议,因为它很容易阻止他们将来再从事内核工作。同样,任何与 Linux 合作的公司的员工都不能签署这样的保密协议。
我自己从未为 Linux 内核做出贡献。但是,我已经从事自由软件工作超过 10 年,包括担任自由软件基金会拥有的项目的维护者。我对自由软件开发的工作方式有很多个人了解。我目前没有受雇于任何人,只是作为承包商从事与 Linux 无关的工作。
因此,我感到自己很适合签署保密协议并分析 SCO 向我展示的信息。虽然 SCO 很容易让我无法为 Linux 内核做出贡献,但它没有理由这样做。无论如何,我没有特别计划进行任何内核工作。
在去见 SCO 之前,我问了三次它是否愿意更改保密协议。我建议 SCO 应该更改保密协议,以允许在法院合法要求披露信息时披露信息,并允许在 SCO 特别同意时披露信息。我还建议应该更改保密协议,以便我之前已经知道的信息不能被视为机密。我收到的唯一回复是 SCO 将我的建议转发给了其律师。
事实证明,SCO 实际上向我展示的机密信息非常少。
如上所述,我会见了 Chris Sontag 和 Blake Stowell。Chris Sontag 几乎做了所有的谈话。总的来说,下面我说“SCO 说”等等,但 Chris Sontag 是实际说话的人。
Chris Sontag 向我展示了一系列 PowerPoint(我假设是)幻灯片并谈论了它们。我在我的笔记本电脑上做了笔记。他听取了我的问题并试图回答它们。尽管我要求提供一些额外信息,但他没有向我展示任何超出他计划的演示文稿。此演示文稿与 The Inquirer 描述的演示文稿不同。这个演示文稿分为三个主要主题:SCO 拥有 Unix、SCO 与 IBM 以及 Linux 被污染。
SCO 辩称,它从旧 SCO 购买了 Unix 的全部权利,而旧 SCO 从 Novell 购买了这些权利。Unix 专利仍然归 AT&T 所有,但 SCO 购买了使用它们的权利。与 Novell 就版权所有权存在争议,但 SCO 声称这已得到解决,SCO 确实拥有版权。
总的来说,SCO 声称已购买了 Unix System V 的所有版本以及 AT&T 开发的所有先前版本的 Unix 的所有权利。
我关心的是自由软件,而不是 Unix 的实际所有权。在诉讼开始时,我相信 SCO 拥有 Unix 的权利,我想我仍然愿意相信这一点。我认为这里的任何法律问题显然都是 Novell 和原始 SCO 之间的购买合同问题,新 SCO 和 Novell 应该或多或少地直接解决它们。
我主要关心的问题是,早期版本的 Unix 的权利是否因源代码的广泛传播而被削弱,包括 Lions 书籍的出版以及直到最近,新 SCO 还在其 FTP 站点上免费分发 Unix 源代码的事实。
SCO 正在起诉 IBM 违反合同、不正当竞争、侵权干预和盗用商业秘密。SCO 现在是 IBM 最初与 AT&T(我假设,但也许是后来的所有者)签署的开发 AIX 的合同的所有者。该合同要求衍生作品仍然是 AIX 的一部分。它还要求 IBM 对源代码和衍生代码保密。允许衍生作品“前提是最终材料被视为原始软件产品的一部分”。
SCO 列出了大约 20 名 IBM 工程师,它声称这些工程师在 Linux 中使用了 AIX 方法。SCO 声称,其中一些工程师在讨论 Linux 问题时,确实在查看 AIX 源代码,并根据 AIX 代码提出建议。
SCO 声称这是不合适的,因为在 AIX 之上构建或使用 AIX 中开发的方法的任何东西实际上都是 Unix 的衍生作品。当我们交谈时,我意识到这是 SCO 论点的关键部分。SCO 声称,在 Unix 之上构建的任何东西本身都是 Unix 的衍生作品。我将在下面进一步讨论这一点。
SCO 说,除了 IBM 之外,Sequent 也为 Linux 贡献了代码,这些代码是从 Unix 衍生出来的。Sequent 现在是 IBM 的子公司。
SCO 还声称,IBM 贡献给 Linux 的一些衍生作品包括 NUMA、RCU、JFS、SMP、性能测量和改进、可维护性、调度程序改进、LinuxPPC 32 位和 64 位支持、逻辑分区支持。在我记下列表的其余部分之前,Sontag 继续展示下一张幻灯片。
我特别询问了 JFS,因为我知道它最初是为 OS/2 开发的。SCO 声称 JFS 最初是为 AIX 开发的,然后移植到 OS/2,然后再移植回 AIX;移植回 AIX 是 Linux 移植的基础。Chris Sontag 说这是直接来自 JFS 网页。我刚刚检查了一下,JFS 网页并不完全同意。IBM 在那里说,虽然 JFS 最初是为 AIX 开发的,但为 OS/2 的开发是一项新的工作;Linux 移植是基于 OS/2 工作,而不是移植回 AIX。使用 SCO 对衍生作品的广泛定义,可以说 OS/2 上的开发是基于原始 AIX 开发的,因为一些相同的人可能参与了它,并使用了他们在 AIX 代码方面的经验。
再次强调,尽管进行了所有这些讨论,SCO 与 IBM 的整个问题并不是我来这里的理由。如果 IBM 确实违反了其合同,我想它应该支付一些适当的罚款。我在计算机界待了太久,不会认为 IBM 在每个问题上都是正确的。但是,SCO 的演示文稿没有向我展示任何明确的证据表明 IBM 确实违反了其合同。显然,IBM 为 Linux 贡献了代码,但对我来说,这些代码是否是 Unix 的衍生品根本不清楚。
在这里,我们来到了问题的核心:是否已将明显源自 Unix 的代码纳入 Linux?不幸的是,SCO 只愿意向我展示一个例子。我看到一个源代码文件,Sontag 说它来自 SVR4,并将其与来自 Linux 的源代码文件进行了比较。代码的相同部分被突出显示。代码中确实存在大量相似之处:非常相似的注释文本、相同的变量名、相同的算法。也存在一些差异,但这两个代码片段都来自同一来源似乎非常合理。
SCO 拒绝向我展示 Unix 文件的修订历史。我指出,这使得不可能判断派生顺序;SCO 同意了,并表示这是法庭案件的发现问题。SCO 表示,它确信该代码没有出现在 BSD 中,并且是在 AT&T 及其后继者内部开发的。
我签署的保密协议禁止我说任何有助于识别相关代码的内容,或任何关于它如何进入 Linux 的内容(我在下面进一步讨论保密问题)。SCO 不允许我键入代码,但我被告知了 Linux 文件名,而且我对这类事情的记忆力很好。
以下是我认为我可以说的关于我所看到的代码的内容。代码相当简单——是我在学校写的那种东西。代码的相似部分大约有 80 行左右。在网上搜索后,我发现了代码的近似变体,在 Linux 发行版以外的来源中具有相同的注释和变量名。该代码不在 Linux 内核的中心部分。该代码似乎不是由 SCO 或 Caldera 贡献给 Linux 的。该代码存在于当前版本的 Linux 内核中。
另外,奇怪的是,我对 SCO 向我展示的代码的回忆与我在任何 Linux 发行版中找到的任何版本都不完全相同。差异在于与 Unix 代码不同的代码部分。文件顶部的版权声明似乎也不同,但可能不是实质性的。但是,由于我没有被允许实际键入代码,因此我的记忆可能在这里对我开玩笑。
如果这是 SCO 唯一一个 Unix 代码出现在 Linux 中的例子,我非常怀疑 Linux 用户有任何真正的法律责任。如果代码确实是从 Unix 派生出来的(这尚未证实),那么它大致相当于在没有许可的情况下从基本的计算机编程课本中键入一些代码。虽然我犹豫是否预测法律系统的行为,但我很难相信任何法官实际上会根据此代码判决赔偿。
当然,SCO 表示还存在许多其他示例,并且它已发现至少 10 到 20 个直接复制的具体示例。SCO 表示存在更多衍生代码。它声称在某些情况下,复制的代码被有意混淆和重新排列以隐藏其来源。我评论说,我认为这种情况很难证明,而且我真的怀疑有人会费心这样做。
SCO 表示,仅在过去一两个月,它才真正开始分析 Linux 内核中是否存在复制的情况。SCO 声称它正在稳步发现更多案例,所有这些都将在法庭上公开。
很难知道如何理解这种类型的论点。SCO 向我展示了一些似乎具有暗示性但显然也无关紧要的东西。SCO 声称有更多我没有看到的证据。人们很容易得出结论,这是 SCO 的最佳案例,它没有强有力的证据。毕竟,如果 SCO 可以向像我这样的人证明其案例,那么它在通过向害怕诉讼的客户许可 Linux 来获取收入方面将处于更有利的地位。但 SCO 可能有其他计划。
我承认 SCO 的例子让我感到不安,因为它暗示了一些东西。虽然它本身微不足道,但它确实表明一些 Linux 贡献者可能对侵犯版权掉以轻心。这很不幸。
演示结束后,我问了几个问题。我问 SCO 预计何时开庭审理。答案是文件披露和证词已经开始。尚未确定开庭日期。
我问为什么 SCO 向 Linux 发行版的商业用户发送信件,但我没有得到令人满意的答案。SCO 表示,这封信是为了让 Linux 用户意识到它认为 Linux 被污染并包含未经授权的知识产权。这封信是为了告诉 Linux 用户他们可能承担一些责任,应该向律师寻求建议。SCO 说 Linux 用户随后可以经历与 SCO 目前正在经历的相同的发现过程——但是,当然,用户不能,因为他们没有 Unix 源代码。我的猜测是,这些信件是为了为 Linux 许可做准备。
我问 SCO 是否有任何计划将 Unix 代码许可给 Linux 用户,以消除责任。SCO 表示它目前没有计划。它希望提出一些非商业用途和教育用途将是免费的方案,但对于商业用途,它希望获得一些报酬。SCO 表示,它还没有提出计划,因为它仍在努力弄清楚问题的规模。SCO 希望最早在 7 月份提出某种解决方案。
SCO 评论说,Linux 没有确保进入其中的 IP 所有权的机制。它说大多数 Linux 开发人员都是光荣的,但一些商业实体正在为了自己的利益而违反规则。
我询问了 AT&T 和 BSDI 之间的诉讼。该诉讼并非以判决结束,而是由当事方之间解决的,并且和解在很大程度上是保密的。SCO(我推测是 AT&T 方面和解的合法继承人)声称,和解协议的某些方面尚未执行,但不会进一步描述。SCO 尚未调查自由 BSD 在其看来是否是 Unix 源代码的合法衍生品。我假设如果 SCO 可以掌握 Linux 的情况,它将接下来追查自由 BSD。
我停顿了一会儿,试图思考我的下一个问题,Chris Sontag 说他还有另一个会议要参加,然后离开了。
Blake Stowell 问我,如果我拥有一些专有代码,并且其他人未经许可正在使用它,我会怎么做。我说 Unix 已经广泛分发多年,已在书籍中出版,并且毕竟实际上不是由 SCO 的任何人编写的。我说我不认为这很容易与更传统的情况相提并论。顺便说一句,Blake Stowell 曾在 Lineo 工作,并于 2001 年加入 Caldera。他同意公司自那时以来发生了根本性的变化。
会议到此结束。本文的其余部分更详细地讨论了一些相关主题。
SCO 起诉 IBM 的案件的关键似乎是对衍生作品的广泛概念。SCO 基本上是在争辩,在 Unix 之上开发的任何代码都是 Unix 的衍生作品。它正在争辩,SCO 现在拥有的与 IBM 的合同明确规定,任何 Unix 衍生作品都必须保密。
SCO 正在使用非常广泛的衍生作品概念。当我提出异议时,SCO 表示这将由法院决定。确实,据我所知,还没有法院裁定一个软件是否是另一个软件的衍生品。问题是法院是否会裁定,即使是 IBM 完全开发的软件(例如 JFS),也是 Unix 的衍生作品,因为它是在 Unix 系统组件中开发的。我想我们都同意带有 JFS 的 Unix 是 Unix 的衍生作品;问题是 JFS 本身是否是衍生作品。
总的来说,问题在于衍生作品和独立作品之间的界限在哪里。所有在 Unix 上运行的程序都使用 Unix API;它们因此成为衍生作品吗?大概不是。但是,当编写在 Unix 上运行的程序时,如果我可以访问 Unix 源代码,我可能会查看它;这会使我的程序成为衍生作品吗?从 SCO 的评论来看,它可能会声称情况如此。
我不是律师。但是,我希望法院不会接受 SCO 对衍生作品的广泛定义。我认为这对自由软件和整个软件开发来说都是危险的。软件通过扩展他人完成的工作而蓬勃发展。如果向现有软件添加组件意味着该组件归现有软件的所有者所有,那么很少有人会添加组件。这对任何人都没有好处。
值得注意的是,如果法院确实接受如此广泛的衍生作品概念,它将削弱 SCO 对 Linux 代码被复制到 UnixWare 中的指控的辩护。这似乎使 SCO 陷入两难境地;我不知道它打算如何解决它。
我问了几次为什么 SCO 对一切都如此保密。答案并没有特别令人信服。SCO 表示,它正在对其证据保密,因为它是法律诉讼的一部分。证据将在法庭上出示。SCO 不希望在法庭审理之前在公共场合审理它。
SCO 表示,尽管 Unix 代码广泛分发,但始终是在保密协议下提供的。它表示,在各方上法庭之前,它不希望 Linux 社区删除相关代码。SCO 认为这不仅仅是更改几行代码。如上所述,它认为大块代码是衍生品。它辩称,即使是完全替换也将在一定程度上基于之前的努力,因此至少在 IBM 合同的条款下,它本身也是衍生品。
我的猜测是 SCO 不希望必须公开其任何证据。我的猜测是,它更愿意与 IBM 和解,并利用责任的幽灵从 Linux 用户那里获得许可收入。毕竟,在法庭上 SCO 可能会输。目前的局面让人们感到紧张,对 SCO 更有利。我不知道我是否正确,如果我正确,我也不知道它会如何发展。
Chris Sontag 在与我交谈时显得很有信心。但是,我的感觉是 SCO 知道自己手头很虚弱,它正在尽其所能地强力出牌。我预计 SCO 会继续加大在媒体上的压力,宣布 Linux 许可计划,并希望开始获得更多收入。
IBM 是 IP 敲诈勒索策略的行家里手。例如,请参阅 这篇 福布斯 文章,了解 IBM 在 Sun 的早期对 Sun 的敲诈勒索。对于 SCO 来说,使用 IP 攻击 IBM 有点像试图吃掉一只活老虎。
如果 IBM 开始对这场诉讼感到紧张,它将释放其专利组合。SCO 肯定会违反许多 IBM 专利。除非 SCO 和 IBM 之间存在一些预先存在的专利协议,否则 SCO 肯定会在 IBM 的反诉中败诉。
但是,对于 IBM 来说,针对 Unix 释放其专利组合对自由软件来说不是一件好事。毕竟,Linux 可能也违反了许多这些专利。一旦野兽被唤醒,谁知道它何时或是否会再次入睡。在这种情况下,最好的希望是 IBM 将认识到杀死会下金蛋的鹅的危险,并自行放弃。
值得注意的是,运营 SCO 的人和他们的律师可能不了解软件专利的力量。以我的经验来看,很少有业内人士了解任何有规模的程序在多大程度上违反了专利。今天的软件行业之所以能够生存下来,只是因为存在一项不成文的协议,即不要过多地惹事生非。我们必须希望这场诉讼不是那把搅动太多的勺子。
Chris Sontag 在离开之前说的最后一件事之一是 SCO 不反对 Linux。SCO 喜欢 Linux。SCO 希望达到 Linux 可以向前发展的程度。
这可能是对自由软件过程的严重误解。如果 Linux 变得负担过重,以至于商业用户必须支付费用,我预计许多独立开发人员将停止从事它。Linux 开发将放缓,并可能最终停滞不前。SCO 的负责人可能不明白这一点。
另一方面,Chris Sontag 的声明可能只是愤世嫉俗和具有操纵性的——人们为了使恶意声明看起来公平和思想开放而说的那种话,就像“乔是一个嗜血的食人族,但我喜欢他这个人”一样。
我不是 Linux 维护者。但我想建议这个案例让 Linux 维护者认真对待版权文书工作的问题。
首先,我认为所有 Linux 贡献者都应该考虑自己的贡献。他们是否有可能贡献了直接从 Unix 或任何其他非自由来源复制的代码?这里我不是在谈论 SCO 扩展意义上的衍生作品;我谈论的是直接复制,例如可能(或可能没有)发生在 SCO 向我展示的一个例子中的情况。任何此类直接复制的代码都应以不同的方式重写,可能由其他人重写。
同样,我认为所有 Linux 维护者都应该考虑他们负责的代码,并让自己相信贡献者没有进行任何直接复制。我个人怀疑有人会故意将非自由代码复制到 Linux 中。但是错误可能会发生。
删除任何复制的代码(如果有的话)不会影响针对 IBM 的诉讼,但可能会影响 Linux 用户的法律责任问题。
我的下一个建议是,Linus 和 Linux 维护者成立一个基金会来持有 Linux 的版权声明。Linus 过去已经明确表示,他不希望所有 Linux 版权都集中在一个地方。虽然这意味着没有一个可以因违反 GPL 而被起诉的单一当事方,但我的印象是 Linus 认为这是一个优势。
但是,或许可以要求所有重要的 Linux 贡献者签署文件,声明他们拥有他们贡献的代码,并要求他们的雇主也签署文件。这将类似于自由软件基金会使用的文书工作,但实际上不会是版权转让。
此类文书工作不会消除错误的可能,也不会消除恶意代码插入的可能性。但我认为这将大大降低此类事件发生的可能性。它将迫使人们思考这个问题。它还可能允许将复制的法律责任从 Linux 用户转移到 Linux 贡献者,这对用户来说是有好处的。贡献者风险的增加可能会使他们更加谨慎,但希望不会太谨慎。
有必要有人监控接受的贡献,并确保在每次发布之前,所有新贡献者都签署了版权声明。期望 Linus 或其他中央维护者来做这项工作是不合理的。
我愿意帮助建立这样一个基金会,尽管我认为不需要我的帮助。FSF 在 Unipress 因 Gosling Emacs 代码而发出威胁后开始要求版权转让。或许 SCO 的诉讼意味着 Linux 需要开始收紧其 IP 流程。在理想的世界中,这本不必要,但不幸的是,我们都必须生活在这个世界中。
我从旧金山起飞的飞机晚点了 90 分钟。我在午夜过后才到达盐湖城,并且开车去酒店时迷路了。第二天早上,我把钥匙锁在了车里。幸运的是,Avis 维修服务在 25 分钟内带着新钥匙出现了,但我因此迟到了 20 分钟才到达 SCO。为了避免一开始就看起来像个十足的白痴,我告诉 Blake Stowell 我的“租车出了问题”。他对此非常友善。
那天下午我乘坐的飞机离开盐湖城后不久,就撞到了一只海鸥。我们返回了机场。着陆后,飞行员告诉我们,挡风玻璃上现在有一条小裂缝,飞机哪里也去不了了。下飞机后,我们能够回头看看飞机——景象相当血腥。我旅行经验丰富,立即拿起手机预订了下一班飞机的座位。当两个小时后那架飞机起飞时,仍然有很多人排队等着去旧金山。
总而言之,这次旅行我花费了大约 350 美元,加上 25,000 飞行常客里程,以及离开家人 24 小时。多年来,免费软件给了我很多,我可以负担得起。如果您想捐款支持我的旅行,请向自由软件基金会、电子前沿基金会或国际特赦组织捐款。
电子邮件:ian@airs.com