Slashdot videos: Now with more Slashdot!

View

Discuss

Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).

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 was discussed on Technocrat a few days ago. Apparently the
Linux kernel developer did not wish Broadcom to take advantage of
his work in proprietary products. Given Broadcom's record of having a number of undocumented, closed-driver-only products that we have to reverse-engineer, and having some proprietary drivers that IMO violate the GPL on the kernel, I can see why he'd feel that way.
The BSD developer was an accomplished BSD committer and should have
known better. The Linux developer offered to relicense some of his code
under BSD. Theo decided to turn it into a human-rights issue with great flamag. The BSD
developer walked off in a huff.

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.

Theo is a real sharp programmer, and an eloquent writer when he wants to be. I met him once. I went to shake his hand. I swear, he did not notice. This left me to think that when Theo commits social gaffes, it is not his fault and he can't help himself. We all have our lacks, issues, and strengths.

You know, the funny thing is, right now, you're the one making a decision to be an asshole rather than giving a shit about other people.

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.

What you see as apathy could very well be making the choice to just not give a fuck, as GP noted.

That is pretty much what I mean. Also, lest you think I'm being discriminatory, most of the people I had in mind when writing that comment have been diagnosed with Asperger's or Autism. Some of those people, though, demand that they be treated with a double standard. When those people ask me to tolerate anti-social behavior that is not a result of their disorders, I typically refuse, just as I refuse to accept most any sociopathic behavior.

A more interesting question would be whether a certain type of work selects for Asperger's Syndrome or a similar disorder. Bram Cohen claims to have it, and in spite of the problems it has caused him says that it aids his concentration, his ability to focus on his work. Many great programmers I've known over the years (not all by any means, but a significant number) almost seem to lack social skills in direct proportion to their technical abilities. I'm not trying to infer cause and effect, but from a purel

This left me to think that when Theo commits social gaffes, it is not his fault and he can't help himself. We all have our lacks, issues, and strengths.

I'm sorry, but I cannot agree with you on this. The way Mr. de Raadt treats other human beings is simply abusive, and there is no external factor than can explain his behavior in any fashion that would justify coddling it. Unless you are seriously willing to argue that the man is not, in a legal sense, mentally competent, then it is most certainly a proble

Really? I read him as being defensive of his contributors. Like a thinking, caring supervisor would. There's no question it could have been handled better. The very public airing of the violation was almost certainly intended to hurt rather than help. Theo made that point.

Every time something like this comes up, I hear a lot of "Theo is an asshole", but then I read the messages involved and I fail to see the assholery. He seems to be smart, articulate and protective of his project--as I'd expect him to be. About 70% of this bruhaha is juvenile "Linux vs. BSD" cockfights.

Theo is a real sharp programmer, and an eloquent writer when he wants to be. I met him once. I went to shake his hand. I swear, he did not notice. This left me to think that when Theo commits social gaffes, it is not his fault and he can't help himself. We all have our lacks, issues, and strengths.

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.

I read the whole thread, too. I saw Theo defending his developer. I read your post threatening to take your ball and go home as more of the same juvenile antics. It's a goddamn OS, you nutjobs. And a lot of you people whale on evangelicals for believing in the Bible. I guess I understand--it's not like the Bible is nearly as important as a Linux distribution.

But in some sense the announcement had to be public. The copyright infringement was public. Without a public protest, someone could unknowingly take that code and incorporate it into proprietary software. Even if resolved privately first, a public announcement describing the duration and scope of the contamination would still be necessary after the fact.

I feel saddened by some of this, the community fighting, but then I wonder if perhaps I'm just emotional, being both a GPL and BSD license supporter. Sometimes I like to move things around, to see how it works.

It is Bruce Perens' fault that UID numbers are paraded here on Slashdot, leading to an elitist attitude about low UIDs. Back in the day there were people who had fun masquerading as Bruce Perens in some of the threads. It led to taglines saying 'I am the REAL Bruce Perens' and other adventures. Eventually it led to UIDs being explicitly displayed at the top of every comment header. Which was essentially a roll-back of the formerly more egalitarian tone on/. The reason it is Bruce Perens' fault is that

