On the Potential of GPL Violations

So Tarus posted about Cittio and their potential GPL violations last night, and it made Slashdot this morning. Once again I was reminded why I haven’t read Slashdot comments for a number of years. 😉

It all boils down to a bunch of people saying:

  1. “OMG Get a lawyer!!!!”
  2. “It’s the GPL, you’re not a customer, they don’t have to tell you anything! Shut up!” …and…
  3. “DUDE. They totally say they use OpenNMS RIGHT HERE!”

Yes, they do mention OpenNMS on that page. They also say they use OpenNMS 1.0.2 which is either unfortunate for them, or very likely modified in a way that doesn’t appear to be communicated to customers.

By the time I posted a response clarifying things, it was too late and it’s buried way deep in the comments, so I would like to reiterate it here:

So what’s all this then?

Well, that link says they’re running OpenNMS 1.0.2, which, given the questions Cittio employees have asked on the OpenNMS mailing lists in the past, seems very unlikely (although technically possible). If they *are* using 1.0.2, they very likely *have* made modifications, ’cause that code has plenty of bugs that have been fixed in later OpenNMS releases. 😉

One thing that Tarus didn’t really mention is that we (The OpenNMS Group) have had a few folks come to us wanting quotes to compare us to Cittio, and they’ve been rather surprised that Cittio is in fact already using OpenNMS under the covers. The problem is not with them using OpenNMS, OpenNMS is all about sticking not only to the letter but also the spirit of the GPL, and they can do whatever they want with it as long as they’re complying with the distribution requirements of the license. The problem is whether Cittio *is* upholding their side of the GPL, and it’s unclear whether they are — and there are some signs that they might not be.

As for them not having to offer the source until they distribute the software, yes, that’s true, but from what we’ve heard from existing Cittio customers, that is not being made clear to them. Not only that, but while the wording of the GPL may not make it obvious, the FAQ does:

The difference between this and “incorporating” the GPL-covered software is partly a matter of substance and partly form. The substantive part is this: if the two programs are combined so that they become effectively two parts of one program, then you can’t treat them as two separate programs. So the GPL has to cover the whole thing.

If the two programs remain well separated, like the compiler and the kernel, or like an editor and a shell, then you can treat them as two separate programs–but you have to do it properly. The issue is simply one of form: how you describe what you are doing. Why do we care about this? Because we want to make sure the users clearly understand the free status of the GPL-covered software in the collection.

It seems likely that they’ve incorporated OpenNMS into their software at a lower-level than just screen-scraping it’s output and stuffing it into their own UI. At that point, they should be prepared to provide the modified OpenNMS source to their customers. Not only that, but considering how tough companies are on open-source developers accidentally “tainting” open-source code with IP from their closed-source employers, it’s more than a tad annoying that many closed-source companies taking advantage of open-source software are happy to use it, but ignore the spirit of sharing that is part of being in the community. “We won’t say anything, but if you do ask us for the source, we’ll fax it to you.” 😉

Again, all this is unproven, and they’ve not been terribly responsive to private inquiries on the matter, and that’s part of the reason Tarus posted, the question is — what’s the next step?

Update: Tarus also weighed in on the slashdot stuff here.

Share on Facebook

Comments are closed.