Professional assistance to optimise the management of open source licences.
Calculate the quote
The recent ruling of the Milan Court no. 7112/2023 shed light on a crucial issue in the software world: the correct application of open-source licenses, particularly the 4-clause BSD license. These licenses allow users to access, modify, and redistribute the software, but impose certain conditions that must be respected to ensure proper use of the software.
The case in question involves the company Gestionale Open Srl and the distribution of the management software “Gestionale Open” (GO). The program was distributed under a BSD open-source license, meaning it was free and could be modified and redistributed, provided certain conditions outlined in the license were respected.
In addition to distributing the software as open source, the company also offered additional services such as maintenance, updates, and customization through separate contracts with various clients. However, these versions of the software were not released under open-source licenses, raising some issues regarding compliance with the license.
The dispute arose because the defendant companies were using the GO software without adhering to the conditions of the BSD license. Specifically, among other alleged infringements, the plaintiff claimed a violation of the so-called advertising clause.
To fully understand the ruling and the implications of open-source licenses, it is essential to clarify the concepts of source code and object code, two fundamental terms in the world of programming and software distribution.
Source code is the original text written in a programming language that is understandable and readable by humans. This language can be C, Java, Python, or any other programming language used to write software. The source code represents the instructions and logic that define the behavior and functionality of a program.
For example, if we think of an application that calculates taxes, the source code contains the instructions on how to perform the calculations, manage the user’s income, and generate reports.
Source code is essential for software development and maintenance because it allows developers to read, understand, modify, and update the program. This is why many open-source licenses, like the BSD, require that the source code be made available: to ensure that anyone can study it, modify it, and contribute to its improvement.
Object code is the translation of the source code into a format that can be directly executed by a computer. This translation is performed through a process called compilation. Object code is written in machine language, a binary language made up of sequences of 0s and 1s that a computer’s CPU can understand and interpret. For the computer, the object code is what actually carries out the operations specified in the source code.
Understanding the difference between source code and object code helps to grasp the legal and practical implications of open-source licenses. These licenses not only regulate access and modification of the source code but also set requirements for the handling of object code, ensuring that license conditions are respected in all forms in which the software is distributed.
The term “open source” represents a fundamental approach in software development and distribution, characterized by the availability and transparency of the source code. This model allows anyone to view, modify, and redistribute the code, promoting global collaboration and innovation. However, within the open-source landscape, there are various types of licenses that regulate software usage in distinct ways.
When we talk about open source, we refer to a software development model where the source code is made available to the public. This means that anyone can access, review, modify, and freely distribute the code.
This approach offers several advantages.
Firstly, users can see exactly what the software does and how it works, which can help improve the security and quality of the software. Additionally, by allowing many developers to work on a project, open source fosters a collaborative environment that can lead to rapid innovations and the resolution of complex problems. Finally, users can adapt the software to their specific needs, enhancing its usefulness and relevance in particular contexts.
Permissive licenses, such as the BSD (Berkeley Software Distribution), are a subset of open-source licenses that allow a great deal of freedom in the use of software.
The BSD license allows users to use, modify, and distribute software with fewer restrictions and obligations compared to other open-source licenses like the GNU General Public License (GPL).
Permissive licenses allow users to do almost anything with the software, including commercial use and modifications, without excessive restrictions. In fact, these licenses generally impose few conditions on the redistribution of software, making it easier to integrate into other projects and products.
In the case of the BSD license, the conditions may include the requirement to maintain copyright notices and liability disclaimers in the distributed source code. These requirements ensure that the software is distributed with proper acknowledgment to the original developers and according to the rules set forth by the license.
Additionally, open-source licenses often impose specific obligations regarding object code. For example, the BSD license requires that if the software is distributed in object code (compiled) form, the same license conditions and copyright notices must also be included, ensuring that the protection and conditions of the license extend to the executable form of the software.
However, this freedom is still subject to some limitations. One of the most significant clauses of the 4-clause BSD license, known as the advertising clause, requires that any promotional or advertising material related to the software explicitly mentions the original developers. This clause ensures that the contribution of the original authors is always recognized, even when the software is modified and redistributed by third parties.
Failure to comply with the clauses of the license can result in the loss of the rights granted, with legal consequences for those who use or distribute the software.
In this case, the defendant companies had redistributed the “Gestionale Open” (GO) software without including the mandatory mention. But this was not the only violation: the redistribution also occurred without properly including copyright notices and without complying with other conditions set by the license, such as the inclusion of liability disclaimers and the reproduction of the license clauses in the distributed binary code.
The Milan Court considered these omissions sufficient to constitute a copyright violation. In fact, the BSD license allows for the free use, modification, and distribution of software, but only if all the conditions of the license are respected. Failure to comply with the requirements of a BSD license not only undermines the validity of the license itself but also triggers the application of general and more restrictive copyright laws.
Therefore, failure to comply with the conditions of the BSD license results in the termination of the rights that were granted to users by the license holder. Without a valid or correctly applied license, the use, modification, and distribution of the software are no longer authorized, and activities that were previously legitimate become unlawful.
Once the license is deemed invalid, the software then falls under the “standard” protection of copyright law, which offers stricter and more restrictive safeguards. In practice, the software becomes protected by copyright law like any other intellectual work, with exclusive rights reserved to the author.
Open-source licenses like the BSD are designed to promote the liberal use and distribution of software, but always within a legal framework that recognizes and respects the rights of the authors. Ignoring or violating these conditions can lead to sanctions and harm the collaborative development practices that define the open-source ecosystem.
In summary, non-compliance with the conditions of a BSD license can have serious legal consequences, making it crucial for developers and users to ensure they comply with all specified clauses. This not only helps avoid legal disputes but also ensures that the software can be used and shared correctly and fairly, maintaining the balance between copyright protection and freedom of use.
Margherita Manca