His position is completely rational for those of us who have worked with Broadcom. Even their closed source stuff is often junk and requires tremendous effort to work around, with poor support and impossible management. Even after signing NDAs and GETTING chip specs or sample code, you're still left out in the dark.

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.

You know, it's OK to use a GPL driver in BSD code. It causes a phenomenon that the BSD folks really hate, though, which is that the GPL applies to the entire product. But that would have been fine for temporary development. The real problem was the lack of proper attribution of the copyright and license. I see no way for the Linux developer to have rectified that lack other than through a public notice, because it would not have been proper for anyone to be left thinking his code was under the BSD license. It was his right to say publicly that it was not. Perhaps he could have contacted Theo privately and gotten him to do so. But given people who react the way Theo sometimes does, I think the best protection one can have is to do everything in the open where others can see.

BSD does not require attribution (in fact, that clause was specifically removed.) As long as the license appears somewhere in the project, it's sufficient. (IANAL but this is how I understand it.) On top of that, the BSD license is so open that, if the license did not specify that the license must be included, it really wouldn't be necessary - you can take BSD code and do pretty much whatever you want with it, including add it to a GPL project, or modify it and GPL-license the modifications. (Or, for that matter, not modify it and then provide the original source code under the GPL.)

The GPL is different in that regards. If I saw GPL code in a BSD project, and the GPL code was not marked as such, I would have no way of knowing that it would be illegal for me to take that code and treat it as BSD code. As such, any GPL code added to a mostly-BSD-licensed project must be marked explicitly as such.

I don't know what the issue with the Virgin WebPlayer is, but the others are all BSD-licensed code added to a GPL project, which doesn't require any specific notification beyond the BSD license appearing somewhere.

That's why he said it's okay for temporary development. While it's being developed behind closed doors, so to speak, it's not being distributed, so it's okay. In order for them to distribute it they would have to make the entire thing GPL, or, as you said, it would be copyright violation, and the BSD guys would not like either situation.

Fast on the heels of Ballmer's tantrums and chair throwing, the BSD community was today wracked again by the borderline personality disorders and rageaholics that permeate the open source movement. Theo De Raadt, founder of the Open BSD Brigade, in an apparent fit of anger, threw his fist through a wall as he was cussing out an acolyte of Chairman Richard Stallman, leader of the competing marxist organization, the Free Stalin Foundation.

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?"

He has been arrested, but he has yet to stand trial. Given that we are "very smart people, very intelligent", we should be able to distinguish between the two.

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.

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.

I managed to catch front-row seats to the whole battle myself. Buesch (the Linux bcm43xx developer) posted a formal but not in any way harsh question to the BSD developer on the public bcm43xx list and to the BSD list. In any language, when communicating in unfamiliar places with unfamiliar people, using more formal dialects is almost always the rule. Some people find the higher dialects offensive, but almost everyone appreciates the attempts to not sound like one of the local street punks hanging out around the corner at the strip mall trolling for some action.

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.

That wasn't going "over the top", that was an out and out psychotic event. I mean, I know it's not news that Theo has a few social limitations, but -- wow. If someone ever wants to demonstrate what Theo is all about, just point them over to that thread. It's never been so clear that Theo is mentally unbalanced.

And I'm not saying this to be "mean", only that I hope someone in his life eventually convinces him to get him help.

What's really funny about all this is that Slashdot is all about advocating piracy under the guise of some anti-RIAA movement (when it's really just fucking over artists), but heaven forbid someone use GPL code. I mean, EULA aren't legally binding, but a GPL text header is? The double standards seem rather self-serving.

