违反开源许可协议可能导致法律诉讼、经济处罚和声誉损害。 开源许可协议是具有法律约束力的协议,未能遵守其条款可能导致诉讼、禁令或采取纠正措施的要求。 具体后果取决于许可证类型(例如,MIT、GPL、Apache)和司法管辖区,但常见的结果包括被迫发布专有代码、支付损害赔偿金或停止分发违规软件。
例如,像 GNU GPL 这样的许可证要求衍生作品以相同的许可证发布。 如果一家公司在专有软件中使用 GPL 许可的代码而不共享源代码,则版权所有者可以起诉。 2008 年,自由软件基金会 (FSF) 就思科在其路由器中分发 GPL 许可的代码而不遵守许可条款一案与思科达成和解。 思科不得不发布修改后的源代码并任命一名内部合规官。 同样,违反 MIT 或 Apache 等许可许可证(主要需要署名)可能会导致追溯信用的要求,或者如果疏忽损害了原始开发者的声誉或收入,则要求经济赔偿。
除了直接的法律风险之外,违规行为还会损害开源社区内的信任。 开发人员可能会避免具有不合规历史的项目,公司可能会面临公众审查。 例如,2021 年,软件自由保护协会审核了几家公司是否存在 GPL 违规行为,从而导致合规修复和对开源规范的公开承诺。 即使案件没有提交法院,解决违规行为通常也需要花费高昂的工程费用来审核代码库、重写组件或协商和解。 事先主动合规远比事后管理这些影响要简单得多。