Wireshark-dev: Re: [Wireshark-dev] What Wireshark base version to use for customization
From: Stephen Fisher <sfisher@xxxxxxx>
Date: Wed, 10 Dec 2014 13:42:11 -0700
On Wed, Dec 10, 2014 at 03:13:08PM -0500, John Dill wrote:

> Does the license only apply to those to whom the binary has been 
> distributed to?  If the plugin is never publicly released, does the 
> license imply that only the receivers of the plugin are required to be 
> sent the source code? If the plugin is never seen by the public eye, 
> does that imply that the source code may stay private as well?

My understanding of the GPLv2 license, which Wireshark is distributed 
under, is that only the persons to whom you give the plugin must be 
offered the source code:

  3. You may copy and distribute the Program (or a work based on it, 
under Section 2) in object code or executable form under the terms of 
Sections 1 and 2 above provided that you also do one of the following:

    a) Accompany it with the complete corresponding machine-readable
    source code, which must be distributed under the terms of Sections
    1 and 2 above on a medium customarily used for software interchange; 
or,

    b) Accompany it with a written offer, valid for at least three
    years, to give any third party, for a charge no more than your
    cost of physically performing source distribution, a complete
    machine-readable copy of the corresponding source code, to be
    distributed under the terms of Sections 1 and 2 above on a medium
    customarily used for software interchange; or,

    c) Accompany it with the information you received as to the offer
    to distribute corresponding source code.  (This alternative is
    allowed only for noncommercial distribution and only if you
    received the program in object code or executable form with such
    an offer, in accord with Subsection b above.)

The source code for a work means the preferred form of the work for 
making modifications to it.  For an executable work, complete source 
code means all the source code for all modules it contains, plus any 
associated interface definition files, plus the scripts used to control 
compilation and installation of the executable.  However, as a special 
exception, the source code distributed need not include anything that is 
normally distributed (in either source or binary form) with the major 
components (compiler, kernel, and so on) of the operating system on 
which the executable runs, unless that component itself accompanies the 
executable.

If distribution of executable or object code is made by offering access 
to copy from a designated place, then offering equivalent access to copy 
the source code from the same place counts as distribution of the source 
code, even though third parties are not compelled to copy the source 
along with the object code.