Ask Slashdot: When and How To Deal With GPL Violations?
jd writes "There are many pieces of software out there, such as seL4 (kindly brought to my attention by another reader), where the vendor has indeed engineered something that they're entitled to Close Source, but where their closed-source license includes the modifications to GPLed software such as the Linux kernel. Then there's a second type of behavior. Code Sourcery produced two versions of their VSIPL++ image processing library — one closed-source, one GPLed. It was extremely decent of them. When Mentor Graphics bought Code Sourcery, they continued developing the closed-course one and discontinued, then deleted, the GPL variant. It's unclear to me if that's kosher, as the closed variant must contain code that had been GPLed at one point. Here's the problem: complaining too much will mean we get code now that maybe four or five people, tops, will actually care about. It will also make corporations leery of any other such work in future, where that work will be of greater value to a greater number of people. So, the question I want to ask is this: When is it a good time to complain? By what rule-of-thumb might you decide that one violation is worth cracking down on, and another should be let go to help encourage work we're never going to do ourselves?"
Code Sourcery produced two versions of their VSIPL++ image processing library — one closed-source, one GPLed. It was extremely decent of them. When Mentor Graphics bought Code Sourcery, they continued developing the closed-course one and discontinued, then deleted, the GPL variant. It's unclear to me if that's kosher, as the closed variant must contain code that had been GPLed at one point.
It's their code so they are free to decide. It doesn't matter if they once also GPL'd it - the owner still retains copyright. Bitching about that will just mean no company ever will provide both closed and open source versions. You are not magically entitled to them.
If code was produced with a dual license, one GPL, and one closed, then it's perfectly legal to abandon the GPL version, and keep working on the closed version.
Doesn't matter. They created the software. They do not have to keep distributing new versions under the GPL. The 'must remain open' part of the GPL does not apply to the people who hold the copyright. They can change licensing of any future versions at any time.
The owner of the code can do whatever they want with it. Making it GPL doesn't force them to keep making future versions GPL, because they own all the rights. Users of GPL code need to adhere to the terms of the GPL because they don't own the rights, but are rather licensees of the owner.
That being said, if you have a copy of the GPL'd code, you were automatically granted some rights under the GPL which can't be revoked. So you can continue to use the code that you have under the GPL terms for as long as you want.
This is a good point that seems to have been overlooked: if anyone else (outside the organization) made any significant contributions to the GPL version of the code, then they absolutely can demand the proprietary version be released under the GPL, or else their contribution be removed, unless they agreed to assign the copyright back to the the original writers.
"It's unclear to me if that's kosher, as the closed variant must contain code that had been GPLed at one point."
It's absolutely fine. They own the code, they can publish it under whatever license they want. They can also stop publishing a GPL'd version if they want. Anyone who received the GPL version can continue to use it, modify it, etc. under the GPL. They cannot revoke that.
I contacted the FSF's GPL folks some years back about a GPL'ed program that had been re-licensed to a proprietary one. The answer is simple: the copyright _owners_ can decide how to license their own code. Including changing anything any way they like. (In my example, the owners purged Sourceforge and all other reachable repositories.)
You may also remember a dust-up over Mepis Linux not providing source code to what was essentially a repackging of GPL code. The GPL requires that if you _distribute_ GPL code, you must provide the source as well. Stallman said this was to prevent just the situation you're seeing; the original source goes dark for some reason.
So, while it's distressing to have a nice tool go proprietary, Stallman called it right again. He _thinks_ about these things, and is far from being some fanatic. He has a goal and he has been calling his shots right since the whole Xerox debacle in the seventies.
There was another case where the code in question had contributions by multiple people. Those people were the owners of the copyrights, and were able to engage the offender and uphold their rights. So if you own any of that code, complaint is the correct course of action. If not, then there's not much you can do, as they appear to be within their rights.
In my example, the user community put out the word to find the most recent copy of the GPL source, and they have continued development from there. One reason a company would open-source their code is to get the advantage of volunteer developers; you get source, they get code. If the open-source community for that code is 5 people, they may well decide there's no advantage, and that they should reduce their costs by shutting down the resources used for that collaborative development.
The only way something is distributed under the GPL is if the copyright holder does so. If Code Sourcery/Mentor didn't own it, it could not have been released under the GPL. The copyright holder is the only entity that can license the software.
Irrelevant. They bought the copyright when they bought the company that owns the copyright.
Code differences between the closed-source and GPL'ed version are not relevant, assuming they have the copyright to both. The only way they would not have the copyright is if they accepted patches from others and did not have the patch author transfer copyright to them. It is standard practice to only accept patches when the patch author transfers copyright.
Doesn't matter if it was once GPL'ed. They do not have to comply with the GPL because they own it. The only protection you have is they can't revoke the GPL on the previously-released version.
That is only true because you do not own the copyright to all of the code. If you own the copyright, you can distribute it any way you please and you are under no obligation to continue distributing it the way you used to.
Yes. As the owners of the code, they are not using/distributing it under the GPL. They are using using/distributing it under their copyright.
They are perfectly within their rights to do so. And what makes open-source a nice counter to this problem is the open-source version remains open. If people don't like the close-sourcing of the product, they can continue development on the open-source fork. And since they own the copyright on their patches, Mentor can not use those patches in their closed-source version.
Essentially, it doesn't matter if it's "kosher". If people don't like it, they can continue the open-source fork.