Join 3,374 readers in helping fund MetaFilter (Hide)


Who owns open source code?
July 12, 2007 8:43 AM   Subscribe

Legalfilter: Who really owns an open source project?

A friend mentioned to me that Apple had bought the CUPS source code. Which is rather interesting to me because it brings up the question of ownership. Clearly to sell the source code to Apple, some person or group of persons must own the source code and agree to the terms of the sale. So my question is, who owned all the code?

Obviously I assume many people other than the original author have submitted patches to the code. Do they relinquish their ownership of the code when they submit a patch? I know the sqlite project makes patch submitters agree to release their patches into the public domain. Do other projects make similar requests to their submitters to release their rights? If it's not done explicitly, can it be an assumed implicit release of rights? You'll have to forgive my ignorance here. I've never contributed to a project before so I'm not quite sure of the "standard practices", if this is one. I intend to develop my own open source project someday, so this would be good to know.

Xchat is another example that comes to mind here. I recently learned that the lead developer has for some time now charged for the windows binary while claiming it was still GPL'd with source available (except for the code that controls the 30 day expiration of the software). Did patch submitters give up their rights to their code (thereby allowing him to release and relicense in this manner), or is he flagrantly violating the law and the license of code he doesn't entirely own? He has said he has a standing offer to remove or rewrite any patches someone might have made if they ask him to, so that makes me believe he does not infact own all the code. If so, could then someone who wrote a patch sue him since he's making profit off their work?
posted by crypticgeek to Law & Government (14 answers total) 1 user marked this as a favorite
 
It will help if you realize that a GPL license does NOT mean that you cannot charge for your code.

From this GPL Myths page:
Nothing about the GPL prohibits using software to make money. The confusion comes about because the GPL is designed to ensure that the fundamental “freedoms” associated with free software cannot be taken away from anyone who receives a derived copy of the software. This means that software vendors can charge for software licensed under the GPL if they wish. However, if someone buys a version of the software, they must have the right to inspect, modify and freely redistribute the software. Whether more than one person will pay for software licensed under the GPL begs the issue of whether such software can be at the core of a practical business model.
This means that if I license my work under the GPL, I no longer 'own' the code in the traditional sense. I give others the freedom to do what they want with the code.
posted by chrisamiller at 8:49 AM on July 12, 2007


Whomever owns the copyright "owns" the project. The copyright owners are the only ones who can change the license for a piece of software, like the CUPS guy did. That's why a lot of larger open source projects require contributors to assign their copyright to the main developer, or an umbrella organization.

Otherwise, you get into a big sticky mess where contributors own the copyright to their code, and they have to consent to license changes.

You can read more at this link: Who Owns the Copyright for an Open Source Project
posted by cmonkey at 8:51 AM on July 12, 2007


I'm pretty sure with CUPS, if you wanted your patch added to the main branch, you need to hand over your copyrights to the code to the lead developer. He had the copyright for all the code to CUPS, which he seems to have sold to Apple.
posted by chunking express at 8:53 AM on July 12, 2007


Oh, and contributor agreements are also kinda tricky - one of the open source projects my company is in charge of has contributors from a dozen other companies, and the lawyers spent upwards of a year bickering about the precise language of the copyright assignment document that contributors must sign.
posted by cmonkey at 8:57 AM on July 12, 2007


Also, at some point Apple should be able to say, CUPS is closed source going forward, but all the code that was released under the GPL prior to this would still be available to the public, and a fork could start from that. (Or a fork could start right now if people don't like the fact Apple owns CUPS.)
posted by chunking express at 8:57 AM on July 12, 2007


This is one of the reasons very large companies are paranoid about open source code. They don't really know what it means to exploit it commercially. It might mean they can steal it fair and square, and it might mean they have some legal liability. This is really where Stallman showed that he deserved his genius award.

Years before the GPL, there was an editor named emacs, after teco emacs but before gnu emacs and xemacs. It was written by James Gosling, the father of the Java programming language. It was wildly popular, and many people contributed both to the code and to the emacs lisp base. Eventually Gosling sold it to some company, one that had purchased the rights to several similar community-developed code bases. Gosling was very roundly criticized by people who had contributed. But he's pretty thick skinned, and after he became the Father of Java, everyone was reconciled to him again.

Pretty much, if you are a company and you want to license something, you want to get to it just before it gets released for contributions. Otherwise everyone who contributes to it may have some piece of the copyright. In any case, they will have an expectation of having the some piece of the copyright, whether they do legally or not.
posted by vilcxjo_BLANKA at 8:58 AM on July 12, 2007


Many well-established projects, such as Python and Cygwin, require that programmers sign a copyright assignment before contributing code.

If the Xchat situation is as you say, then he is infringing copyright by violating the GPL. Offering to rewrite patched bits in the event of a complaint seems to be an admission of this.
posted by grouse at 8:58 AM on July 12, 2007


Also see:
There Are Only Four Software Licenses
posted by chrisamiller at 8:59 AM on July 12, 2007


Right, as cmonkey is saying, all the different contributors own their own copyrights, so many projects (like the Linux kernel) have literally thousands of authors. That's why switching it from GPL2 to 3 will be very difficult, if they ever do it, because they will have to get explicit permission from every author, or else replace that author's code.

Many projects require copyright assignment as a requirement to contribute; they then relicense contributed code back to the contributor with unlimited rights. That way, they OWN it, but the contributor can still USE it in any way they wish.

When an organization or person has sole ownership of code, they can release it simultaneously under different licenses. Thet can, if they wish, release the exact same code under a commercial and a GPL license simultaneously. Many companies do this, in fact. MySQL is dual-licensed in this way. If you want to use it commercially and embed it into your product without giving anyone source, you can do that if you pay the MySQL people money. Or, you can use the code for free, but that forces you to be more open about your project.

In the case of Apple and CUPS: assuming that what you say is true (I haven't checked), that implies that he CUPS project is single-copyright-holder, and that they have licensed the CUPS system to Apple in some non-Free way. Apple probably didn't buy CUPS itself, but rather the rights to use it commercially, in a closed-source environment. That would let them use it in any way they want without releasing changes to the public, but wouldn't impact the other users of CUPS. The CUPS project makes money so they can write more of it, so everyone wins.

XChat, however, sounds fishy. If the lead dev is 'offering to rewrite', that most likely means that he doesn't have full rights on all the code involved, and he's just hoping he doesn't get caught.
posted by Malor at 9:05 AM on July 12, 2007


CUPS isnt a typical OSS project. A little more here.

Essentially, contributors had to accept a licensing term that kept the application within the control of Michael Sweet. It looks like selling it was part of his plan from the begining. The software was started and largely developed by his company.

Normally, all the contributors (who are the actualy copright holders) own a project. For instance, you would need everyone who ever wrote a line of linux to ever sell the kernel. Or linus could gut out what wasnt his personally. CUPS was designed as an "open source business" from the start and the legalese allowed the owner to sell it at anytime without the approval of the other contributors.

I also think these restrictive licensing conditions kept real talent away from the project and this is why its quality was so low.
posted by damn dirty ape at 9:22 AM on July 12, 2007


Here is the legalese that made it sellable to Apple.
posted by damn dirty ape at 9:24 AM on July 12, 2007


No, damn dirty ape, that's legalese that Apple added after the fact. It obviously can't affect whether the software can be sold to them since it presupposes that they own it.

The important bit is the years-old requirement that all contributions to CUPS must be assigned.
posted by grouse at 10:03 AM on July 12, 2007


To answer chrisamiller's post, I realize that. The question is whether contributers to the xchat project gave up their copyright over their contributions. If they didn't, I don't think it's legal or ethical for him to have released this shareware binary because he's made modifications (namely the 30 day expiration code) that he hasn't released to source. So either he's violating GPL or he has to release it under a different license (which he can't do if he doesn't own copyright to all the code). I'm not intimate with the state of the project before all this happened, so I'm merely speculating, but there appears to be an unresolved controversy on this point.
posted by crypticgeek at 10:26 AM on July 12, 2007


This brings up another good bit others have pointed out as well as sources in their links have. If one body or person doesn't own copyright over the code, it's next to impossible to go after people violating the license. So in the xchat guy's case, even if he is violating the GPL and he doesn't own all the code....he's probably safe because it'd take the co-operation of the contributers to take legal action against him. On the flip side of that, if someone external to the project uses the code in a proprietary application for example, it's also very hard to take legal action because it requires the co-operation of all the contributers.

Some people (such as damn dirty ape) believe asking people to give up copyright over their code keeps talented people from contributing and hurts the project. So there's definitely two competing sides of this. I believe that asking for a perpetual license to the code or asking for copyright and granting back a perpetual license to the contributer is a good middle ground. It helps allow legal action against those abusing the license of the project, while allowing the original developer to control the project in the way they see fit and contributers to be able to reuse their code however they see fit.

Thanks everyone who posted links and insight. This is helpful information for me as I go forward developing software that I hope to license under the BSD and open to community development.
posted by crypticgeek at 10:40 AM on July 12, 2007


« Older I am going to Madagascar later...   |  Is there a way to market a toy... Newer »
This thread is closed to new comments.