Changeset - dc0714a3ef85
[Not reviewed]
0 1 0
Bradley Kuhn (bkuhn) - 9 years ago 2015-02-02 14:56:03
bkuhn@ebb.org
Formatting change: use itemize here instead.
1 file changed with 8 insertions and 2 deletions:
0 comments (0 inline, 0 general)
gpl-lgpl.tex
Show inline comments
...
 
@@ -3516,391 +3516,397 @@ requirements hat GPLv3 are as follows:
 
  non-copyleft permissive licenses include such clauses.
 

	
 
\item This provision allows indemnification requirements of authors and
 
  licensors.  The FSF specifically designed this clause to achieve GPLv3
 
  compatibility for the
 
  \href{http://www.apache.org/licenses/LICENSE-2.0.html}{Apache Software
 
    License, Version 2.0}.
 

	
 
\end{enumerate}
 

	
 
During the GPLv3 drafting process, some questioned the necessity of GPLv3~\S7;
 
those critics suggested that it creates complexity that did not previously
 
exist.  However, by the time of GPLv3's drafting, many existing GPLv2'd
 
software packages already combined with various non-copylefted Free Software
 
licensed code that carried such additional terms.  Therefore, GPLv3~\S7 is
 
rationalized existing practices of those package authors and modifiers, since
 
it sets clear guidelines regarding the removal and addition of these
 
additional terms.  With its carefully limited list of allowed additional
 
requirements, GPLv3\S7 accomplishes additional objectives as well, since it
 
permits the expansion of the base of code available for GPL developers, while
 
also encouraging useful experimentation with requirements the GPLv3 does not
 
include by default.
 

	
 
However, any other non-permissive additional terms apart from those stated
 
above are considered ``further'' restrictions which
 
\hyperref[GPLv3s10]{GPLv3~\S10} prohibits.  Furthermore, as a compliance
 
matter, if you add additional terms in accordance with GPLv3~\S7, you must
 
ensure that the terms are placed in the relevant source files or provide a
 
conspicuous notice about where to find the additional terms.
 

	
 
\section{GPLv3~\S8: A Lighter Termination}
 

	
 
GPLv2 provided for automatic termination of the rights of a person who
 
copied, modified, sublicensed, or distributed a work in violation of the
 
license.  Automatic termination can be too harsh for those who have committed
 
an inadvertent violation, particularly in cases involving distribution of
 
large collections of software having numerous copyright holders.  A violator
 
who resumes compliance with GPLv2 technically needs to obtain forgiveness
 
from all copyright holders, and even contacting them all might be impossible.
 

	
 
GPLv3~\S8 now grants opportunities for provisional and permanent
 
reinstatement of rights. The termination procedure provides a limited
 
opportunity to cure license violations.  If a licensee has committed a
 
first-time violation of the GPL with respect to a given copyright holder, but
 
the licensee cures the violation within 30 days following receipt of notice
 
of the violation, then any of the licensee's GPL rights that have been
 
terminated by the copyright holder are ``automatically reinstated''.
 

	
 

	
 
Finally, if a licensee violates the GPL, a contributor may terminate any
 
patent licenses that it granted under GPLv3~\S11, in addition to any
 
copyright permissions the contributor granted to the licensee.
 

	
 
% FIXME-LATER: write more here, perhaps linking up to enforcement
 

	
 
\section{GPLv3~\S9: Acceptance}
 

	
 
GPLv3~\S9 means what it says: mere receipt or execution of code neither
 
requires nor signifies contractual acceptance under the GPL.  Speaking more
 
broadly, GPLv3 is intentionally structured as a unilateral grant
 
of copyright permissions, the basic operation of which exists outside of any
 
law of contract.  Whether and when a contractual relationship is formed
 
between licensor and licensee under local law do not necessarily matter to
 
the working of the license.
 

	
 
\section{GPLv3~\S10: Explicit Downstream License}
 
\label{GPLv3s10}
 

	
 
GPLv3~\S10 is a generally straightforward section that ensures that everyone
 
downstream receives licenses from all copyright holders.  Each time you
 
redistribute a GPL'd program, the recipient automatically receives a license,
 
under the terms of GPL, from every upstream licensor whose copyrighted
 
material is present in the work you redistribute.  You could think of this as
 
creating a three-dimensional rather than linear flow of license rights.
 
Every recipient of the work is ``in privity,'' or is directly receiving a
 
