|
|
Subscribe / Log in / New account

Gray areas in software licensing

We're bad at marketing

We can admit it, marketing is not our strong suit. Our strength is writing the kind of articles that developers, administrators, and free-software supporters depend on to know what is going on in the Linux world. Please subscribe today to help us keep doing that, and so we don’t have to get good at marketing.

February 15, 2012

This article was contributed by Dave Neary

This year saw a new addition to FOSDEM in Brussels - "legal issues" gained its own DevRoom and joined the long list of topics presented and discussed during the conference. I was privileged to be asked to speak at the track, and when Bradley Kuhn asked me what I'd like to speak about, my initial reaction was the theme: "how much I hate having to care about the law".

Developers hate the law. Or, to be more precise, I hate the law. At least, whenever I'm working on a software project. In my opinion, every time a software developer has to stop and think about the law, that's a bug. Either he wants to do something that he shouldn't be doing, or the law is getting in the way of him doing something which it would be reasonable for him to do.

In case it's not obvious yet, I am not a lawyer, so nothing in here should be taken as legal advice. But, over the years, while working as a GIMP developer, as community and product manager of the OpenWengo project, or as an independent consultant, I have had to stop and consider the potential impact of the law on what I was doing. And every time that I have sought legal advice on the issues, the result has been unsatisfactory. Here are a few examples from my personal experience.

GIMP plug-ins

In the late 1990s and early 2000s, the licensing of plug-ins was a hot topic in the GIMP community that came up repeatedly. Does the GPL allow people to develop proprietary GIMP plug-ins? It was certainly the intention of the developers active at the time to allow proprietary plug-ins. To explain why this question is even interesting, some technical details on GIMP plug-ins are useful.

GIMP plug-ins run in a separate process from the GIMP core. They link to libgimp, a library that was licensed under the LGPL in 1997, which is a wrapper around the PDB, the Procedural Database. The Procedural Database is how plug-ins communicate with the core GPL application: data is sent via shared memory, with the PDB defining arguments and return values from plug-in functions. Plug-ins can call core functions, again via the PDB, to get image data from a drawable (a GIMP object representing anything you can draw on), or for any of a range of core functions.

But some argued that since GIMP plug-ins could only work with the GIMP core, that they were really derivative works, and were thus covered by the GPL. When we asked for definitive legal advice on the issue, the answer we got back was not entirely satisfying.

Maybe.

Ugh. So to clarify the situation, the GIMP developers added a license clarification to the source code, alongside the GNU GPL COPYING file, stating that we considered plug-ins to be "mere aggregation", and not a "derivative work". This may not be legally rigorous, but it was enough to allow us to forget about the issue and get back to coding.

Distributing GIMP plug-ins

That is, until it was pointed out by Debian that GIMP was shipping some GPL-incompatible code in plug-ins that we were distributing in the gimp .tar.gz. This issue ended up blocking the release of GIMP 1.2.4 for over a year. So the question arose: can we include non-GPL plug-ins in a GIMP package? The answer was, you guessed it, "maybe". At least, that's as far as we could tell by discussing it in a Debian bug report and on gimp-developer.

While GIMP plug-ins might be a "mere aggregation" with the GIMP core, apparently, there was an expectation that all the plug-ins which were shipped with GIMP would be GPL compatible. Over the years, we had included a number of code snippets from other open source projects which were licensed under other licenses. One of the projects was SIOD, Scheme in one Defun, a Scheme implementation by George Carrette. SIOD was the back-end of Script-fu, GIMP's scripting plug-in, at the time. SIOD had a very liberal license which included an "advertising clause", requiring that "the permission notice appear in supporting documentation", a clause which was widely argued to be incompatible with the GPL at that time. It turned out that there were about a dozen occurrences of this advertising clause in the code for plug-ins at the time.

Since Debian wouldn't ship GIMP with these plug-ins unless we made the licensing consistent, and since some GIMP developers also expected us to ship only GPL-compatible plug-ins, this was a major problem. So I and others spent a month in 2003 chasing down authors at five-year-old email addresses, removing or rewriting code snippets when we could do so, and on occasion removing offending copyright headers when we decided that the amount of code covered by the problematic licenses was so small that it was not a problem. I am sure I would have preferred to do other things with my time - and I was certainly not as methodical as Gervase Markham when he was relicensing Mozilla code - a process that took over 4 years. Were we legally rigorous? Maybe.