An EULA is not legally binding because it is (illegally) forced on you after the sale of a product, restricting your legal rights. The GPL is not forced on you; if you choose to reject it, normal copyright kicks in. If you choose to accept the GPL you receive additional rights not normally given to you under normal copyright.

The GPL has been out there for a great number of years. I hope your comment is based on little knowledge on the difference between EULAs and the GPL, and not on intentional putting dow

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?

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?

Correct. You are allowed -- nay, encouraged to do so, and post a link here on Slashdot.

That's why statutory laws don't say "distribute" alone. They say "distribution or offer for distribution." Manifest intent to commit a crime with tangible evidence (the equivalent of a signed letter stating that you intend to rob bank X on date Y with weapon Z) is more than enough for law enforcement to take action. If you're stopped before anyone gets hurt, you're still charged--the whole IDEA behind law enforcement is to intercept crimes, to punish crimes that have occurred despite those attempts, and to discourage the incentive to attempt those crimes in the first place by virtue of a good track record and a strong fist of justice.

Now I don't personally know what kind of development you've been involved in but commiting to cvs is not and has never been distribution.

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.

Michael Busch's whole argument that they GPL'ed the damn thing because they didn't want Broadcom to take advantage of their work is BS.

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!

As a matter of fact, I've just inherited a substantial fortune from a relative overseas. If you could front me a few grand to cover the foreign probate fees and wealth import taxes, I'll be in a position to send quite a bit of business your way.

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.

To further illustrate your point, people should look at the source code some of those companies are forced to release, either before going belly up or due to some other circumstances.

My favourite example is the supreme abomination which is the evily hacked up Zaurus kernel (as released by SHARP). The thing "compiles" with about 500+ warnings to begin with. And that is only an early outside indication of the rot within. Its like a vile smell on a corpse trying to warn the unwary a

Just how likely is it that yourself and the three others who modded this insightful didn't bother to actually acquire some knowledge of why the developer had that view?
It's all explained in any number of places, including this post in the thread:

Apparently the Linux kernel developer did not wish Broadcom to take advantage of his work in proprietary products
Just how likely is it that there is anything in the Linux driver that would be useful to Broadcom? Broadcom already has fully functional proprietary drivers for their chips.

Quality of code, for one. Hey, a Honda Civic is "fully functional", just like a Mercedes S500 is "fully functional". Doesn't mean they're in the same league. From what I understand, the quality of the Broadcom code is j

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.

He was very civil. What he was not was quiet or non-embarrassing. Theo's reaction is clearly an attempt to direct attention from the facts of the situation and the poor behavior of a member of the openbsd team.

I would certainly not call it grand strategy, but come on. He wrote half the messages in the email thread, nearly every one of which ignored the actual copying of code, instead attacking the way the real authors of the code handled the situation. Clearly he wants people to look at how the complaint was made rather than what it is people are complaining about.The fact that this is childish behavior just confirms it. This is the original "Follow my rules or I'm going to go play by myself." The whole OpenBSD p

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.

What this thread is about is that the author of the GPL's driver, Michael Buesch, didn't even attempt to handle this civilly, you know like chatting it through on IRC, or sending off a few private emails.

That seems to be Theo's deflection mechanism as well. I have one question: Why?

Sheesh, if I got that email, I'd apologize, thank them for the offer to use their code, and move on. Here's a good rule for life: if you would be embarrassed by what you're doing being publicized, maybe you shouldn't be doi

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...

Yes, and you could tell from Theo's initial response that it was that wide distribution that really torqued him into a pretzel. Nobody likes having their dirty laundry aired in public (it immediately alienates the very people with which you are trying to communicate: as a tactic it should be a last resort) and it is that massive CC list that makes me ponder what Mr. Buesch's real motive could have been. From a practical standpoint, if he'd just wanted to resolve the issue he should have done what you said. Instead, he managed to turn a simple request into a two-day running conflict.

Maybe this is just an example of two developers with limited social skills stepping on each others toes. I don't know, it sure looks that way to me. Wouldn't be the first time I've seen something like this, that's for sure. Programmers are people too.