license from every licensor.
 

	
 
This mechanism of automatic downstream licensing is central to copyleft's
 
function.  Every licensor independently grants licenses, and every licensor
 
independently terminates the license on violation.  Parties further
 
downstream from the infringing party remain licensed, so long as they don't
 
themselves commit infringing actions.  Their licenses come directly from all
 
the upstream copyright holders, and are not dependent on the license of the breaching
 
party who distributed to them.  For the same reason, an infringer who acquires
 
another copy of the program has not thereby acquired any new license rights:
 
once any upstream licensor of that program has terminated the license for
 
breach of its terms, no new automatic license will issue to the recipient
 
just by acquiring another
 
copy\footnote{Footnote~\ref{German-reinstatement-footnote} also applies here
 
  in discussion of GPLv3 just as it did in discussion of GPLv2.}
 

	
 
Meanwhile, one specific addition in GPLv3 here in GPLv3~\S10 deserves special
 
mention.  Specifically, GPLv3 removed the words ``at no charge'' from
 
GPLv2~\S2(b) (which, BTW, became GPLv3~\S5(b)) because it contributed to a misconception that the GPL did not
 
permit charging for distribution of copies.  The purpose of the ``at no
 
charge'' wording was to prevent attempts to collect royalties from third
 
parties.  The removal of these words created the danger that the imposition
 
of licensing fees would no longer be seen as a license violation.  Therefore,
 
GPLv3~\S10 adds a new explicit prohibition on imposition of licensing fees or
 
royalties.  This section is an appropriate place for such a clause, since it
 
is a specific consequence of the general requirement that no further
 
restrictions be imposed on downstream recipients of GPL-covered code.
 

	
 
% FIXME-LATER: This text needs further study before I can conclude it belongs
 
% in this tutorial:
 

	
 
%% Careful readers of the GPL have suggested that its explicit prohibition
 
%% against imposition of further restrictions\footnote{GPLv2, section 6; Draft
 
%%   3, section 10, third paragraph.} has, or ought to have, implications for
 
%% those who assert patents against other licensees.  Draft 2 took some steps to
 
%% clarify this point in a manner not specific to patents, by describing the
 
%% imposition of ``a license fee, royalty, or other charge'' for exercising GPL
 
%% rights as one example of an impermissible further restriction.  In Draft 3 we
 
%% have clarified further that the requirement of non-imposition of further
 
%% restrictions has specific consequences for litigation accusing GPL-covered
 
%% programs of infringement.  Section 10 now states that ``you may not initiate
 
%% litigation (including a cross-claim or counterclaim in a lawsuit) alleging
 
%% that any patent claim is infringed by making, using, selling, offering for
 
%% sale, or importing the Program (or the contribution of any contributor).''
 
%% That is to say, a patent holder's licensed permissions to use a work under
 
%% GPLv3 may be terminated under section 8 if the patent holder files a lawsuit
 
%% alleging that use of the work, or of any upstream GPLv3-licensed work on
 
%% which the work is based, infringes a patent.
 

	
 
\section{GPLv3~\S11: Explicit Patent Licensing}
 
\label{GPLv3s11}
 

	
 
Software patenting is a harmful and unjust policy, and should be abolished;
 
recent experience makes this all the more evident. Since many countries grant
 
patents that can apply to and prohibit software packages, in various guises
 
and to varying degrees, GPLv3 seeks to protect the users of GPL-covered programs
 
from those patents, while at the same time making it feasible for patent
 
holders to contribute to and distribute GPL-covered programs as long as they
 
do not attack the users of those programs.
 

	
 
It is generally understood that GPLv2 implies some limits on a licensee's
 
power to assert patent claims against the use of GPL-covered works.
 
However, the patent licensing practice that GPLv2~\S7 (corresponding to
 
GPLv3~\S12) is designed to prevent is only one of several ways in which
 
software patents threaten to make free programs non-free and to prevent users
 
from exercising their rights under the GPL. GPLv3 takes a more comprehensive
 
approach to combating the danger of patents.
 

	
 
GPLv2~\S7 has seen some success in deterring conduct that would otherwise
 
result in denial of full downstream enjoyment of GPL rights, and thus it is
 
preserved in GPLv3~\S12.  Experience has shown that more is necessary,
 
however, to ensure adequate community safety where companies act in concert
 
to heighten the anticompetitive use of patents that they hold or license.
 

	
 