OpenWengo codecs

My next example is audio codecs from the OpenWengo project (site now dead). Some codecs like G729 were patent encumbered. In addition, widely used reference implementations of codecs like iLBC were included as sample code in standards documents and were only available under GPL-incompatible and non-free software licenses. The way we tried to get around this problem was to encapsulate these codecs in a standard API, and install them in a common directory. At start-up, we scanned the directory, and used dlopen() to open the libraries present there. We could then call the standard function to register the codecs and pass data streams for decoding and encoding.

A question arose for some of the non-GPL codecs: could we do something in the start-up process to make it easier for the user to obtain these codecs? One possibility would be to present the user with a dialog, as part of the first application start-up, which fetched the proprietary codecs and installed them in the common directory. But, would that be against the spirit of the GPL, and have us running the risk of being called a GPL violator by one of our users?

The answer, apparently, is "maybe".

By divorcing the loading of the plug-in at run-time from the distribution of the plug-in, we were probably absolving ourselves of any GPL obligations. At least, that is the legal advice Wengo obtained at the time. However, whether making it easier to get the codecs at start-up was the legal equivalent to including the codecs in the package was, at best, ambiguous.

Hunspell dictionaries

Last year, I was asked an interesting question by a client: Can I include Hunspell and the Czech dictionary in a proprietary application?

The answer, of course, is "maybe".

Hunspell changed its license in 2006, to the MPL/GPL/LGPL tri-license to enable inclusion in Mozilla. It is used as the spell-checker for OpenOffice.org/LibreOffice as well as Mozilla Thunderbird and Firefox. Of course, the tri-license enables the embedding of Hunspell in proprietary applications. So where's the problem? It turns out that some Hunspell dictionaries, including Catalan, Danish and Czech, are licensed under GPL only. It's a bit curious why anyone would use the GPL, a license intended for use with source code, for a dictionary. Regardless, the question is: does including Hunspell in another application, with a GPL dictionary, constitute a derivative work, or an aggregation?

At one level, the question is whether it even makes sense for a dictionary to have a license. Thanks to Feist v Rural, copyright only applies to a "work" if there is significant creativity involved in it. If a Hunspell dictionary were just a list of words in alphabetical order, then at least in the US, copyright would not apply. However, in other jurisdictions, there are laws covering the constitution of databases, and some form of protection is afforded to the author. In addition, a Hunspell dictionary isn't really just a list of words - it also contains grammatical and hyphenation information, which involves some creativity. So there's a solid argument that the dictionary is copyrightable.

The second question is whether including the dictionary with Hunspell and other software makes a derivative work, or an aggregate work. One part of that is whether the component is useful without the Hunspell spellchecker. Since it's just a dictionary, it can be used with other spell-checkers, including aspell. Hunspell could easily use another Czech dictionary released under another license. So, since the two bits are easily dissociable, Hunspell with the dictionary probably makes an aggregate work, and the license of the dictionary does not impose any requirements on other software shipped with it. This is the advice that the OpenOffice.org project received from the FSF licensing list, and so the GPL dictionaries are included in the LibreOffice and OpenOffice.org distributions.

Mozilla, on the other hand, do not ship any GPL dictionaries. When I asked Gervase why, he answered:

It is arguable whether the GPL would cross the dictionary->application boundary. But again, we prefer to respect people's intentions, and it seems to us that if someone licenses their dictionary GPL-only, then they probably only want it used in GPL apps.

In other words, the intent of the author trumps all in this case, for Mozilla.

So - maybe.

Conversations with lawyers

The problem for developers is that conversations with lawyers typically end up with "maybe". We're looking for what we may and may not do, and often, in the absence of jurisprudence, lawyers deal in shades of gray. All too often, the end result for developers is to avoid any risk.

A friend once told me a story of a meeting with her boss and "legal", where she came out of the meeting disappointed. When her boss asked her what was wrong, she said "the lawyers told us we can't do what we'd like to". To which he replied, "No, they just told us the risks involved. Now we have to decide whether we're prepared to accept those risks or not". Instead of being the end of the conversation, "maybe" could be the start of it. Lawyers (and , in the free software world, some non-lawyers) will help you identify risks. But then it is up to the project to decide whether to take the risks or not.


