Re: Dissident versus ASP
On Mon, Mar 17, 2003 at 07:30:44PM +1000, Anthony Towns wrote:
> The Dissident test is equivalent to saying (or, at least, implies):
> You should never be forced to give your source changes (and/or rights
> to use/modify them) to anyone but the users of your program.
> We've established that you can't require someone who lets other people
> use a program, but who doesn't distribute copies of it normally, to
> give out copies of changes made to the source to any user who asks,
> too, since that'd require you to keep source available permanently and
> make it accessible, or maintain an out-of-band distribution mechanism,
> which are all overly impractical. Which is to say:
> You should never be forced to give your source changes (and/or
> rights to use/modify them) to people who merely use your program
> (but don't already receive copies).
> Together, those say that:
> If your program is not distributed to anyone, then the license cannot
> require you to distribute it to anyone (no matter how many people
> use it or for what purpose, etc).
> Which is to say that, if accepted, the Dissident test and the practical
> concerns we have about providing source over SMS and such, imply that
> no free license can ever close the ASP loophole.
I certainly aggree with the first test (even though RMS does
not). Not because people should be allowed to take free
software proprietary, but because there are many reasons why the
contents, existence or whereabouts of a "regionally" modified
program is likely to imply some information which can be
considered reasonably private for other reasons. The dissident
test expresses one situation where all 3 are very private.
I do not aggree with the second test in general. A big service
provider, whose primary service is to let people run a copy of a
piece of free software can be reasonably required to provide the
patches / sources to *that* program in a way similar to the
current GPLv2 ways (immidiate access from a designated place,
proactive provisioning to users, reference to public source if
not modified or an implied offer to provide current version at
distribution cost). For instance someone providing a $1 SMS
service with no web server at all could send it out on CD-Rs at
cost *if and when requested*. They could even offer to send it
out on SMS charging $1 per 140 chars, but that would be
stretching it. Someone running their company out of Antarctica
could charge the transmission cost for the source download if
someone insists on getting it.
But the time-sharing company requirement must be written so it
does not extend beyond that scenario at all. Someone running a
small-time server should not be required to reveal source (but
see DFSG 6). Someone who provides a different service
altogether but happens to use a piece of free software to do so
should not be required to reveal source. Someone who provides a
time-sharing service and uses a piece of free software which is
not the service should not be required to reveal that source.
Example: A company whose service is to calculate paychecks and
initiate the resulting money transfers and accounting
transactions would be using many crucial pieces of software:
The program that figures out all the strange laws and
published aggreements regarding paycheck calculations could be
subject to a GPLv3 publishing requirement if it was under the
GPLv3. This would be a real pain, but also a real freedom (such
companies often bark at implementing new payment schemes). If
the company wants this to be kept proprietary they must keep
that piece of code free of GPLv3 code. If they share they must
The program or data which knows the secrets of some peoples
private job and salary situations should remain private even if
indirectly under GPLv3 (so there must be a personal information
exception allowing those details to be weeded from the released
patch). However it could be force requested by the individual
receiving or paying that particular paycheck.
The program which talks to the money transfer interfaces of
various banking systems would (at most) be GPLv3 obliged with
those banks as users.
The program used to validate incoming requests as reasonable
is not the primary service and should be exempt. There might
also be a general exception for code implementing provider
specific security checks, similar to the personal information
The kernel, compiler, shell, backup software, console I/O
etc. of the computers running the system are definitely not the
primary service and should be exempt.
The system used to compute and track the charges incured by
users of the service is not the primary service and should be
The cgi script providing a web interface to the service is a
borderline case (assuming the script contains GPL cgi code and
also assuming that there are other ways to talk to the service
(paper mail etc.)).
The web server hosting that cgi code should not be covered by
forced distribution, because it is incidental, not primary.
I have not thought all of these cases through and may change my
mind about some of them later.
Here is one hypothetical text (TINLA, IANAL, IANADD):
If you offer to one or more parties the service of running the
Program in exchange for a monetary fee or other significant
consideration, and the act of running the Program is in essence
the service charged for not merely a means of providing another
service, the parties who have actually paid for that service
receive the right to obtain a copy of The Program as follows.
a) The copy of The Program must be provided in source form as
defined above and must be provided under this license. It must
be provided on a media or form which is customarily used for
interchange of program source code, and which is not restricted
by technical or other means from being used, modified, copied,
distributed etc. in all the ways permitted by this license.
b) You are not exempt from obeying the rest of this licence
when providing a copy of The Program to comply with this clause.
It is your responsibility to ensure your ability to legally and
practically do so before accepting payment.
c) The source provided must at your choice correspond to
either The Program as actually ran by the requesting paying user
prior to the request, or to The Program as offered to similarly
paying users at the time the request was received by You.
d) You may omit from the source the details of personal
information and data of persons other than the requesting paying
user. In particular, You may omit personal information and data
of yourself. Typical examples of personal information include
but is not limited to names, e-mail addresses, passwords, social
security numbers, financial details, health information,
political and religious sympaties etc. You may interpret
information as personal if it can be reasonably considered as
such even if that information does not fall under a strict
definition of "personal information" used in laws about privacy
or data protection.
e) You may omit from the source the details of security and
business rules specific to You and not a primary part
of the service offering.
f) The copy of The Program must be provided no later than one
month after You receive the request. You may at your option
provide the copy prior to receiving the request.
g) You may charge for the act of providing the copy of The
Program, but no more than twice your actual cost of physically
providing the copy. This includes labour in preparing the copy
for distribution but not any cost in creating the copy as used
to provide Your service offering.
h) You may provide the requested copy by either: h1)
Providing it on a medium customarily used for software
interchange or h2) Providing access to retrieve it from a
designated place accessible to the requesting paying user at no
surcharge above g) or h3) refering the paying user to another
party actualy providing h1) or h2) and satisfying a) - g) as
measured relative to your service offering.
This message is hastily written, please ignore any unpleasant wordings,
do not consider it a binding commitment, even if its phrasing may
indicate so. Its contents may be deliberately or accidentally untrue.
Trademarks and other things belong to their owners, if any.