Therefore,  GPLv3 is designed to reduce the patent risks that distort and
 
threaten the activities of users who make, run, modify and share Free
 
Software.  At the same time, GPLv3 gives favorable consideration to practical
 
goals such as certainty and administrability for patent holders that
 
participate in distribution and development of GPL-covered software.  GPLv3's
 
policy requires each such patent holder to provide appropriate levels of
 
patent assurance to users, according to the nature of the patent holder's
 
relationship to the program.
 

	
 
In general, GPLv3 provides for two classes of patent commitments:
 

	
 
\begin{itemize}
 
\item Grant of license to claims in contributor versions: GPLv3~\S11
 
  introduces an affirmative grant of rights to patent claims by those who
 
  contribute code to GPL'd programs. The intent is to prevent parties from
 
  aggressively asserting patents against users of code those parties have
 
  themselves modified --- in theory preventing betrayal by ``insiders'' of
 
  the copyleft community.  A contributor's patent claims necessarily
 
  infringed by the version of the program created by the incorporation of its
 
  modifications are licensed to all subsequent users and modifiers of the
 
  program, or programs based on the program.  No patent claims only infringed
 
  by subsequent modifications by other parties are thus licensed.  Patent
 
  claims acquired after the making of the ``contributor version'' necessarily
 
  infringed by that version are also licensed by this provision at the time
 
  of their acquisition or perfection.
 

	
 
\item Prohibition of enforcement of patent claims against those to whom you
 
  distribute: GPLv3~\S10 makes explicit that licensees who directly
 
  distribute may not make demands for acceptance of patent licenses or
 
  payment of patent royalties from distribution recipients.  This provision
 
  establishes a uniform rule of patent exhaustion with respect to GPL'd
 
  programs regardless of the domestic patent law in any particular system or
 
  locale.
 
\end{itemize}
 

	
 
The following two subsections discuss in order each of the above mentioned
 
classes of patent commitments.
 

	
 