While it's probably more socially graceful to email Marcus directly, in this case I don't think it would have been productive. Marcus was aware of the GPL'd code, and had informed Theo of it. They both knew what was going on and decided it wasn't important. I haven't had the opportunity to deal with Theo directly (knock on wood!), but I've never seen Theo interact nicely with Linux or other GPL communities, and it seems like every one ends with some innuendo blackmail over OpenSSH. But perhaps I'm just draw

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.

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.

It's this kind of social ineptitude that hurts F/OSS. I have talked to network administrators, mostly at small businesses, that have a hard time finding the money for MS and others during upgrade cycles, but they still find it less risky than using F/OSS because of things like this that they have read about. Politics dictates business, yes, but after you paid for something you usually have an expectation that the company won't walk away from it on you. Personal politics in F/OSS projects leads to this joke.

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.

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.

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:

And how exactly does seeing this public flogging involve you?

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.

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.

Erm, no. The developer admitted that he copied the code over so that he could make progress on another part of the code. It was his intention to remove the copied code at a later date. By not even leaving any notes in the code about the copy and checking that code into a public cvs repository, the developer made a pretty big (yet fixable) mistake.

I'll admit it, I've done that very thing (copy some code in order to bootstrap a project). But I put all sorts of comments around tainted code, and I make damned sure that every single line of tainted code is rewritten before that code, or a product based on it, is released into the wild.

Theo and Marcus both come across as graceless and petulant children. At least Marcus decided to be childish quietly. Theo's ongoing rants about "the inhumanity" of it all just get hysterical after a few posts. Yes, the original email probably should have been more private. But the response from Theo is completely and utterly over the top.

I've been using ndiswrapper with my BCM4306 802.11b/g device since before bcm43xx was useable on linux. Getting the bcm43xx driver to work involves firmware cutting and some other low level tricks I'd rather not do. I've never used a BSD and would never touch Theo's distro with a 99ft pole but I recommend using ndiswrapper for users who would like to use BSD and have a BCM wireless device.

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...

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.

Listening from far away, it seems that asking about this on the mailing list is fair. Maybe some people wished it was done person to person, but that judgement cannot except in some insane person's head (like Mr. De Radt) equate to being inhuman, which we usually reserve for someone who does much worse things.

In fact Buesch was quite level-headed about it even when De Radt threw all kinds of crap at him and then other people on the mailing list jumped on board too. Considering that BSD is the key channel for the GPL work to find its way into manufacturer's machinery, I'd say the authors (who by the way deserve that title quite a lot more than the guy who went off in a huff) could stand to have been a little angrier in tone and still be within their rights.

It looks in fact like it was Theo de Radt's fault alone for blowing it up into a huge problem and he is solely responsible for the BSD guy to quit his attempt to import the GPL code.

Theo should have said the very first time, "OMG I'm sorry we'll pull the code, and I'll contact the developer and get right on it with you. Thanks for being understanding."

This is clear proof to the world not that anyone is inhuman. It does suggest that De Radt is unfit for whatever leadership position he has, and should resign, or at least get someone else to be in charge of similar issues in the future.

Perhaps someone could write some guidelines to BSD people concerning what is appropriate in terms of "paraphrasing" other code or making use of someone else's reverse engineering. It seems other people could fall into a similar problem and they better hope De Radt is not online that day.

95% of the conflicts between human beings - supposedly civilised ones - would not exist if not for the overly inflated ego of the participants. There is no issue here. Either the usage of the code was wrong or right according to strict licensing definitions. Since it appears everybody agreed to the fact it was wrong, the next step is clear. Why the fuss, and the emotions, and the name calling? Mistakes happen.. just fix them and move on.

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.

More commentary from the BSD community is over at undeadly.org.

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.

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?

