public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "D. Hazelton" <dhazelton@enter.net>
To: pavel@ucw.cz
Cc: "Linux-Kernel@Vger. Kernel. Org" <linux-kernel@vger.kernel.org>
Subject: Re: GPL vs non-GPL device drivers
Date: Sun, 25 Feb 2007 20:54:50 -0500	[thread overview]
Message-ID: <200702252054.50396.dhazelton@enter.net> (raw)
In-Reply-To: <MDEHLPKNGKAHNMBLJOLKKEGHBNAC.davids@webmaster.com>

On Sunday 25 February 2007 19:47, David Schwartz wrote:
<snip>
>
> > Similary, there are many ways to write inline functions present in
> > headers, and no, embedded developer being lazy does not mean they can
> > copy those functions into their proprietary module.
>
> Yes, it does. Have you read Lexmark v. Static Controls? You can take what
> you need to interoperate.

This is apples and oranges, to use your idiom. In that case Lexmark had the 
code in the toner cartridges had to have a specific SHA1 hash in order for 
the printer to recognize them. Because the only way, then, to produce a 
functional toner cartridge for the printer was to *copy* that code *exactly*. 
In the case of a system where this is not the case, then you are free to 
write your own interface functions. If Lexmark had *not* been using a SHA1 
hash to validate that the cartridge was produced by them (and that is the 
real reason - Lexmark wanted to lock users of their printers into buying new 
toner cartridges from them) the case would have gone against Static Controls. 
The Lexmark v Static Controls decision applies only to interfaces where there 
is only, literally, one way to do it. What this means is that, yes, any use 
of the code in a GPL'd product that could be written in another manner is not 
covered by the "interoperability standard" that Lexmark v Static Controls 
describes. (No argument here, people: Lexmark v. Static Controls basically 
says "Since the only way for this replacement toner cartridge to work was to 
have the 'Toner Loading Program' exactly copied from one of the cartridges 
produced by Lexmark doing such is fair use." All application of this 
precedent to other things must show the exact same thing - namely that the 
*one* and *only* way for something you have designed/written to fulfill its 
purpose is to rely on a copy of a copyrighted work.  This ruling *only* 
applies to making computers, peripherals or parts of those peripherals and 
the copyrighted item that makes it interoperable.

Lexmark v. Static Controls does not give people carte blanche to use 
interfaces to programs that could be re-implemented by them without causing 
the output to stop functioning. In the given example the work including the 
GPL'd header file and using its functions is in violation of the GPL if not 
released under the GPL but is distributed. Why? Because unless there was some 
form of lock-in making those functions a requirement for interoperability 
the "Evil Hacker" could have written and used his own versions and his 
plugin/program would still have been interoperable.

DRH

  reply	other threads:[~2007-02-26  1:55 UTC|newest]

Thread overview: 255+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <9b3a62ab0702142115m4ea7d2c0m6869eb64ef3ee14e@mail.gmail.com>
2007-02-15  5:16 ` GPL vs non-GPL device drivers v j
     [not found]   ` <75b66ecd0702142130x64824694ieee1869d0d70ab15@mail.gmail.com>
2007-02-15  5:38     ` v j
2007-02-15  5:47   ` Trent Waddington
     [not found]     ` <9b3a62ab0702142214p5c33a02am7e783c59ae0a64f1@mail.gmail.com>
2007-02-15  6:16       ` v j
2007-02-15 12:45         ` Neil Horman
2007-02-15  6:35       ` Trent Waddington
2007-02-15  6:46         ` v j
2007-02-15  6:56           ` Trent Waddington
2007-02-15  7:32           ` Dave Jones
2007-02-15  9:44             ` Jeff Garzik
2007-02-15 10:50               ` Dave Jones
2007-02-15 14:24             ` Jan De Luyck
2007-02-15 14:37               ` Benny Amorsen
2007-02-15 14:47                 ` Bernd Petrovitsch
2007-02-15 17:49                 ` Jan Knutar
2007-02-15  7:55           ` Neil Brown
2007-02-15 14:45           ` Bernd Petrovitsch
2007-02-15 20:21           ` Chris Snook
2007-02-15 22:34             ` Jeff Garzik
2007-02-16  4:20             ` Alexandre Oliva
2007-02-15  6:11   ` Dave Jones
2007-02-15  6:27     ` v j
2007-02-15  6:43       ` Neil Brown
2007-02-15  6:55         ` v j
2007-02-15  7:02           ` Trent Waddington
2007-02-15  7:09             ` v j
2007-02-15  7:18               ` Trent Waddington
2007-02-15  7:30               ` Neil Brown
2007-02-15 11:52                 ` Adrian Bunk
2007-02-15  7:11       ` Randy Dunlap
2007-02-15  7:28         ` v j
2007-02-15  7:43           ` Neil Brown
2007-02-15  7:53             ` Trent Waddington
2007-02-15  8:11               ` Neil Brown
2007-02-15  8:35                 ` Trent Waddington
2007-02-15 20:56               ` David Schwartz
2007-02-15 21:51                 ` Trent Waddington
2007-02-16  0:38                   ` David Schwartz
2007-02-16 12:53                     ` Adrian Bunk
2007-02-17  2:42                       ` David Schwartz
2007-02-17  8:29                         ` Neil Brown
2007-02-18  2:55                           ` Michael K. Edwards
2007-02-18  3:26                             ` Trent Waddington
2007-02-18  6:56                               ` Michael K. Edwards
2007-02-18  7:20                                 ` Michael K. Edwards
2007-02-18  8:54                                 ` Oleg Verych
2007-02-18 23:42                                   ` Michael K. Edwards
2007-02-18 13:57                               ` Theodore Tso
2007-02-18 21:16                                 ` Trent Waddington
2007-02-18  1:26                         ` Trent Waddington
2007-02-18  1:28                           ` David Lang
2007-02-18  1:51                             ` Trent Waddington
2007-02-19 17:48                           ` David Schwartz
2007-02-19 20:55                             ` Trent Waddington
2007-02-19 21:53                               ` Michael K. Edwards
2007-02-19 22:26                                 ` Trent Waddington
2007-02-19 22:48                                   ` Michael K. Edwards
2007-02-19 22:58                                     ` Trent Waddington
2007-02-19 23:18                                       ` Michael K. Edwards
2007-02-19 23:26                                         ` Trent Waddington
2007-02-20  0:28                                           ` Michael K. Edwards
2007-02-20  0:36                                             ` Trent Waddington
2007-02-20  0:50                                               ` Michael K. Edwards
2007-02-20  0:55                                                 ` Trent Waddington
2007-02-20  0:58                                                 ` Michael K. Edwards
2007-02-20  1:00                                                   ` Trent Waddington
2007-02-20  7:48                                                   ` Trent Waddington
2007-02-20  8:24                                                     ` v j
2007-02-20  9:01                                                     ` Trent Waddington
2007-02-20  1:29                                       ` David Schwartz
2007-02-20  5:19                                         ` v j
2007-02-20 10:54                                           ` Nick Piggin
2007-02-20 11:00                                           ` Bernd Petrovitsch
2007-02-20 15:14                                             ` Valdis.Kletnieks
2007-02-20 15:39                                               ` Bernd Petrovitsch
2007-02-20 14:36                                           ` Helge Hafting
2007-02-20 20:30                                             ` Jan-Benedict Glaw
2007-02-21 12:45                                               ` Helge Hafting
2007-02-21 22:08                                         ` Michael K. Edwards
2007-02-21 23:30                                           ` Nuno Silva
2007-02-22  0:26                                             ` Michael K. Edwards
2007-02-21 23:34                                           ` David Lang
2007-02-22  0:28                                             ` Michael K. Edwards
2007-02-22  1:30                                               ` D. Hazelton
2007-02-22  2:05                                                 ` Michael K. Edwards
2007-02-22  4:17                                                   ` D. Hazelton
2007-02-22  4:24                                                     ` Trent Waddington
2007-02-22  6:12                                                     ` Michael K. Edwards
2007-02-22  9:28                                                     ` Jon K Hellan
2007-02-22 16:45                                                     ` Theodore Tso
2007-02-22 20:30                                                       ` D. Hazelton
2007-02-25  0:59                                                       ` Adrian Bunk
2007-02-22 14:14                                                   ` Alan
2007-02-22 22:42                                                     ` Michael K. Edwards
2007-02-23  0:18                                                       ` Alan
2007-02-23  1:12                                                         ` Randy Dunlap
2007-02-23  1:21                                                         ` Michael K. Edwards
2007-02-22 14:10                                                 ` Alan
2007-02-22 21:36                                                   ` D. Hazelton
2007-02-22 22:28                                                     ` Michael K. Edwards
2007-02-25 10:42                                           ` Pavel Machek
2007-02-25 11:33                                             ` David Schwartz
2007-02-25 19:39                                               ` Pavel Machek
2007-02-26  0:47                                                 ` David Schwartz
2007-02-26  1:54                                                   ` D. Hazelton [this message]
2007-02-25 11:54                                             ` Michael K. Edwards
2007-02-25 13:52                                               ` Alan
2007-02-25 14:21                                                 ` Michael K. Edwards
2007-02-25 19:10                                                   ` Alan
2007-02-26 10:16                                                     ` Michael K. Edwards
2007-02-26 14:12                                                       ` Alan
2007-02-25 22:27                                                   ` Trent Waddington
2007-02-26 10:17                                                     ` Michael K. Edwards
2007-02-25 20:15                                               ` D. Hazelton
2007-02-25 17:56                                             ` Stephen Clark
2007-02-19 22:47                               ` David Schwartz
2007-02-15 13:09             ` Jan Engelhardt
2007-02-15  8:12           ` Nick Piggin
2007-02-15 10:01           ` Xavier Bestel
2007-02-15 10:51             ` Mohammed Gamal
2007-02-15 11:00               ` Xavier Bestel
2007-02-15 11:05                 ` Trent Waddington
2007-02-15 11:17                   ` Dave Jones
2007-02-15 11:15                 ` Dave Jones
2007-02-15 11:35                   ` Trent Waddington
2007-02-15 13:14                     ` Jan Engelhardt
2007-02-15 14:43           ` Bernd Petrovitsch
2007-02-15 16:22           ` Stuart MacDonald
2007-02-16  0:36             ` Scott Preece
2007-02-16  9:44               ` Xavier Bestel
2007-02-16  9:58               ` Bernd Petrovitsch
2007-02-15  7:24       ` Dave Jones
2007-02-15  9:54       ` Xavier Bestel
2007-02-15 14:14       ` Neil Horman
2007-02-15 14:43       ` Bernd Petrovitsch
2007-02-15 16:25       ` Rik van Riel
2007-02-15 16:53       ` Theodore Tso
2007-02-15 18:20         ` v j
2007-02-15 18:41           ` Josh Boyer
2007-02-16 15:34             ` Lennart Sorensen
2007-02-15 18:58           ` Xavier Bestel
2007-02-15 19:02           ` Miguel Ojeda
2007-02-16  1:12             ` Scott Preece
2007-02-16  1:14               ` David Lang
2007-02-16  5:48                 ` v j
2007-02-16  5:57                   ` Trent Waddington
2007-02-16  6:25                     ` v j
2007-02-16  6:40                       ` Miguel Ojeda
2007-02-16  6:45                       ` Trent Waddington
2007-02-16  9:16                         ` David Schwartz
2007-02-16 10:00                           ` Joshua Simmons
2007-02-16 11:42                             ` David Schwartz
2007-02-16 11:51                               ` Bernd Petrovitsch
2007-02-16 13:29                               ` Joshua Simmons
2007-02-17  2:42                                 ` David Schwartz
2007-02-17  6:44                                   ` Alexandre Oliva
2007-02-17  7:26                                     ` Valdis.Kletnieks
2007-02-16 10:35                           ` Richard Knutsson
2007-02-16 17:12                           ` Dave Neuer
2007-02-16 21:26                             ` Scott Preece
2007-02-18 17:08                               ` Pavel Machek
2007-02-17  2:42                             ` David Schwartz
2007-02-17 10:46                               ` Giuseppe Bilotta
2007-02-17 14:19                                 ` David Schwartz
2007-02-17 23:30                                   ` Giuseppe Bilotta
2007-02-17 23:55                                     ` Michael K. Edwards
2007-02-18  9:00                                       ` Giuseppe Bilotta
2007-02-19 17:53                                     ` David Schwartz
2007-02-18  5:15                                   ` Alexandre Oliva
2007-02-17 22:18                               ` Dave Neuer
2007-02-17 23:04                                 ` David Schwartz
2007-02-17 23:04                                 ` Michael K. Edwards
2007-02-16  9:52                       ` Valdis.Kletnieks
2007-02-16 13:44                         ` Trent Waddington
2007-02-16 10:30                       ` Valdis.Kletnieks
2007-02-16 10:38                       ` Bernd Petrovitsch
2007-02-16 14:04                       ` Neil Horman
2007-02-16 14:14                       ` Jesper Juhl
2007-02-17  2:59                         ` David Schwartz
2007-02-17  6:32                           ` Alexandre Oliva
2007-02-17 13:27                             ` David Schwartz
2007-02-17 19:29                             ` Scott Preece
2007-02-17 21:15                               ` Michael K. Edwards
2007-02-19 20:31                                 ` Alan
2007-02-19 20:20                                   ` Michael K. Edwards
2007-02-19 20:48                                     ` linux-os (Dick Johnson)
2007-02-19 21:50                                       ` Michael K. Edwards
2007-02-19 22:12                                         ` Michael Dreher
2007-02-17 21:21                               ` David Schwartz
2007-02-18  4:38                                 ` Alexandre Oliva
2007-02-16 15:40                       ` Lennart Sorensen
2007-02-16  9:12                   ` Xavier Bestel
2007-02-16  9:44                     ` Jon K Hellan
2007-02-16 11:41                       ` Jan Engelhardt
2007-02-16  6:46               ` Miguel Ojeda
2007-02-15 19:27           ` Geert Uytterhoeven
2007-02-16  1:24             ` Scott Preece
2007-02-15 22:21           ` Jeff Garzik
2007-02-16  0:04             ` Michael K. Edwards
2007-02-16  0:37               ` Jeff Garzik
2007-02-16  2:09                 ` Michael K. Edwards
2007-02-16  2:12                 ` Trent Waddington
2007-02-16  4:00                 ` Alexandre Oliva
2007-02-16  5:16                   ` Jeff Garzik
2007-02-16  5:57                     ` Alexandre Oliva
2007-02-15 22:42           ` Gene Heskett
2007-02-16  1:48             ` Scott Preece
2007-02-17  4:03             ` Michael K. Edwards
2007-02-17  4:19               ` Gene Heskett
     [not found]           ` <7b69d1470702151705h297c3b38g138eb0138b900aea@mail.gmail.com>
2007-02-16  2:00             ` v j
2007-02-16  6:07               ` Chris Friesen
2007-02-16  8:36               ` Martin Mares
2007-02-16 17:00               ` Matthew Frost
2007-02-16 17:52               ` Matthew Frost
2007-02-20 14:55               ` Helge Hafting
2007-02-16  0:10         ` Greg Trounson
2007-02-16  0:18           ` Lee Revell
2007-02-16  0:37             ` Greg Trounson
2007-02-16  1:58               ` Lee Revell
2007-02-16  0:58         ` Scott Preece
2007-02-18 16:42           ` Pavel Machek
2007-02-15  6:15   ` Neil Brown
2007-02-15  6:51     ` Gene Heskett
2007-02-15  6:23   ` Ben Nizette
2007-02-15  7:40     ` Nick Piggin
2007-02-15 20:56       ` David Schwartz
2007-02-15 21:53       ` Bernd Petrovitsch
2007-02-15 22:41         ` Jeff Garzik
2007-02-15 23:20           ` Bernd Petrovitsch
2007-02-15  7:36   ` Arjan van de Ven
2007-02-15  8:04     ` v j
2007-02-15  8:13       ` Arjan van de Ven
2007-02-15  8:17       ` Richard Knutsson
2007-02-15  8:40         ` v j
2007-02-15 19:36           ` Jörn Engel
2007-02-15  8:24       ` Nick Piggin
2007-02-15 11:52       ` Martin Mares
2007-02-16  4:13       ` Alexandre Oliva
2007-02-16 13:32       ` Lennart Sorensen
2007-02-15 11:54   ` Mws
2007-02-15 12:51     ` Manu Abraham
2007-02-15 14:32       ` linux-os (Dick Johnson)
2007-02-15 14:54         ` Manu Abraham
2007-02-16  8:19         ` Valdis.Kletnieks
2007-02-16  9:25           ` Bernd Petrovitsch
2007-02-16 15:33           ` Chris Friesen
2007-02-16 15:58           ` Scott Preece
2007-02-15 15:18   ` Michael K. Edwards
2007-02-15 11:06 Ihar `Philips` Filipau
     [not found] <7OHci-7fx-5@gated-at.bofh.it>
     [not found] ` <7OHci-7fx-3@gated-at.bofh.it>
     [not found]   ` <7OJnQ-24B-19@gated-at.bofh.it>
     [not found]     ` <7OJQP-2VO-9@gated-at.bofh.it>
2007-02-15 11:53       ` Bodo Eggert
     [not found]   ` <7OI8n-fp-11@gated-at.bofh.it>
     [not found]     ` <7OIi9-tI-11@gated-at.bofh.it>
     [not found]       ` <7OS7S-7tW-27@gated-at.bofh.it>
     [not found]         ` <7OTx3-1tH-17@gated-at.bofh.it>
2007-02-15 23:40           ` Bodo Eggert
     [not found] <fa.GPbYGi2HYDPl2WlRgsq2dPbD6cM@ifi.uio.no>
     [not found] ` <fa.5t0XkAtEpB2nDYFPJKUBce9BKFE@ifi.uio.no>
     [not found]   ` <fa.upvZMIS42lj8Tbudh1OdnbDn+Ts@ifi.uio.no>
     [not found]     ` <fa.821rWTmf8FgAMnDeO7b6yeUeXYg@ifi.uio.no>
     [not found]       ` <fa.+3hIy95KSdtolNz5kNmm6qk4FU8@ifi.uio.no>
2007-02-15 23:31         ` Robert Hancock
2007-02-16 15:29           ` linux-os (Dick Johnson)
2007-02-16 23:08             ` Robert Hancock
  -- strict thread matches above, loose matches on Subject: below --
2007-04-01 12:16 devzero

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200702252054.50396.dhazelton@enter.net \
    --to=dhazelton@enter.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pavel@ucw.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox