Slashdot Log In
GPL Code Found In OpenBSD Wireless Driver
Posted by
kdawson
on Sat Apr 07, 2007 12:40 PM
from the cross-licensing dept.
from the cross-licensing dept.
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.
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Summary: Theo went over the top (Score:5, Informative)
The whole thing lasted two days, much less than the blog and news coverage. Someone will come along and write this driver for BSD, and the BSD developer will have some well-deserved cooling-off time.
Bruce
Well, Theo is something of an asshat (Score:5, Insightful)
Parent
Re:Well, Theo is something of an asshat (Score:5, Interesting)
Bruce
Parent
Re:Well, Theo is something of an asshat (Score:5, Insightful)
Though, it is important to know your limitations. In particular, you'd think that he should remain silent on the social gaffes of others.
It's pretty hard to take criticism of interpersonal skills from Theo seriously.
Parent
Re:Well, Theo is something of an asshat (Score:5, Insightful)
To make it out to be some psychological issue or some such nonsense dismisses the choices of those who made the decision to give a shit about other people and not be an asshole.
Skip the third party apologies, call it what it is and accept it or don't accept it.
Parent
Re:Well, Theo is something of an asshat (Score:5, Insightful)
As one of the people who doesn't notice when people are trying to shake my hand sometimes, I can assure you, it's not that I don't care about people; it's that I don't have the same raw inputs to my decision-making that some people do. So far as I'm concerned, you people all have telepathy. I know it's not technically telepathy, but it might as well be; I have no access to the medium through which you pick up on things like that.
So, I put in serious time and effort doing my best to read people, and people like you bitch me out because I don't do it perfectly, because it's effortless for you.
The irony is that it's your empathy that is leading you to a lack of empathy in this situation.
Parent
Re:Well, Theo is something of an asshat (Score:5, Insightful)
What Theo did was a classic case of blame shifting. Trivialize the problems on your side whilst (trying to) change the subject to a problem on the other side. I don't understand why no-one brought this up in the discussion earlier, it's very transparent. All the -public- name calling demonstrates it nicely because it's basically committing the same 'crime'. Eye for an eye I don't think is considered terribly humane.
Now the interesting thing to me is the way they tried to trivialize the copyright infringement. Supposedly the code should have never made it into CVS, it was a mistake. However, it was being used to develop the driver for BSD (and to be licensed under the BSD license).
When corporations do stuff like this, they generally use clean-room reverse-engineering. I wonder what the legality is of the approach they used, copyright-wise. Consider a more extreme case. Let's say I take the Linux kernel source tree, and one by one I start 'rewriting' every bit of source (while most certainly glancing at the original), could I then license the 'new' kernel under whatever terms I want?
I could be wrong, but wasn't the copyright violation being made when the code is copied from the GPL code into the local development version of the developer? And the CVS commit is just a wider spread distribution after that? I've wondered about this for a while because 'tainting' is practically only being talked about in the context of closed-source corporations, not in the context of someone having seen Open Source software.
Parent
Re:Summary: Theo went over the top (Score:5, Funny)
Parent
Re:Summary: Theo went over the top (Score:5, Informative)
Actually, there is a time and place for flame wars. Justified anger is better than sitting aside while bad stuff happens. But this particular encounter did not justify the anger Theo displayed.
Bruce
Parent
Let's pretend MS is on one of the sides - decent? (Score:5, Insightful)
Below are two edits to the piece here [undeadly.org].
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
Parent
Re:Summary: Theo went over the top (Score:5, Interesting)
Anything that manages to get out in the free world needs to stay there, and any reasonable person will do his best to ensure it does. Further, using the GPL as a weapon against Broadcom, forcing them to open up their specs is really to the collective advantage of everyone.
Parent
Re:Summary: Theo went over the top (Score:5, Insightful)
Bruce
Parent
BeOS, an operating system for grownups (Score:5, Funny)
Hans Reiser, an open source maven who murdered his wife in cold blood, commented from prison that open source programmers had no abnormal personality problems, and were all "very smart people, very intelligent." Eric Raymon, fresh from a trip to the Paul Revere Institute Convention and Bondage Festival in Las Vegas, echoed these comments: "What the world doesn't understand, is that we are geniuses. There is nothing wrong with using strong language to intimidate idiotarians and freedom hating anti-gun liberazis".
Steve Jobs, emerging from a meditation chamber in his northern california home, opined that "he would fire half his open source staff" that night, as they had failed to properly implement a bitwise portrait of the mona lisa on the back of the motherboard for the new Apple Yojimbo motherboard family, slated to debut this fall.
The BeOS developers, currently washing dishes at a Sacramento Olive Garden, had the following comments: "Yeah, we are kinda bummed that we lost all that money. But frankly, I'm kind of glad to be done with those freaks. Apple, Microsoft, Lunix, what a bunch of creeps and sociopaths."
Echoed his boss "Johnny called in sick so I need you to work late tonight, is that OK?"
--
(parts of this story were contributed by James Gandalfini)
Parent
Re:BeOS, an operating system for grownups (Score:5, Funny)
Also, Richard Stallman is chair of the Free Software Foundation, not the Free Stalin Foundation, and the BeOS developers do not wash dishes at the olive garden. It's almost like GP was making false statements on purpose, perhaps for the sake of humor or something.
Parent
Re:Summary: Theo went over the top (Score:5, Insightful)
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.
Parent
Following the E-Mail Thread (Score:5, Informative)
Apparently the OpenBSD people were put off by this, which is unfortunate. And apparently they were so focused on making it yet another OpenBSD vs The World incident that they completely lost sight of the goal of both projects, which is to create Free and Open drivers for other people to use, despite the hardware specifications not being available. It's an unfortunate situation, of course.
Hopefully after everyone has a chance to reflect on the situation, the OpenBSD developers will realize that even though many other situations are actually OpenBSD vs The World, this is not one of them, and the Linux bcm-43xx team was not only willing to work with them on relicensing code, they also published the results of an incredible reverse engineering effort for anyone, including the OpenBSD team, to use in order to achieve this goal.
Parent
Re:Summary: Theo went over the top (Score:5, Insightful)
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?
Parent
Re:Summary: Theo went over the top (Score:5, Funny)
Correct. You are allowed -- nay, encouraged to do so, and post a link here on Slashdot.
Parent
Re:Summary: Theo went over the top (Score:5, Insightful)
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!"
Parent
Re:Summary: Theo went over the top (Score:5, Insightful)
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
Parent
Re:Broadcom using bcm43xx code? Hah! (Score:5, Informative)
Of course it is. Of course, most people don't realise this, because the evil, inhuman Michael Busch used his time machine to travel back to 2005 and plant fake mailing list archives [berlios.de] saying that the reason they chose the GPL over the BSD license was because they didn't want it taken proprietary especially by Broadcom [berlios.de], because of particular features of the open driver [berlios.de], when we all know it's just an evil, inhuman plot against Theo and OpenBSD. Thanks for alerting us to this deviousness, AC!
Parent
Re:Broadcom using bcm43xx code? Hah! (Score:5, Informative)
How any code from a reverse engineered spec that blatantly just guesses at a lot of things is better than something written with the docs is far beyond me.
I'm going to venture a guess that you're either not a professional software engineer, or still fresh out of college and very low on real world experience, then. At the very least, you've seen the codebases at very few companies, or you've just been very, very lucky.
I've had to throw out code and start fresh because the original code I was given was code that had been written originally years ago by an outside contractor brought in to do it, then maintained for the next two years by the hardware engineers themselves, under the premise that they're engineers, they've got a C compiler and a SAMS book, what more qualifications did they need? I was brought in because they couldn't figure out how to add some new features they wanted. The reason wasn't because the new features were tricky, the reason was the code was so hacked up it was impossible to change anything without breaking everything else. Alas, this level of code is all too common at companies that see their primary product as hardware rather than software.
I've also seen horribly base code that needed to be replaced at companies that had paid software engineers maintaining it the whole time. Why do you think the fact that they were paid software engineers somehow magically makes their code any better? It was crap, and the only reason they were able to get away with it was because no one outside their department ever saw it. There's no easier way to hide bad coding than to work inside a corporation on proprietary software. It's the easiest place in the world for it to occur, and often the hardest place in the world to get incompetent engineers off a project.
Parent
Theo is an idiot (Score:5, Insightful)
Re:Theo is an idiot (Score:5, Insightful)
Parent
Overreactions... (Score:5, Insightful)
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...
My favorite part... (Score:5, Insightful)
...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.
Re:My favorite part... (Score:5, Funny)
Having read some of the responses, and apart from Theo's arguments being dumb (like repeatedly insisting on calling use of the code a 'mistake', like Marcus fell into a well or something, when Marcus already admitted what he did), it made me wonder how he gets any real work done. I mean he left tons of responses on that thread. I got bored scrolling past them, let alone reading them.
Doesn't he have a home to go to?
Mind you, it's probably not a fun home to be in.
"Evening, dear. You're home late."
"That's because you're INHUMAN!!!"
"Whuh..?"
"Let me get a dictionary for you...DEMON!!!"
Parent
Straw man attacks and ad hominem from Theo (Score:5, Insightful)
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.
Re:Straw man attacks and ad hominem from Theo (Score:5, Insightful)
Reputation and respect are insanely important to most developers and being accused in public of stealing someone's stuff is damaging. Theo is responding with an appropriate amount of emotion if you ask me.
The proper response is to defend yourself against the claim, not attack the person; logical fallacies may be motivated by emotion, but that does not make use of a logical fallacy legitimate or justified. That's the entire point behind ad hominem attacks and other logical fallacies. They're poisoned arguments. Even if you have a legitimate claim, using logical fallacies in front of people who realize what's going, gives them the distinct impression that you don't have any legitimate arguments in your defense at all.
Parent
As the World Turns (Score:5, Interesting)
Without question, the Linux developer did not need to cc the whole word when first making his inquiry -- he should have contacted them in private. I would also suspect that the BSD developer was just using the Linux code as a drop-in replacement for the time being until he rewrote it with a BSD license. I do not believe the BSD developer was trying to steal anything or take credit for something he did not develop. He made a mistake, for sure, but I do not believe there was any ill will on his part.
However, the biggest story in all of this is just how freaking childish Theo is. I cannot for the life of me figure this guy out. He kills his own cause and make OBSD look like a playground for schoolyard bullies. Imagine how much better he and OBSD would have looked if they had responded to the initial mailing list post with something like: "Hey, we would have appreciated it if you had contacted us privately. In any event, we are quite confident there was no intent to take GPL code in violation of the license. However, we will discuss this, decide the appropriate remedy, and respond to you privately. Thank you for bringing this to our attention."
Matter solved, no drama. But Theo has to open his big fat mouth. Theo: it's called taking the high road, even if you didn't start it. Try it sometime.
Besides, Theo himself cross-posts to other lists all the time to incite flame wars. Just look at last month's FreeBSD-advocacy list -- he cross posted during a thread about the use of his dear Puffy on an anti-blob poster. Pot, meet kettle.
Silly (Score:5, Informative)
The crux of Theo's complaint seems to be that they "went public" by emailing too many people. When some of the people in on the email pointed out that they were the ones that actually did the hard work of reverse-engineering, Theo said:
Wow. Just, wow. I often agree with Theo even when he's being a knob because he's usually got a point. But in this case, he's been embarrassed, and he is using whatever he can think of as an incredibly flimsy excuse to attack the people whom the OpenBSD developer plagiarised. What a childish, unproductive attitude. Pulling the code and giving up on the driver instead of taking them up on their offer to relicense the code is cutting off your nose to spite your face, and worse for your users. Just take your ball and go home, Theo.
This is the worst possible offense in open source (Score:5, Insightful)
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.
I'm glad I don't work on OpenBSD (Score:5, Insightful)
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...
And the best part is (Score:5, Funny)
Irrelevant . . . (Score:5, Insightful)
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.
Trolls on both sides (Score:5, Informative)
First, let me say that I am totally shattered and disappointed. I am doing work in both the Linux and BSD communities, and this is by far one of the most destructive flamewar I have ever witnessed. It will be hard to repair the damage done... This is very sad.
It's only fair to note that while there has been lots of stupid flaming on the OpenBSD side as usual, the linux bcw developers, while trying to appear rather nice and careful on the public mailing lists, where laughing their asses off about the whole thing behind the scenes in their IRC channel. They didn't exactly try hard to keep things peaceful either.
http://bcm-specs.sipsolutions.net/irc-logs/bcm-sphttp://bcm-specs.sipsolutions.net/irc-logs/bcm-sp
http://bcm-specs.sipsolutions.net/irc-logs/bcm-sp
http://bcm-specs.sipsolutions.net/irc-logs/bcm-sp
Some quotes, the first one actually shows the igniting spark. Others show how people enjoyed watching the flames.I find it disgusting that some people seemed to enjoy watching an already brittle relationship between two deeply related communities fall into pieces. Do they also throw stones at public demonstrations and then go home to watch the riots on telly?
Re:I am amazed (Score:5, Insightful)
Parent
Re:I am amazed (Score:5, Informative)
It is. This leaves the question of whether you are OK with some people who refuse to share. If the answer is no, use GPL. If yes, use BSD. You also have the option of using GPL, and asking for money from those who prefer exchanging money over sharing code, as MySQL does with its dual-licensing.
Bruce
Parent
Re:I am amazed (Score:5, Insightful)
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
Parent
Re:The BSD folks seem to be whiners (Score:5, Insightful)
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.
Parent
Re:The BSD folks seem to be whiners (Score:5, Informative)
Parent
Re:Summary of the Facts (Score:5, Informative)
Parent
Re:Summary of the Facts (Score:5, Insightful)
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
Parent
Re:Summary of the Facts (Score:5, Insightful)
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
Parent
Re:Summary of the Facts (Score:5, Insightful)
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.
Parent
Here's why (Score:5, Insightful)
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.
Parent
Re:The war against BSD continues (Score:5, Insightful)
Parent
You have got to be kidding (Score:5, Insightful)
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.
Parent
Re:You have got to be kidding (Score:5, Insightful)
Parent
Re:sad (Score:5, Insightful)
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.
Parent