Slashdot Mirror


Who's Behind the Google-Linux License Ruckus?

jfruhlinger writes "Yesterday, news broke that Android might have a Linux copyright problem, which would be big trouble for Google, already locked in an IP struggle with Oracle over the mobile platform. Blogger Brian Proffitt looks deeper into the alleged violations. He notes that, while it's possible that Google's on shaky ground, the motivations behind the news release are murky: the lawyer who outlined the violation is an ex-Microsoft hand, and the news was widely propagated by gadfly Florian Mueller, who's tangled with Google over patent issues in the past. Moreover, the alleged violations are in header files, and it's not clear that those are copyrightable; if they are, no actual copyright holders have come forward to complain."

21 of 241 comments (clear)

  1. Re:He's still right in pointing it out by dclozier · · Score: 4, Informative
    The headers files are standards defined!

    Can such standards defined files be copyrighted? IBM argued in its case against SCO that the Unix and Linux header files couldnâ(TM)t be copyrighted because of these issues. In the event, it was proved that Novell, and not SCO, owned Unixâ(TM)s copyrights and that issue, to the best of my knowledge, was never settled. Still, speaking for myself, it seems unlikely thereâ(TM)s any danger to Android or Android programmers from Linux header file copyrights.

    Do they have a case?

    This is just more FUD being generated by Microsoft's shills.

  2. What copyright holders? by n2rjt · · Score: 4, Insightful

    The Brian Proffitt blog spells it out nicely. The bionic library has standard header files. That's the API definition, not copyrightable sorry. So, even though glibc has very similar header files, using the same names and everything, Bionic did not steal anything from glibc. They simply implement the same API, so they must, by definition, have the essentially the same header files.
    Nothing to see here, move along. But before you do, read the blog. I'd score it a 5 if it were on slashdot.

  3. Re:He's still right in pointing it out by HBI · · Score: 5, Interesting

    Florian and the lawyer pointing this out are Microsoft paid shills. They are attempting to sell WP7. This makes whatever point they were making pretty much irrelevant. If it was a big issue, the kernel devs would be making noise, not these whores.

    For details about Florian, just Google...

    --
    HBI's Law: Frequency of calling others Nazis is directly correlated with the likelihood of the accuser being Communist.
  4. I agree by Anonymous Coward · · Score: 4, Funny

    All 3 Windows 7 phones have no malware (yet).

  5. Re:He's still right in pointing it out by WrongSizeGlass · · Score: 3, Interesting

    This is just more FUD being generated by Microsoft's shills.

    And though it's intended effect is to tarnish Google's image/brand consumers really don't give a shit. They're going to buy an Android phone if they want one despite any copyright issues or what could turn out to be platform propaganda.

    I think this is W7P's first shot across Android bow.

  6. Re:He's still right in pointing it out by Daniel+Phillips · · Score: 3, Insightful

    So what if it's an ex-Microsoft hand pointing it out? He still seems to be correct.. Even if he would have something in mind when pointing it out, it doesn't change the fact.

    True, and if the ex-Microsoft exaggerates the issue then it is still a troll. Note that the best trolls always contain some grain of truth. I finally got around to reading the brownrudnick whitepaper-looking-thingy on this issue. It smacks of troll. It fails to convince me that Google's kernel header sanitizing process is different in nature from what is done to create libc kernel headers, without which userspace applications would have a tough time interfacing to the kernel.

    On the other hand, I am convinced that Google did itself and our community a disservice by failing to do the obvious thing and consult with the kernel community on this question beforehand. Simply posting a link to the sanitized kernel headers to lkml would have done wonders. Google displays more than a small amount of arrogance in its handling of this and other important community issues. I do not think that is a good idea.

    --
    Have you got your LWN subscription yet?
  7. Drives people from GPL, not FOSS by perpenso · · Score: 3, Insightful

    And every time issues like this come out, it drives people further away from developing Open Source alternatives. They think "If Google is having this much trouble, we'll get sued in to bankruptcy!"

    Not quite. Replace "Open Source" with "GPL". There is no such fear among users of BSD and comparable licenses. I'm not saying the GPL is bad, I am just saying that there are costs associated with everything. If your license is viral, restrictive or ideological then its adoption will be impeded to some degree despite any idealistic motivations.

  8. Re:He's still right in pointing it out by tomhudson · · Score: 5, Informative

    This is not about userspace API headers (which are partially defined by POSIX spec, but partially Linux specific, by the way).

    This is about kernel headers. Their content is not defined by any standard.

    You're wrong. This is about a cleaned-up header file that lets user-space programs call kernel services, as permitted by the COPYING file (a non-standard modified version of the GPL that specifically says user-space programs can call kernel services without invoking the "derived works" clause) that comes with the linux kernel source code.

    And the content of the cleaned-up file IS stuff defined by POSIX or other standards, structures, etc. This is not about including chunks of the kernel in user-space programs.

    Astro-turf much?

    (okay, you might have made an honest mistake, but wouldn't it have been easy to check first?)

  9. And Bionic is different from glibc how? by tbird20d · · Score: 5, Insightful

    This whole thing just makes me angry, because it ignores legal standards that have applied to Linux and been accepted by all parties, for years. If Naughton's legal analysis is correct, and use of the Linux header files causes the GPL to apply to the utilizing work, then glibc is in more danger than Bionic is. glibc is LGPL, not GPL, and has been using "full" Linux kernel headers for years. How could Bionic, using a stripped down subset of the same headers, be subject to the GPL, if glibc is not?

    1. Re:And Bionic is different from glibc how? by MtHuurne · · Score: 3, Interesting

      What I gathered from the previous articles is that Bionic includes headers that are automatically generated from the Linux kernel headers with a statement added by Google that those generated headers contain no copyrightable material. What glibc does is compile against the unmodified Linux kernel headers, which must be present in some directory on the machine doing the build. So glibc includes the kernel headers by means of the C #include preprocessor directive, not by copying text fragments from them into the library package. I haven't looked at the Bionic sources, so I haven't verified this myself; it is based on statements in the articles.

      What I wonder is why Google would not simply compile their libc against the Linux kernel source, like glibc does. That would avoid the legal uncertainty. Is there anyone familiar with the Android internals who can shed some light on this?

    2. Re:And Bionic is different from glibc how? by phantomfive · · Score: 3, Interesting

      The legal analysis is here. The argument is basically that Bionic copied directly from the kernel, like this clever implementation of a byteswap. It's the cleverness that makes it copyrightable, whereas headers that only include defines used for interopt are not copyrightable. The glibc version of the same file is original; it doesn't come from the Linux kernel (at least I can't find it). So the problem is there may be original ideas that come from the linux code that got put into bionic. At the same time, it would be hard to argue that a program linking to a standard C library is a derivative work of that particular implementation. I believe such an argument would get laughed out of court.

      Now, this guy is a lawyer, and he understands copyright law more than me, but his understanding of this particular issue is weak. The example given earlier, of the bytewaps, does not apply at all to any developers on ARM because that was x86 specific code.

      His second argument is extremely weak. He says the API is also copyrightable (which is sometimes true), and that if it were not, someone could use it to re-implement a closed source version of Linux. Which is true, but it's a rather braindead thing to worry about: getting the API is not the hardest part of that (and indeed, BSD has a linux compatibility layer that responds correctly to the Linux APIs).

      --
      "First they came for the slanderers and i said nothing."
  10. Re:He's still right in pointing it out by shutdown+-p+now · · Score: 3, Informative

    You're wrong. This is about a cleaned-up header file that lets user-space programs call kernel services, as permitted by the COPYING file (a non-standard modified version of the GPL that specifically says user-space programs can call kernel services without invoking the "derived works" clause) that comes with the linux kernel source code.

    You're right, and I stand corrected.

    Is it the same exception that permits glibc (which necessarily uses those headers) to not require linking apps to be GPL?

    okay, you might have made an honest mistake, but wouldn't it have been easy to check first?

    You must be... uhhh... nevermind. Off your lawn. ~

  11. Re:What I'd like to see with the GPL by tomhudson · · Score: 5, Insightful

    is simply this... when a new version of the GPL comes out and you wish to continue using the GPL, all future licensed software must be released under the new GPL license. GPL 3 is amazing, but too few people are using it.

    First, the GPL forbids that sort of restriction.

    Second, what if some future version of the GPL contains something that makes it less free?

    Third, the GPL v3 has some flaws. Android wouldn't be commercially possible if linux were GPL v3.

  12. Re:No complaints? by tomhudson · · Score: 5, Informative

    There may be no specific complains yet, but Linus has been quite explicit and unambiguous in the past about how he thinks the GPL applies to Linux kernel headers:

    In short: you do _NOT_ have the right to use a kernel header file (or any other part of the kernel sources), unless that use results in a GPL'd program. ... BUT YOU CAN NOT USE THE KERNEL HEADER FILES TO CREATE NON-GPL'D BINARIES.

    Of course, Linus is not a lawyer, and his interpretation of GPL may not be correct. But the gist of the original story was that it was legal analysis made by an IP lawyer, and he essentially agreed with Linus.

    Oh, I know, I know! Linus is a paid Microsoft shill! Right?

    Okay, now you're definitely trolling, seeing as we've dealt with that question numerous times, and the COPYING file makes it clear that you CAN use kernel headers to make user-land binaries without triggering the "distribution" clause.

    What you can't do is make a closed kernel.

    NOTE! This copyright does *not* cover user programs that use kernel
    services by normal system calls - this is merely considered normal use
    of the kernel, and does *not* fall under the heading of "derived work".
    Also note that the GPL below is copyrighted by the Free Software
    Foundation, but the instance of code that it refers to (the Linux
    kernel) is copyrighted by me and others who actually wrote it.

    Also note that the only valid version of the GPL as far as the kernel
    is concerned is _this_ particular version of the license (ie v2, not
    v2.2 or v3.x or whatever), unless explicitly otherwise stated.

    Linus Torvalds

    GNU GENERAL PUBLIC LICENSE
    Version 2, June 1991

    So, since the limitations of the GPL (distribution of source) have been expressly waived for userland programs that only call kernel services, there is NO copyright violation for using the header files in such a fashion, ever.

    But keep shilling. It gives more opportunity to refute your arguments.

  13. Re:He's still right in pointing it out by Anonymous Coward · · Score: 3, Interesting

    The only thing unsubstantiated here is your post. Anyone who has noticed his little /. ritual - posting within a minute of the story hitting the front page, and bringing up Microsoft even when it's unrelated to the topic - can easily associate all of his accounts. His posts are usually correct half the time - which is why people step out to defend him - but they always are (a) defending Microsoft at every turn, (b) criticizing any of Microsoft's competitors, or (c) defending corporate interests (such as anti-piracy movements).

  14. More noise from Microsoft, obviously by eee_eff · · Score: 4, Informative
    Microsoft has been shown to be behind the SCO lawsuit rather convincingly by groklaw. This is just more noise, and I am not surprised to see Florain Mueller, paid Microsoft stooge, jumped very quickly on this astroturfed bandwagon. See that Ed Naughton's bio used to list all of the work he had done for Microsoft and now it is suddenly revised. Microsoft is one of the most deeply immoral companies ever with no respect for the idea of truth, let alone integrity. As covered at Groklaw news picks:

    "Edward J. Naughton bio gets revised [PJ: Edward J. Naughton, the attorney Huffington Post just published claiming Android may be in violation of the GPL has done work for Microsoft. Surprised much? His article states this at the end: "The views expressed are my own individual views and should not be attributed to any clients." Nevertheless, at least one of them may be delighted. His bio has changed recently. The link above is to its current state, where you will not find any mention of Microsoft. It's been changed to a "Fortune 50 software company". Here's what used to be on it, still in Google cache, a snapshot taken recently, on March 8]: - Co-counsel defending Microsoft against a putative consumer class action alleging that it had violated wiretapping statutes and common law privacy rights by designing Windows to permit third parties to place cookies on computers. Obtained dismissal of complaint.... - Represented Microsoft in several dozen lawsuits against resellers and corporate end-users of counterfeit, infringing, and unlicensed software. - Brown Rudnick bio page for Naughton

  15. Others pointing fingers... by novar21 · · Score: 3, Insightful

    always makes me suspicious. If you have nothing to gain (financially or otherwise) what is the purpose of making statements that someone may be doing something illegal or that ramifications could be disastrous. The only purpose would be to spread fear, uncertainty, or doubt to benefit another entity. It seems like gossip to me. It is very distasteful, and I try to avoid reading things of that nature. Although I must state that I am an android phone owner and very happy with the device. I will probably buy my wife one this June. If the Linux Kernel writers do not like what has been done, so be it. I can write software. And I am willing to release it under a GPL'ed license. This is not a big deal to me.

  16. Florian Mueller? by Trufagus · · Score: 4, Insightful

    Florian Mueller has zero credibility left.

    Remember? He was the guy who claimed that Android included source stolen from Oracle's Java. After getting enormous publicity the whole thing was debunked:
    http://www.zdnet.com/blog/burnette/oops-no-copied-java-code-or-weapons-of-mass-destruction-found-in-android/2162

    So, why are we still listening to him? There are millions of voices on the Internet, shouldn't we listen to one of the ones that still has credibility?

  17. Re:He's still right in pointing it out by LuYu · · Score: 3, Insightful

    You know, there are two licensing-related problems Google is facing now with Android: the Oracle lawsuit, and now this. Both seem to have at least partially arisen because Google didn't float stuff past people who have interests in the technologies they chose to use.

    This is unfair to Google. I have plenty of gripes with Android, but these two were not Google's fault. First, nobody considered the header files to be copyrightable material. As one poster above pointed out, people in the FOSS community laughed when SCO made such a claim just a few years ago. If it was not an issue then, how can Google be wrong now? They did not exactly strip out the copyright notices in the kernel source and call it the "Android Kernel®", did they?

    In the case of the Java problem, Google could not have anticipated that Sun would be bought by a hostile company that would try to rob them using copyrights. Sun, for all its faults, was pretty reasonable about Java. The new owner, on the other hand, is predatory and crooked. They see an opportunity to hit Google up for some cash, and they are taking it. To blame Google for being a victim of lawyers would be like blaming victims of a natural disaster for living in a place where no natural disasters had struck yet.

    --
    All data is speech. All speech is Free.
  18. Re:No complaints? by shutdown+-p+now · · Score: 3, Interesting

    The topic of "shilling" etc is, hopefully, settled in the other thread.

    However, I don't quite understand the applicability of the note you've quoted. From the wording, it sounds more like an attempt to disambiguate what "linking" is (or, more generally speaking, what a "derived work" is), in the context of userspace vs kernel. While the consensus has always been that apps written for an OS are not works derived from that OS, even though they directly or indirectly use its syscalls - even Stallman agrees on that, last I checked - the entire topic is rather hazy from a strictly legal perspective. After all, FSF says that dynamically linking to libraries does create a derived work for GPL purposes - and that is not fundamentally different from doing syscalls. In both cases, the client binary doesn't have any machine code derived from the source code of the library/kernel, but only calls with matching names & arguments.

      A note like the one you quoted straightens it out: using normal system calls does not make a derived work, even if GPL itself could somehow be interpreted otherwise.

    However, the note does not say anything about copyright on the headers. Re-reading the original article (the one before this), it seems that headers in question do actually have the GPL copyright notice in them. In this case, Google stripping that out is definitely wrong, because their process clearly creates a derived work (after all, it does take the original header as input, and applies purely mechanical transformations; I think this is clear cut). As the resulting derived work - the Bionic headers themselves - is not a "userspace binary" (it's not a binary at all!), the exclusion notice in COPYING does not apply to them. However, the notice prevents this from being "viral" - it basically says that userspace apps are not considered derived works by the authors of the kernel at all, regardless of anything else; and thus GPL (or rather copyright itself) simply does not apply.

    So it seems to me that "everyone is violating GPL by writing closed-source Android apps" part is FUD, but Google still has some house cleaning to do here to be in the clear - either put the GPL copyright notice back into the headers (with an explanatory note as to why this does not apply to userspace programs including those headers), or else ask the kernel folk to grant them an exception.

  19. Re:No complaints? by butlerm · · Score: 3, Informative

    In this case, Google stripping that out is definitely wrong, because their process clearly creates a derived work (after all, it does take the original header as input, and applies purely mechanical transformations; I think this is clear cut).

    Courts have held in the United States that technical interfaces are not copyrightable. That includes structure names, layouts, and so on. See here (pdf).

    So if you take a header file and remove all the copyrightable contents (comments and so forth), what you are left with is technical interface meta data that is not protectable by copyright. That is not likely to go so far as legitimizing copies of non-trivial inline functions, but so far as ordinary manifest constants, structure layouts, and function declarations are concerned, if Baystate v. Bentley Systems (1996) means anything, Google appears to be in the clear.