\subsection{The Contributor's Explicit Patent License}
 

	
 
Specifically, the ideal might have been for GPLv3 to feature a patent license
 
grant triggered by all acts of distribution of GPLv3-covered works.  The FSF
 
considered it during the GPLv3 drafting process, but many patent-holding
 
companies objected to this policy.  They have made two objections: (1) the
 
companies objected to this policy.  They have made two objections:
 

	
 
\begin{enumerate}
 
    \item the
 
far-reaching impact of the patent license grant on the patent holder is
 
disproportionate to the act of merely distributing code without modification
 
or transformation, and (2) it is unreasonable to expect an owner of vast
 
or transformation, and
 

	
 
    \item it is unreasonable to expect an owner of vast
 
patent assets to exercise requisite diligence in reviewing all the
 
GPL-covered software that it provides to others.  Some expressed particular
 
concern about the consequences of ``inadvertent'' distribution.
 
\end{enumerate}
 

	
 
The argument that the impact of the patent license grant would be
 
``disproportionate'',  that is to say unfair, is not valid. Since
 
software patents are weapons that no one should have, and using them for
 
aggression against free software developers is an egregious act (thus
 
preventing that act cannot be unfair). 
 

	
 
However, the second argument seems valid in a practical sense.  A
 
typical GNU/Linux distribution includes thousands of programs.  It would
 
be quite difficult for a re-distributor with a large patent portfolio to
 
review all those programs against that portfolio every time it receives
 
and passes on a new version of the distribution.  Moreover, this question
 
raises a strategic issue. If the GPLv3 patent license requirements
 
convince patent-holding companies to remain outside the distribution
 
path of all GPL-covered software, then these requirements, no matter how
 
strong, will cover few patents. 
 

	
 
GPLv3 therefore makes a partial concession
 
which would lead these companies to feel secure in doing the
 
distribution themselves. GPLv3~\S11
 
applies only to those distributors that have
 
modified the program.  The other changes we have made in sections 10 and
 
11 provide strengthened defenses against patent assertion and compensate
 
partly for this concession. 
 

	
 
Therefore, GPLv3~\S11 introduces the terms ``contributor'', ``contributor version'', and
 
``essential patent claims'', which are
 
used in the GPLv3~\S11\P3.   Viewed from the perspective of a recipient of the
 
Program, contributors include all the copyright holders for the Program,
 
other than copyright holders of material originally licensed under non-GPL
 
terms and later incorporated into a GPL-covered work.  The contributors are
 
therefore the initial GPLv3 licensors of the Program and all subsequent
 
upstream licensors who convey, under the terms of GPLv3~\S5, modified covered
 
works.
 
Thus, the ``contributor version'' includes the material the contributor has copied from the
 
upstream version that the contributor has modified.  GPLv3~\S11\P3
 
 does not apply to those that redistribute the program
 
without change.\footnote{An implied patent license from the distributor,
 
however, often arises.  See \S~\ref{gpl-implied-patent-grant} in this tutorial}
 
In other words, the ``contributor version'' includes not just
 
the material added or altered by the contributor, but also the pre-existing
 
material the contributor copied from the upstream version and retained in the
 
modified version.  (GPLv3's usage of ``contributor'' and ``contribution'' should
 
not be confused with the various other ways in which those terms are used in
 
certain other free software licenses.\footnote{Cf., e.g., Apache License,
 
  version 2.0, section 1; Eclipse Public License, version 1.0, section 1;
 
  Mozilla Public License, version 1.1, section 1.1.})
 

	
 
Some details of the ``essential patent claims'' definition deserve special
 
mention.  ``Essential patent claims'', for a given party, are a subset of the
 
claims ``owned or controlled'' by the party.  They do include sublicensable
 
claims that have been licensed to the contributor by a third
 
party.\footnote{This issue is typically handled in other software freedom
 
  licenses having patent licensing provisions by use of the unhelpful term
 
  ``licensable,'' which is either left undefined or is given an ambiguous
 
  definition.}  Most commercial patent license agreements that permit
 
sublicensing do so under restrictive terms that are inconsistent with the
 
requirements of the GPL\@.  For example, some patent licenses allow the
 
patent licensee to sublicense but require collection of royalties from any
 
sublicensees.  The patent licensee could not distribute a GPL-covered program
 
and grant the recipient a patent sublicense for the program without violating
 
section 12 of GPLv3.\footnote{GPLv3 also provides an example in section 12
 
  that makes this point clear.}  In rare cases, however, a conveying party
 
can freely grant patent sublicenses to downstream recipients without
 
violating the GPL\@.
 

	
 
Additionally, ``essential patent claims'' are those patents ``that would be
 
infringed by some manner, permitted by this License, of making, using, or
 
selling the work''.  This intends to make clear that a patent claim is
 
``essential'' if some mode of usage would infringe that claim, even if there
 
are other modes of usage that would not infringe.
 

	
 
Finally, ``essential patent claims \ldots do not include
 
claims that would be infringed only as a consequence of further
 
modification of the work.''  The set of essential patent
 
claims licensed  is fixed by the
 
particular version of the work that was contributed.  The claim set
 
cannot expand as a work is further modified downstream.  (If it could,
 
then any software patent claim would be included, since any software
 
patent claim can be infringed by some further modification of the
 
work.)\footnote{However, ``the work'' should not be understood to be
 
restricted to a particular mechanical affixation of, or medium for
 
distributing, a program, where the same program might be provided in
 
other forms or in other ways that may be captured by other patent claims
 
held by the contributor.}
 

	
 
\medskip
 

	
 
Ideally, this contributor patent policy will result in fairly frequent licensing of patent
 
claims by contributors.  A contributor is charged with awareness of the fact
 
that it has modified a work and provided it to others; no act of contribution
 
should be treated as inadvertent.  GPLv3's rule also requires no more work, for a
 
contributor, than the weaker rule proposed by the patent holders.  Under
 
their rule, the contributor must always compare the entire work against its
 
patent portfolio to determine whether the combination of the modifications
 
with the remainder of the work cause it to read on any of the contributor's
 
patent claims.
 

	
 
Finally, GPLv3's explicit patent license for contributors has an interesting
 
and useful side effect.  When a company with a large number of such claims
 
acquires the program's modifier, all claims held or thereafter acquired by
 
the purchaser are automatically licensed under this provision.  For example,
 
Microsoft's acquisition of Nokia resulted in the automatic licensing of all
 
Microsoft patent claims now or hereafter acquired which read on any
 
contributor version of any GPLv3 program ever modified by Nokia.
 

	
 
\subsection{Conveyors' Patent Licensing}
 

	
 
The remaining patent licensing in GPLv3 deals with patent licenses that are
 
granted by conveyance.  The licensing is not as complete or far reaching as
 
the contributor patent licenses discussed in the preceding section.
 

	
 
The term ``patent license,'' as used in GPLv3~\S11\P4--6, is not meant to be
 
confined to agreements formally identified or classified as patent licenses.
 
GPLv3~\S11\P3  makes this clear by defining ``patent
 
license,'' for purposes of the subsequent three paragraphs, as ``any express
 
agreement or commitment, however denominated, not to enforce a patent
 
(such as an express permission to practice a patent or covenant not to
 
sue for patent infringement)''
 

	
 
The definition does not include patent licenses that arise by
 
implication or operation of law, because the third through fifth paragraphs
 
of section 11 are specifically concerned with explicit promises that purport
 
to be legally enforceable. The final paragraph of section 11 explicitly
 
preserves the availability of patent licenses arising by implication or
 
operation of law.
 

	
 
GPLv3~\S11\P5 is commonly called GPLv3's downstream shielding provision.  It
 
responds particularly to the problem of exclusive deals between patent
 
holders and distributors, which threaten to distort the free software
 
distribution system in a manner adverse to developers and users.  The
 
fundamental idea is to make a trade-off between assuring a patent license for
 
downstream and making  (possibly patent-encumbered) CCS publicly available.
 

	
 
Simply put, in nearly all cases in which the ``knowingly relying'' test is
 
met, the patent license will indeed not be sublicensable or generally
 
available to all on free terms.  If, on the other hand, the patent license is
 
generally available under terms consistent with the requirements of the GPL,
 
the distributor is automatically in compliance, because the patent license
 
has already been extended to all downstream recipients.  Finally, if the
 
patent license is sublicensable on GPL-consistent terms, the distributor may
 
choose to grant sublicenses to downstream recipients instead of causing the
 
CCS to be publicly available.  (In such a case, if the distributor is also a
 
contributor, it will already have granted a patent sublicense anyway, and so
 
it need not do anything further to comply with the third paragraph.)
 

	
 
Admittedly, public disclosure of CCS is not necessarily required by other
 
sections of the GPL, and the FSF in drafting GPLv3 did not necessarily wish
 
to impose a general requirement to make source code available to all, which
 
has never been a GPL condition.  However, many vendors who produce products
 
that include copylefted software, and who are most likely to be affected by the
 
downstream shielding provision, lobbied for the addition of the source code
 
availability option, so it remains.
 

	
 
% FIXME-LATER: This text is likely redundant and a bit confusing.  Needs work
 
% to use.
 

	
 
%% If A takes a patent license from B that benefits A only, rather than A's
 
%% customers or their distributees, A imposes risk from B's patents on others
 
%% that it does not suffer itself. Under many circumstances, this is an
 
%% acceptable outcome. If, however, A is the only possible source of the
 
%% program, by taking such a license and distributing in reliance on it, A is in
 
%% effect helping B to ``take the program private.''
 

	
 
% FIXME-LATER: end
 

	
 
Meanwhile, two specific alternatives to the source code availability option
 
are also available. The distributor may comply by disclaiming the patent
 
license it has been granted for the conveyed work, or by arranging to extend
 
the patent license to downstream recipients.\footnote{The latter option, if
 
  chosen, must be done ``in a manner consistent with the requirements of this
 
  License''; for example, it is unavailable if extension of the patent
 
  license would result in a violation of GPLv3~\S 12.}  The GPL is intended
 
to permit private distribution as well as public distribution, and the
 
addition of these options ensures that this remains the case, even though it
 
remains likely that distributors in this situation will usually choose the
 
source code availability option.
 

	
 
Note that GPLv3~\S11\P5 is activated only if the CCS is not already otherwise
 
publicly available.  (Most often it will, in fact, already be available on
 
some network server operated by a third party.)  Even if it is not already
 
available, the option to ``cause the Corresponding Source to be so
 
available'' can then be satisfied by verifying that a third party has acted
 
to make it available.  That is to say, the affected distributor need not
 
itself host the CCS to take advantage of the source code availability option.
 
This subtlety may help the distributor avoid certain peculiar assumptions of
 
liability.
 

	
 
Note that GPLv3~\S11\P6--7 are designed to stop distributors from colluding with
 
third parties to offer selective patent protection.  GPLv3 is designed to
 
ensure that all users receive the same rights; arrangements that circumvent
 
this make a mockery of free software, and we must do everything in our power
0 comments (0 inline, 0 general)