GPL Code Found In OpenBSD Wireless Driver
NormalVisual writes "The mailing lists were buzzing recently when Michael Buesch, one of the maintainers for the GPL'd bc43xx Broadcom wireless chip driver project, called the OpenBSD folks to task for apparently including code without permission from his project in the OpenBSD bcw project, which aims to provide functionality with Broadcom wireless chips under that OS. It seems that the problem has been resolved for now with the BSD driver author totally giving up on the project and Theo De Raadt taking the position that Buesch's posts on the subject were 'inhuman.'" More commentary from the BSD community is over at undeadly.org.
One should never expect him to see the other side of an issue.
His team were caught red-handed, and had the gall to blame the people who got ripped. He doesn't even seem to get copyright, saying there was no infringement because the driver wasn't yet ready for general use is beyond moronic.
Yes, but according to the licenses involved (in this case the GPL).
A CC-licensed illustrated horror novel
Deanna (I think it was Deanna anyway, based on the contributed by) overreacted to the email. The only thing unreasonable about the email that I saw was the wide distribution. The initial email from Michael Buesch, IMHO, should have gone to the comitter and the OpenBSD core team...
Awesome furniture, accessories and cabinetry in Santa Rosa, CA: http://humanity-home.com/
...is how you can scroll down past the cascade of de Raadt nonsense and find an actual reasonable response from the bcw maintainer himself!
Unfortunately, with so much noise coming from de Raadt, the only thing most people are going to see are his ridiculous responses.
I'm sure someone else has drawn this line before, but he reminds me of the OpenBSD mascot. Like a blowfish, he fills up with (hot) air when threatened and is very defensive.
If you read through the email conversation, you'll see a VERY diplomatic initial message from Michael, a straw-man attack from Theo ("Do you feel that Marcus should give up his efforts?"), a VERY reasonable response ("No, he should _not_ give up. The opposite is true. He should start to contact us to get relicensing permission from us to speed up bcw development and stay legal") and then profanity and rage from Theo.
The slashdot post, the weblog entry, and Theo's comments are all ad hominem, and baseless ad hominem at that- the core issue here is that GPL code was taken in violation of its license. The owner of the code contacted and admittedly large number of people, publicly, about it. It is hardly out of line given Theo's well-known grandstanding full of rhetoric (hardware drivers for OpenBSD come to mind.)
Michael pointed out the violation and asked the developer/OpenBSD people to contact him to work out relicensing the code. Instead, Theo attacked him relentlessly and repeatedly. After the first 6 posts between Theo and Michael, I felt sick and stopped reading.
Please help metamoderate.
Copying code without permission is the worst possible offense in open source land. His righteous indignation is absolutely justified. The appropriate response is "Our deepest and most sincere apologies. The code has been removed. Thank you for deciding not to seek any further retribution."
Arguing over not being nice about calling out this offense is cowardly and sociopathic. e.g. playing politics.
eh, a lot of whining on both sides occurred - the whole thing could definitely have been handled much more professionally and politely by both sides. Buesch could've contacted Glocker privately via email and asked him to remove the copyrighted material from CVS, and encouraged him to contact the copyright holders-in-question if he were interested in obtaining assistance in getting his bcw driver to work. It's called giving him "the benefit of the doubt."
The interests of expediency (notifying Glocker and the other copyright holders, as well as people who did the reverse-engineering (wtf? why? I still can't figure that one out)) didn't serve either group's PR interests. Now people are lining up on the tired BSD/ISC vs. GPL battlefront again, fighting over something that only involves a few developers. I don't think Glocker should've committed that GPL nonsense into CVS, but I do think he should've been given a chance privately to correct his mistake. All this hassle and stupid flamewar because simple politeness was dispensed with. Gad, I'm glad I don't work on anything involving these groups.
When you share, and the other party does not, that is not sharing any longer. That is a gift. It always entertains me that the people who protest that they are most deserving of gifts of source code from the community are those who refuse to share theirs.
Bruce
Bruce Perens.
GPL does not allow someone to pick up the code and turn it into a closed source product.
BSD does. BSD code can be included into a GPL project, but the reverse is not true.
So the GPL product works hard to create a Broadcomm driver. The code gets included into a BSD driver. Broadcomm picks up the BSD driver and includes it into their closed source product. Broadcomm or some other company benefits from the GPL code and does not honor the orignal license.
Post anonymously - For when your opinion embarrasses even you!
I think this might have been handled better, but mostly on the BSD side. If they'd "borrowed" code from a corporation, their first notification might have been a lawsuit, not a widely distributed posting.
It's no surprise that stuff like this gets blown up out of proportion. Quite a few people who work in software, myself included, aren't the most diplomatic types. Still, maturity is ignoring other peoples bad behavior and trying to work out your differences amicably. I think Marcus showed a great deal of restraint. I would have been incredibly angry if I'd been in his situation and I'm not sure I'd have been nearly so forgiving.
While it maybe a tempest in a teapot, it's a lesson for all of us. We all look like doofuses (how do you spell the plural of doofus?) when we air our grievances in public.
Take a breath, relax, go have a beer. Then find a way to work together.
My 1.9888888 cents worth.
-All that is gold does not glitter - Tolkien
www.ra
The reason this was brought up in public is because it's public code. The OSS development model means that everything is public. If Theo doesn't want public discussions about public code, he should not be involved in development which involves everything happening in public.
Theo's excuse that "oh, it should have been done privately" is a smokescreen to try to distract people from the fact that someone on his team got caught violating copyright. It embarrassed him, and he got pissy about it.
Bruce
Bruce Perens.
Wah... What the hell? The author of some code contacts the OpenBSD to communicate that copyright was infringed upon. The OpenBSD guys explode in a series of "zealot" name calling. I guess I can see some sense in privately contacting the OpenBSD dev. But on the other hand, it's in the OpenBSD development tree. Probably it's a good idea to tell people that it shouldn't be there.
Reading the initial email, I can't find any hint of malice. Just expressing the facts and offering to provide a license for the code. If this mailing list blows up because of something so unbelievably trivial, it doesn't seem like a fun place to hang out in. It's just weird.
But something else bothers me about the response too. It seems like the people there are *upset* that the original person informed them of the copyright infringement. I mean, nobody denied it. Everyone seems to agree there was an infringement. It just seems that some of the OpenBSD people think that the Linux people are assholes for choosing to license their code under the GPL... And apparently it's even worse to ask people not to infringe on that license.
That's just bizarre... It kind of makes you wonder who the zealots are... Personally, I'm kind of neutral on the subject. I like the GPL in some instances, I like other licenses in other instances. But, I just can't quite wrap my head around BSD guys (of all people) taking such a strange stance...
I seriously cannot believe this. Why should the discussion focus on shooting the messenger? A developer was caught infringing on copyrights pants down. The infringement is hard to do without intent. Would you deal with such a "rogue" developer privately, or send a mail to project mailinglists (perhaps a core or dev list) which likely would be public anyway? Maybe OpenBSD would mail people privately, but can you not understand that others decide otherwise? If your developer makes these kinds of mistakes, the issue WILL be public and you WILL have to make a statement sooner or later.
:)
Transparency on copyright issues is just as important as transparency on security. It serves as an example to all open source projects to be watchful about these issues. This is not only about OpenBSD. OpenBSD is a mature open source project and they have nothing to be insecure (huhuh) about. Sometimes OpenBSD may have exploits, sometimes it may have copyright issues. We live, we learn. Code-wise this is a small issue and it's a fixable issue, as the bc43xx developers said in their statement.
I find the approach of the bc43xx developers perfectly defendable. The first mail was clear, diplomatic, complete, and explicitly offers to work out a deal. That's more than you usually get when you infringe on someone's rights! Unfortunately, the only result of it was another episode of "the Theo Show". Even though the issue was broadcasted, the OpenBSD project still had a great immediate opportunity to contain the issue. Instead, the bc43xx developers doesn't receive much but irrational unconstructive replies, intentional misinterpretation, blaming people for OpenBSD's own developer's decisions, etcetera.
If going public with an issue is inhuman, how is turning the debate into a flamefest human? It was shameful to read. The Theo Show IS the public spectacle. Perhaps it is part of how he defines his personality. In fact, this rogue attitude seems to work for OpenBSD - OpenBSD regularly gets a lot of mainstream exposure from these kind of fights. Maybe it's what saving OpenBSD from becoming irrelevant. Well, good for them. They probably make a great OS (I use FreeBSD exclusively). It's just too bad that they haven't got a Broadcom driver.
( ^_^)/
'Inhuman' hardly describes being open about copyright violation. Michael was polite in his initial message; the immediate responses were to flame him. It's hard to accidentally include someone else's driver code in yours; Theo still kept saying that it was clearly an accident.
As for leaving GPL stub code...it would have been difficult to fully audit the driver code to see how much needed to be rewritten. Probably some GPL code would have stayed in the driver through release.
But since Michael was able to discover his code in the bcw driver, it was being distributed. *That's* clearly illegal. If only a few people had CVS access and nobody was actively distributing the bcw driver, then Michael wouldn't have had a case, or even known about it. They didn't even take that step with a non-working driver. I have no sympathy for the bcw maintainers.
So if I strip out all the copyright notices from a Vista ISO and commit it to a public CVS repository, it doesn't count as copyright infringement or plagiarism? And I won't have to worry about a nasty lawsuit from Microsoft?
Bogtha Bogtha Bogtha
If it wasn't being distributed, how was it discovered? Yes, I know, how mean of me to ask.
"Didn't do it, and it wasn't wrong, and anyway, it wasn't serious!"
It was good enough to inpsire the developer, to take Saint Theo's interpretation.
"Just let us rip you off in peace! GPL sucks anyway!"
Mind the Gap
Not only in this, but in thread in general Michael Buesch shows remarkable restraint. He is the one with a legitimate grievance and he is being insulted ad infinitum.
This is not a matter of GPL vs. BSD. It is a simple matter of breach of copyright. Everything else is bullshit.
Oh? So, if I take my record collection and commit it to a public CVS repository, that's going to be OK with RIAA, then? :-)
Placing code in a source code repository that is accessable for download by any other legal entity is distribution the moment the first download, or even source-code-browse, occurrs. The fact that it is CVS does not make it the slightest bit different from being a regular public web server.
Also, it is not necessary for the code to be "released" for it to be distribution. Remember Corel, who thought they didn't have to comply with the GPL as long as it was a beta test?
The Linux developer had the right to make a public notice that the posted license and copyright statement were not his copyright statement and the correct license. Otherwise, someone, anyone, could have made unlicensed derivative works of his code without knowing any better. A public notice protects unwitting victims like that, as well as the copyright owner.
Bruce
Bruce Perens.
Insulting windows users just ain't any fun to us seasoned opensource users is it. It is like trying your wits against a duckling, one that has been run over and chewed on by the rats. Far better to cross daggers with a person of your own calibre, even if in the case of you BSD lovers it is an undead calibre.
But very well, I shall engage you on the battlefield, as long as you promise to stay down wind of me.
BSD is the thief and the thief does NOT get to complain about how the victim responds. If you break into my house I am not obliged to send you a polite letter first to ask you to please return my stuff, I send for the police, I do that publicaly and if they wake up everyone in your street and haul you out in front of your neightbours in your Steve Jobs underwear while they go about reclaiming my possesions then all the better.
The BSD people involved really should have known better then to do this. Contrary to what some people think both BSD and GPL people strongly believe in copyrights (what differs from closed source supporters is just how much control the author has over the user and/or further authors). You may not like either the GPL or BSD BUT for either to work they must respect the other.
Buesch might have done this in private BUT it is his decision and his decision and alone how to handle this. The offenders do not get to dictate how the victim voices his complaint. Theo should shut the fuck up, apologize for his and his team actions and be damned glad no formal complaint is being launched in the courts.
Just how much code is there in BSD anyway that is not there legally? Were there is smoke, there is fire.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
You can share with groups as well as individuals. The main difference is that sharing with an individual can be regulated closely - if that person doesn't share in return, you know never to share with that person again and can enforce a social penalty for not sharing. With a group, you need rules to do that, and possibly more than just social mechanisms to enforce them.
Bruce
Bruce Perens.
GPL: I buy everyone a round because the license of the bar says that everyone else will also buy a round when it is their turn.
BSD: I buy everyone a round because hell, I am just a nice guy and I want everyone to have a beer even if that means I will end up paying for all the beer being drunk.
Closed source company: Hell, I like you BSD, keep them coming.Eh, my round? I left my wallet at home, say BSD, how about a napeleon brandy mate?
BSD: Sure, we are all mates.
GPL: You are an idiot BSD. But hey, make mine a double.
Get it?
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
Sorry, but when someone's called on you to explain seemingly-illegally-copied code, telling them to "go fuck themselves" is not a bloody option. Try that in the real world sometime, and see how fast an indictment for copyright infringement and the corresponding civil suit comes flying in.
Also, you say he "kill[ed] a truly free implementation of the driver in question," you are totally missing the issue. The entire point of this debate is that the bloody driver wasn't free at all! It was GPL'd code, which gives you the rights to use it within the terms of the GPL. Stripping the legitimate author(s) name(s) from the code and relicensing it under a looser (or, in the case of the GPL, tighter) license is one of the main things the GPL and other licenses are designed to prevent.
I find it regrettable that Michael decided to go so public with this (indeed, as others pointed out, it could probably have been solved privately) but it is absolutely his right, as the "sorry little fuck" who owns the copyright on the code, to protect it as he sees fit. I think the OpenBSD team should be remarkably relieved that Michael diplomatically approached the issue and offered to assist in relicensing the code instead of simply suing Marcus and the other perpetrators of this infringement.
So stop heaping abuse on the guy simply because he chose to protect his legal right to have his original product (the code) used only under the license he selected for it and to not have it used outside those boundaries by anyone else, whether by accident or design. Instead, give him credit for offering to assist in reaching a constructive solution to the issue.
-- Andrew Morritt
This is a problem of the FOSS community turning on itself. If there was a GPL violation, the proper thing to do is own up to it and seek a re-license, which is what the owner of the GPL'd code wanted.
I am still reading the whole Gmain thread, and am quite shocked by Theo's comments. I agree with another fellow who said that FOSS wireless driver development teams should work closely together to ensure the proprietary world doesn't overwhelm the effort. But, I digress . . .
The core issue is whether the BCW developer copied GPL'd code, which the holder of the GPL copyright asserts. Plenty of clean examples were given, and the ability to investigate the entire tree for both sets of code makes it a quick search issue. Much better than the SCO/M$ v. IBM suit. Theo's response to the allegation is immature at least:
1. Ad hominem attacks: calling Mike inhuman and attacking him for making the issue public.
2. Irrelevant: saying that the bcw code does not work so there's no copyright issue. Copyright speaks to content, not functionality.
3. It was an accident: Claiming the bcw "accidentally" copied GPL'd code. How can you accidentally copy entire blocks of code?
4. That the code copy was temporary scaffolding: which counters #3, above. You can't claim the code copy was an accident or unintentional then say the copy was intentional for a short period of time. Theo says the code was copied to get other parts of the bcw driver to work, then would be re-written. The problem here is twofold. First, the code was copied and checked into the repository under BSD licensing, which is a violation in-and-of-itself. Second, putting the code there pending re-write means the re-write would be a derivative of the original GPL'd code---which is still a copyright violation.
Above all, the entire line of discussion is not relevant. There's a claim of copyright violation. If the code is there, then it is a violation, whether or not it was "accidental." This extends beyond issues of header calls which are so ordinary as to not be copyrightable. (At least, under U.S. law, if there are only a few ways to convey an idea, then it cannot be copyrighted.) Whether the accusation was public is not relevant; was there a violation? The responsible action would be to investigate when the GPL'd author made the accusation.
What those who want activist courts fear is rule by the people.
Below are two edits to the piece here.
The first. Let's pretend this was GPL code taken by Microsoft, not OpenBSD, for inclusion in Windows. To me, that looks like Mr Buesch is being decent.
Now let's switch to the opposite - Mr Buesch as a Windows developer, finding Microsoft code in OpenBSD Again, a response like that if it were from Microsoft to the OpenBSD team would be considered highly decent.
I think Michael Buesch did well
http://bsd.slashdot.org/comments.pl?sid=229865&cid =18648703
"Get off the cross - we need the wood" - Tori Amos
As far as I can tell, it was your obligation to post publicly that the code was GPL licensed before someone else could have been damaged by making an assumption that the code was not GPL licensed.
If that project had a nice, empathic woman who has been a parent of teenagers to handle your notice, the reply would have been an apology, followed by amplification of your notice, and a calm talk about what to do. Instead, you got Theo :-)
It's as if you ran over a land-mine and people then tried to criticize you for running.
Bruce
Bruce Perens.
How is that a sticking point? The _only_ sticking point is the copied code. (Why people keep calling this theft is beyond me; infringement != theft)
Furthermore, imagine a scenario where this wasn't taken public ASAP. Anyone that went to the code after the copied code was added but before it was corrected would be liable to think that the code in question was under a completely different license. In this scenario it is in the author's best interest to notify as many people as possible that his code has been hijacked. The more people that know, the better it is for the author, and for the people who would potentially have used the code. Sure, you'll be stepping on a few toes in making the issue public, but it has to be done in order to protect yourself and everyone else from misappropriating code. There is *no* other way to accomplish this as effectively, that I am aware of. Why take the man to task for protecting his assets, kindly and tactfully at that? I'm not sure that we're reading the same thing, because from my end, it looks like Michael was being kinder and more patient than I can reasonably expect from anybody that I've ever met. The only alternative would be to ask the developer to make a *public* statement about the entire thing, which would have the same effect. The only difference would be the name of the person delivering the message, which is _completely_ trivial.
Maybe you could argue that it might have saved the developer some face if he was the one delivering the message publicly. You know what would have saved him even more face? Not relicensing code that wasn't his in the first place.
Dropping a politely-worded note proposing co-operative effort to a bunch of concerned parties? Yeah, you would need a new meaning for the word "Nazi" before you could use it to describe that.
What wacky world do Theo's enablers come from that they think it's an aggrieved party's duty to keep an offender's misdeeds secret?
Mind the Gap