Slashdot Mirror


RMS On Header Files and Derivative Works

tomhudson writes "In this email from 2003, Richard Stallman says 'I've talked with our lawyer about one specific issue that you raised: that of using simple material from header files. Someone recently made the claim that including a header file always makes a derivative work. That's not the FSF's view. Our view is that just using structure definitions, typedefs, enumeration constants, macros with simple bodies, etc., is NOT enough to make a derivative work. It would take a substantial amount of code (coming from inline functions or macros with substantial bodies) to do that.' This should help end the recent FUD about the Android 'clean headers.'"

18 of 247 comments (clear)

  1. Copyrights on facts by nickovs · · Score: 4, Informative

    I've hear it suggested by a number of lawyers that the _specification_ a binary interface of a library is a statement of fact, rather than a creative work. Since copyright does not apply to statements of fact this would suggest that structure definitions and the like would not be subject to copyright, and by extension the is no issue regarding derivative works. Of course you could probably as the same lawyers on a different day (or with a different person paying the bills) and get a different answer, but the concept seems to make sense.

    --
    If intelligent life is too complex to evolve on its own, who designed God?
    1. Re:Copyrights on facts by OddJobBob · · Score: 5, Informative

      Express Logic have already been through this when Green Hills released their RTOS using the ThreadX API from Express Logic. In this case the arbitrators ruled in favour of Green Hills even though the header files were copied.

    2. Re:Copyrights on facts by tomhudson · · Score: 5, Informative
      First, despite your claim, you are not a lawyer. You have too many basic facts wrong.

      Second, facts cannot be copyrighted, any more than the rules of a game can be.

      ONLY the presentation or layout of those facts can be copyrighted. And it is ONLY the presentation or layout, not the underlying facts, that are protected.

      Unique definitions are also not sufficient of themselves for copyright in software, if that unique definition is either required for interoperability, or is the only way to do something.

      For example:

      #define ERR_ANY -1
      #define ERR_SEEK -2
      #define ERR_WRITE -3

      is not copyrightable.

      url:http://www.ivanhoffman.com/scenes.html

      Under the merger doctrine, courts will not protect a copyrighted work from infringement if the idea underlying the work can be expressed only in one way, lest there be a monopoly on the underlying idea. In such an instance, it is said that the work’s idea and expression “merge.” Under the related doctrine of scenes a faire, courts will not protect a copyrighted work from infringement if the expression embodied in the work necessarily flows from a commonplace idea….

      The Court went on, in part quoting from the famous litigation between Microsoft and Apple:

      Likewise, when similar features of a work are “as a practical matter indispensable, or at least standard, in the treatment of a given idea, they are treated like ideas and are therefore not protected by copyright.”

    3. Re:Copyrights on facts by binkzz · · Score: 5, Funny

      #define ERR_ANY -1
      #define ERR_SEEK -2
      #define ERR_WRITE -3

      is not copyrightable.

      What about:

      #define ERR_PS3 0x46DCEAD317FE45D80923EB97E4956410D4CDB2C2

      :-"

      --
      'For we walk by faith, not by sight.' II Corinthians 5:7
    4. Re:Copyrights on facts by UnknowingFool · · Score: 5, Informative
      The relevant case law on this is Gates Rubber v Bando.

      It established the abstraction-filtration-comparison test in whether copyright code is infringing. Abstraction is the first step and gets the relevant source code. In filtration, any part of the code that cannot be copyrighted must be eliminated for consideration. One thing that must be excluded are facts. For example, many programs that draw circles rely on using Pi. A company cannot copyright PI =3.14159 as this is a fact. Anything in the public domain are excluded. This is where SCO would have had lots of problems because even if the code was legally owned by them (it was owned by Novell), some of what they claimed to be theirs had been put into the public domain by AT&T, USL, BSD, and others over the years. Header files (especially the simple ones that are merely #include statements) can fall under scenes a faire. Standards also fall under this category. Scenes a faire are all the elements that are required for any program of the same type to run. Variable declarations for example. If a program works with files, the owner can't really claim "File file = null" is copyrightable as a variable declaration.

      Only after filtering out non-protected elements, can any comparison begin. That was one of the arguments IBM had against SCO: IBM's expert claimed that SCO's expert, SCO VP Gupta, had failed to filter out unprotected elements of code. Two examples of the alleged violating code were the IPC and ELF header files. The IPC header had been put into public domain without copyright since 1989. The ELF header was published as part of the ELF specification whose membership included SCO's predecessor, Santa Cruz. By the way, IBM's expert was Brian Kernighan who worked with Ritchie and Thompson on Unix, wrote the first book on C with Ritchie, and wrote some Unix programs like cron.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    5. Re:Copyrights on facts by tomhudson · · Score: 3, Interesting

      So here's a real question: If the header files cannot be copyrighted, why did those linux people attempt to PUT copyright on it by including a copyright in the file? If it can't be copyrighted and the folks who maintain the GPL say it can't be copyrighted then why is that copyright in the file in the first place? Are the linux folks trying to use FUD here too?

      1. Because some things, like comments, etc., ARE copyrightable.
      2. Because we're only talking about a specific subset of headers here. Other headers may contain code that can be copyrighted. The kernel is a lot more than 27,000 lines.

      HTH :-)

    6. Re:Copyrights on facts by tomhudson · · Score: 3, Insightful

      no. youre just ... wrong. the presentation of the facts DOES NOT EXIST WITHOUT THE FACTS. im not trying to spin anything. go read : Feist Publications, Inc., v. Rural Telephone Service Co., 499 U.S. 340 (1991) and educate yourself. besides, i'll probably send a copy of this thread around to my colleagues anyway. they should have a good laugh at your expense. i work for jones day but you may not have heard of us.

      Re Feist

      111 S. Ct. at 1288 (internal quotations and citations omitted). Like ideas and processes, facts themselves are not protectable;however, an author’s original compilation, arrangement or selection of facts can be protected by copyright. Feist, 111 S. Ct. at 1289 ; Applied Innovations, 876 F.2d at 636 . However, “the copyright is limited to the particular selection or arrangement. In no event may copyright extend to the facts themselves.” Feist, 111 S. Ct. at 1290

      The Supremes say you are full of it.

      The Feist decision only extended copyright to the layout, not the underlying facts.

      I've heard of Jones, Day - if you work for them, maybe in the mail room, but certainly not as a lawyer. Or are you now going to say that the Supremes got it wrong?

      You're wrong, and you just keep giving me more ammunition to shoot you down with every time. You're as bad as Florian Mueller.

  2. Re:f u by Shikaku · · Score: 3, Informative

    You can say fuck on slashdot dude. Hell, you can type anything you want at zombocom er slashdot.

  3. Re:How the fuck do we define a "substantial amount by Anonymous Coward · · Score: 5, Funny

    How the fuck do we decide what a "substantial amount of code" actually is? Where exactly is the boundary?

    Free Software zealot: "substantial amount of code" == one line

    Corporate America: "substantial amount of code" == entire program.

    IP Lawyers: "substantial amount of code" == new Porsche.

  4. Re:end FUD ? by tomhudson · · Score: 4, Insightful

    This should help end the recent FUD about the Android 'clean headers.

    you must be new here..

    No, I just believe that the FUD-packers will now try something else.

    They don't seem to get it - that there are now a critical mass of people who not only don't buy into the FUD, but have an ideological interest in exposing the FUD for what it is.

    Now that we've got the numbers, FUD not only becomes less effective for the other side, but draws attention to just how much of a threat open source is to them, and how hollow their arguments really are.

    Think of it. This was an attack on Android specifically designed to get hand-set vendors worried that they would have to share their source, not just the usual "linux may have copyright problems blah blah blah". It failed, and in doing so discredits all the other similar FUD. People like Florian Mueller are the internet version of the boy who cried wolf - at this point, even if he did find something, who'd believe him?

  5. Re:not so fast by Anonymous Coward · · Score: 3, Insightful

    Uh, what relevance does the original copyright license hold if the modified headers are no longer considered to be under copyright?

  6. Re:end FUD ? by tomhudson · · Score: 5, Informative
    Copyright law already addresses this in the general case. RMS got his opinion from lawyers who know about the specifics of copyright law, that there are plenty of things that are not copyrightable. And yes, in the US this IS settled law, unless you know of a higher court than the Supreme Court of the USofA.

    In the more specific case of linux, you might also want to see the COPYING file, which is a modified version of the GPL v2 that explicitly states that using the header files to access kernel services doesn't create a derivative work, which was the whole point of the FUD-packers campaign, to convince handset manufacturers that there was a risk that their Android code was a derivative work and they'd have to share their source.

    Hope this clears it up a bit :-

  7. WARNING - that is NOT the GPL that linux uses. by tomhudson · · Score: 4, Insightful
    No, that is NOT the version of the GPL that linux uses. Linux uses a non-standard version of the GPL, that begins with this exemption (taken from the latest COPYING file in the kernel sources off my hard drive):

    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, using the headers to access kernel services does not create a derivative work.

    This is over and above that the files in question have been stripped of copyrightable content.

  8. Re:Stallman has changed his mind by phantomfive · · Score: 3, Funny

    Theo, is that you?

    --
    "First they came for the slanderers and i said nothing."
  9. Re:Smackdown, on Florian by tomhudson · · Score: 3, Funny

    Who else is fed up by Florian Mueller's antics?

    I sense a new slashdot poll

    What do you think of Florian Mueller's antics?
    [_] Florian Mueller's blog is the new goatse link. "Oww! My MIND! Quick, get the brain bleach!"
    [X] I just want to know who's paying for it.
    [_] "I'm an anonymous coward and I approve" -- Florian Mueller
    [_] "Damn, forgot to check 'Post Anonymously' -- Florian Mueller
    [_] Hey, it generates page hits and sells ads -- editors
    [_] I am Steve Ballmer and I approve of Florian Mueller's antics
    [_] In Soviet Russia, everyone trolls Florian Mueller.
    [_] Florian Mueller had an original idea that wasn't a troll. It died of loneliness.
    [_] A grue ate him. Nothing of consequence was lost.
    [_] 104% of 42 respondents preferred CowboyNeal.

    This latest attempt to generate FUD pretty much seals the deal - his 15 minutes are SO over.

  10. Re:Stallman has changed his mind by shutdown+-p+now · · Score: 4, Informative

    It wasn't because of header files. It was because the code generated by Bison (actual .c files) would be licensed under GPL, because it was a derived work of a GPL-licensed template, and included the GPL copyright comment.

    Due to problems with this arrangement, they have added this bit to the output:

    /* As a special exception, when this file is copied by Bison into a
        Bison output file, you may use that output file without restriction.
        This special exception was added by the Free Software Foundation
        in version 1.24 of Bison. */

    but this was after 1990.

    In any case, this has absolutely nothing to do with header files.

  11. Re:end FUD ? by Belial6 · · Score: 5, Funny

    I agree with RMS on this one. So, now you have it from the highest source.

  12. Re:end FUD ? by MachDelta · · Score: 4, Funny

    "Clearly this evolution thing needs more bug testing. I've created a race largely composed of idiots."