[20:55] <nbd> when you complain about the license violation, please make it publicly:)<br>
[20:55] <mb_> I think I should contact them. That's crossing a border. Copying magic register writes is one thing, but copying algorithms is another<br>
[20:55] Action: nbd thinks this is very blatant<br>
[20:55] <johill> mail the authors, Cc Theo de Raadt, and bcm43xx and jon (lwn)<br>
[20:55] <st3> i'dd cc lkml too<br>
[20:55] <johill> watch the outcry<br>
[20:55] <st3> for the sake of fun<br>
[20:55] <mb_> no, not lkml<br>
[20:56] <mb_> I don't like stupid replies from retards in my inbox:)
[20:56] <johill> heh
[20:56] <mb_> Too many of them subscribed there

[01:40] <johill> nothing
[01:40] <johill> fluff
[01:40] <johill> he needs to fill his email with long paragraphs
[01:41] <johill> (I think he's trying to say that the developer who stole all the code shouldn't really be blamed because he might be too much of a wimp)
[01:41] <johill>;)

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.

I more or less agree with you--I use FreeBSD over linux myself, and am not a huge GPL fan, but the situation is a bit different from the cookies example.

I'd say it's more like "here you can have this cookie recipe, you can do whatever you want with it (make cookies, sell them, etc) but if you change the recipe AND distribute the cookies to anyone else, you have to be willing to share the recipe too"

It used to be. If you read a book called Homesteading the Noosphere by Eric Raymond at some point, he writes in it about something he refers to as a gift culture. GPL advocates will try and tell you otherwise, but in reality the GPL is a gross perversion of that concept. The BSD license is a lot closer to it.

The entire motivation of the GPL is fear. You will never hear a GPL advocate try and tell you that the GPL is a good idea for any reason other than

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.

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.

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.

Except if this was done in private no one who pulled the tainted code from the public CVS would know. There would be copies of the code floating around in public that were in violation of the GPL. It had to be public to guarantee everyone knows (Especially Broadcom) that the BSD code in the public tree is actually GPL code.

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."

1. Benefit of the doubt of what? Oh, honey, I tripped, fell and impaled myself on his dick? (excuse the example.)2. This kind of thing must not be done quietly because people might have downloaded tha

They _are_. Actually, these seem to be the _only_ facts that are relevant to the discussion in the first place.

Even Jeff Garzik, one of the bcm43xx developers

Jeff is not one of the bcm43xx developers. He's the linux net maintainer.

It's unfortunate that Michael Beusch is more concerned about defending his actions than correcting the injustice.

It's interresting that people seem to think _I_ have to apologize, as the OpenBSD developers did the Bad Things in the first place. There's a simple rule: Don't violate copyrights and don't get blamed for it. It's so simple.

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.

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.

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) - you are wrong. It was absolutely necessary to make sure that everyone knew about this for at least two (2) good reasons. First reason is to make sure that nobody downloaded the code from the cvs and used it for further coding assuming it was licensed under BSD. Second reason is to provide a valuable lesson that nothing goes unnoticed and that mistakes of thi

the real sticking point is that you didn't offer the man an attempt to remedy the situation privately and in good faith.

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 li

It turned a spectacle only after Theo responded the way he did.
The correct response would have been
"Oops, you are right, there seems to be a problem. We'll sort it out".
With this response there wouldn't have been any spectacle
and everybody would have been fine afterwards.
Michael could have made first contact by email but
equally well what he did was within reason.
If Michael would have started be creating an thread on/.
that would have been out of line, but not this.
After all Marcus did copy code into his own project
stripping out the original copyright notice and distributed the result in violation of the copyright
Is this not the real beef in here?
>>> Nobody disputes that GPL code was committed to OpenBSD CVS.
Theo tried to dispute this many times by trying to ridicule Michaels point
by making strawmen about whitespaces and stuff.
It is just that Theo was not succesful when he tried to dispute this.

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.:)

None of these facts are relevant to the discussion. The sole issue is that Michael Buesch made a public spectacle out of Marcus' mistake. It should have been addressed privately between developers, and then broadcast publicly if discussions were unsuccessful. Regardless of whether you believe Marcus' actions were a mistake or a theft, you must give someone with his track record the benefit of the doubt. By embarrassing him publicly, Michael destroyed Marcus' motivation to work in bcw(4) and benefit the non-GPL user communities.

Even Jeff Garzik, one of the bcm43xx developers, admitted that Michael's actions were wrong [gmane.org]. It's unfortunate that Michael Beusch is more concerned about defending his actions than correcting the injustice.

I agree with you that doing in a public forum was harsh and that responding privately would have been more polite and possibly would have lead to a better resolution. But I don't agree with Theo's hyperbolic characterization of Micheal and the others as a bunch of GPL fanatics relishing at the opportunity to drag an OpenBSD developer through the mud and then try to make him come back begging like a dog (yes he used both those metaphors). Micheal and the others were probably a little angry, with good reason

Actually, a number of times Theo characterised their complaint as being about copyrighted whitespace and variable names, even after being told to look at the code. Example:

I mean, if I were him, why would I bother going on, when there are
accusations about copyright being based on white space, variable
names which are the same, or simple "save the registers" algorithms
which you feel are too similar.

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.

This isn't an issue of his code being copied exactly (a straight copyright violation), instead it's an issue of a certain amount of code in an as yet non-working driver being too derivative of a copyrighted product.

Did you actually try to compare both projects? You'll be surprised how much copied code you will find.

Did you read the thread? Did you even read the email you link to? You conveniently omit that if there is one person who "comes across as a bit of an asshole", it isn't Michael (hint, his name starts with a T). It was a mistake to do this public (although, I can understand it, I do not think he realized that this would be picked up by newssites, etc. Although arguably, that could have been avoided if Theo had not been so flaming, Marcus response was quite reasonable and the issue would have been quickly solv

> From: Marcus Glocker > To: source-changes@> Date: Thu, 5 Apr 2007 10:25:25 -0600 (MDT)> Subject: CVS: cvs.openbsd.org: src[cut:cvs log]> Log message:> After been attacked by Michael Buesch because we initially> were using some of their routines in the bcw driver, I decided to stop> working on it. To avoid any further license chit chat I plain drop the> driver.>> ***>> Happy now?>> It's a pleasure to see how the OpenSource community stands together,> and starting public wars instead of talking directly to the people> involved.

I don't understand your reaction, really.If you were really interrested in doing a Broadcom wireless driver foropenbsd, you would have chosen the option to relicense some code (andtherefore drop only that code which I refuse to relicense), which I gaveyou.

It's a pity. I'd like you to sleep a night over this and rethinkyour decision tomorrow.Feel free to contact us to get code relicensed _before_ you re-addit to the repository. This will make you and us happy and I'm sureyou'll have a working driver soon.

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.

If they also distributed it in public?
Exactly the same way. Distribute in public -> complain in public.
The public has the right to get informed that the code thei're looking at is _not_ BSD licensed, like the source header says.

Oh give me a break - no one was "lynched". If you think so, please quote the relevant lines from Michael's posts. The fact remains that the GPL'd code should never have been in the BSD repository without permission, and when called on it the BSD folks got their panties in a twist even after Michael offered a means to resolve the situation in a manner that would benefit the BSD project.

And *none* of the discussion thus far explains how the BSD people thought they could implement the driver using the GPL

Yes, and to give you credit, at least you're admitting it. I doubt even Theo would make such an admission about himself.

The driver is deleted. Issue resolved.

Try this: grab someone's copyrighted code, and distribute it in violation of the license. Then when they drag you into court, just say "oh, I've deleted it now, issue resolved" and see how far that gets you.

The point that Theo and gang are upset about is that Michael decided to take this whole thing public

No, that's the excuse that Theo is using. The real reason that Theo is upset is that he got caught with his pants down.

'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.