Index entries for this article
GuestArticlesNeary, Dave


to post comments

Gray areas in software licensing

Posted Feb 16, 2012 7:23 UTC (Thu) by jmah (guest, #80103) [Link]

Just wanted to say that I really enjoyed reading this. Thanks!

Gray areas in software licensing

Posted Feb 16, 2012 8:45 UTC (Thu) by mjw (subscriber, #16740) [Link] (1 responses)

One trick to use with lawyers, at least if they are your lawyer, is to turn the question around to make them more explicit where the boundaries are.

After explaining your issue, explain what you intend to do as developer going forward, then ask if that makes them able to sleep at night. Especially with company lawyers that seems to work to get a more firm yes/no answer for resolving "grey legal" issues since they will in the end be responsible for representing you (the company) if any "trouble" comes from what you are doing.

Gray areas in software licensing

Posted Feb 22, 2012 8:57 UTC (Wed) by man_ls (guest, #15091) [Link]

Good approach. When the matter at hand is not clear, I prefer to ask: "I want to do this, how should I proceed?" And after the fact (if you are cynical enough, which I am not): "I have done his, how can I get away with it?"

Gray areas in software licensing

Posted Feb 16, 2012 9:25 UTC (Thu) by ortalo (guest, #4654) [Link]

It's true that lawyers do not provide definitive answers to legal questions because, in fact, this is the prerogative of tribunals.

Given the many questions raised by OSS with respect to legal issues, have any of the important players in this field taken the approach of "friendly trials"?
I.e.: bring a legal question that could be solved easily via an agreement to a trial on a real case in order to clarify the legal question and obtain some definitive judgment that sets a precedent (in french, that's the "jurisprudence"). It may take several years and funding (as it usually involves going through all the judicial steps: first case, appeal, etc.) and it necessitates truly cooperative parties to bring it to a useful end. However, that brings real answers to face potential unfriendly cases in the future.
The primary problem I see is the fact that such an operation may only be valid in one country at a time (one legal domain in fact).

Facts are not copyrightable

Posted Feb 16, 2012 15:17 UTC (Thu) by Seegras (guest, #20463) [Link] (4 responses)

"In addition, a Hunspell dictionary isn't really just a list of words - it also contains grammatical and hyphenation information, which involves some creativity. So there's a solid argument that the dictionary is copyrightable."

There is a solid argument that it's not. These are rules for a language. And there obviously is NO creativity involved, it's just a compilation of facts about the language. Of course it's work to produce a dictionary, but that's not a criterion for copyrightability.

IANAL, but according to my understanding of swiss, german and US-law, I'd say you're on pretty good ground by assuming its not copyrightable. Maybe ;)

Facts are not copyrightable

Posted Feb 16, 2012 15:57 UTC (Thu) by mpr22 (subscriber, #60784) [Link] (1 responses)

The relevant term (in at least some European jurisdictions) is "database rights".

Facts are not copyrightable

Posted Feb 16, 2012 16:14 UTC (Thu) by etiennez (guest, #53056) [Link]

Which is copyright + Sui generis rights (= a lot of maybes)

http://europa.eu/legislation_summaries/internal_market/bu...

Facts are not copyrightable

Posted Feb 16, 2012 17:40 UTC (Thu) by dneary (subscriber, #55185) [Link]

> There is a solid argument that it's not. These are rules for a language.
> And there obviously is NO creativity involved, it's just a compilation of
> facts about the language. Of course it's work to produce a dictionary, but
> that's not a criterion for copyrightability.
>
> IANAL, but according to my understanding of swiss, german and US-law, I'd
> say you're on pretty good ground by assuming its not copyrightable. Maybe ;)

I don't want to disagree with you for the sake of it, but the threshold in the US for "originality" is very low. For example, creating a list with some non-deterministic ordering would be enough. For a dictionary, the definitions of the words would clearly be original work.

There's a decent wikipedia article on this I'd recommend you read. It's fascinating: http://en.wikipedia.org/wiki/Threshold_of_originality - one example cited in that article is a newspaper in the UK which asserted copyright on a speech they had transcribed and published - based on the amount of work which had gone into the transcription.

So while "maybe" is still the right answer, in this particular case, I would not bet on any court deciding that a Hunspell dictionary is not copyrightable.

Facts are not copyrightable

Posted Feb 16, 2012 19:59 UTC (Thu) by shmget (guest, #58347) [Link]

"These are rules for a language. And there obviously is NO creativity involved, it's just a compilation of facts about the language."

The 'facts' about the languages are not rules. The facts are the observation that a given word is spelled, mostly, at a certain point in time, a certain way, after that people invent 'rules' - usually with 'exceptions' - to codify that...

creating rules out of facts is creative. otherwise no scientific publication would be copyrightable either.

Gray areas in software licensing

Posted Feb 17, 2012 15:06 UTC (Fri) by zooko (guest, #2589) [Link]

A wise man [*] once said: ⸜Never ask a lawyer if a course of action is safe. The answer is always “No.”. Instead ask: “If we took this course of action, what risks would remain and how could we mitigate those risks?”.⸝.

[*] It was Nick Matthewson.

Gray areas in software licensing

Posted Feb 18, 2012 1:36 UTC (Sat) by giraffedata (guest, #1954) [Link] (6 responses)

It always irritates me when lawyers say "maybe." Not because they're wrong, but because they're not doing their job. I used to sit in city council meetings where week after week council members would ask the city attorney whether they could do something and the city attorney always said "maybe." It irritated me not because I thought there was really a clear yes or no answer, but because the city was wasting it's money on this guy. Anyone could have sat in his chair and said, "maybe."

Sometimes, an attorney has to bite the bullet and give advice.

Gray areas in software licensing

Posted Feb 18, 2012 15:55 UTC (Sat) by dwmw2 (subscriber, #2063) [Link] (5 responses)

  • What's the acid test of whether a lawyer is correct?
    A court ruling.
  • How many (teams of) lawyers are there normally in a court case?
    2.
  • How many (teams of) lawyers win each time?
    1.
  • How many (teams of) lawyers lose each time?
    1.
  • What is the overall success rate, therefore, of the legal profession when their opinions are actually put to the test?
    50%
... and you wonder why they say "maybe"? ☺

Gray areas in software licensing

Posted Feb 18, 2012 21:41 UTC (Sat) by giraffedata (guest, #1954) [Link]

That's interesting math, but you left out an important statistic: how many times that an attorney is asked what the law is does the question end up in court? It has to be less than one in a thousand. It doesn't end up in court because substantially all lawyers agree on the answer -- even the ones who for reasons of advocacy say that they don't.

Many lawyers say "maybe" when the they believe the chance of all substantially all lawyers agreeing yes or no is less than (my guess) about 95% - way more than 50%.

Gray areas in software licensing

Posted Feb 20, 2012 3:02 UTC (Mon) by ghane (guest, #1805) [Link]

I have worked (in corporate cases) with legal counsel from large firms. The best we can get is between:
  • It would be hard to defend this in proceedings
  • I would be surprised if we even had to defend this
I have seen enough written arguments which start a paragraph with: "It is settled law ...", and then seen next week the defendants reply which shows it isn't settled at all, in fact this is one of the greatest constitutional issues of all time.

I have sympathy for lawyers who get blamed for dragging cases into appeal. In my experience, it is usually the clients who see this as a matter of principle. Lawyers tend to point out: Although anything is possible, I do not see our chances of prevailing as significant. However, if you will instruct so, I will file the appeal.

The law is what a Judge says it is. Even if he is an idiot, or drunk, or corrupt, you can appeal, but it is still only a Judge who decides what the law is.

There is no certainty in litigation. No more than there is in boxing (another arena where 50% of participants lose (and after the obligatory swagger)).

Gray areas in software licensing

Posted Feb 27, 2012 17:35 UTC (Mon) by nye (guest, #51576) [Link] (1 responses)

>How many (teams of) lawyers win each time?

Hmm. My interpretation would be that, no matter the outcome, the lawyers always win.

Gray areas in software licensing

Posted Mar 1, 2012 13:20 UTC (Thu) by nix (subscriber, #2304) [Link]

Obviously we need the Gowachin courtarena: everyone is at risk. (However, you might want to exempt the jury from this, since they are randomly selected.)

Gray areas in software licensing

Posted Feb 27, 2012 21:56 UTC (Mon) by dark (guest, #8483) [Link]

Your stats are off because you didn't consider that the side with the most lawyers wins. So it's more than 50%.


Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds