Subject: GPL Limitations (was Ransom). Long.
From: Kyle Sparger <ksparger@dialtoneinternet.net>
Date: Mon, 15 Oct 2001 12:07:30 -0400 (EDT)

A couple of quick comments (IANAL, so take with salt):

1.  I note that a lot of people tend to think that the GPL has a much
    broader stroke than it really does.  A lot of people reference the
    'public' as having rights under the GPL.  Remember, the GPL governs
    software transfer -- and nothing else -- between two parties:  the
    distributor and the recipient.  Nowhere does the 'public' enter the
    equation;  the public has no rights.

2.  The GPL explicitly permits you to charge a fee for the initial
    distribution of the software.  

"You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee."

    You can do this per recipient, and thus, a pre-distribution ransom
    model would be in compliance.  "Pay me $X, and I'll give you software
    which does Y."  Also, note that the GPL does not govern the size of
    this fee, at all.  This fee can be anything the market will bear.

Realize that you may be able to play tricks to limit redistribution of
GPL'd software provided they are outside the scope of the GPL.  The GPL
simply restricts legal mechanisms to prevent redistribution.  Provided you
use tactics that don't require you to resort to the law, you may be able
to partially side-step the GPL.

1.  Gentleman's agreements.  Ask the recipient, politely, not to
    redistribute the code once they receive it.  You have no legal means
    to prevent them from doing so, but you could imply that redistribution
    would foul your relationship.  This is likely to work better if the
    relationship is more important to them than it is to you. 
2.  Black lists.  Create developer feedback system to blacklist customers
    who violate #1, so you and others like you can avoid those that would
    redistribute later.
3.  Trademark games.  Trademark the name of your software.  Let the
    recipients know, in no uncertain terms, that they have no right to use
    the name, under any circumstances.  If you find them using it, sue
    them.  This might make it harder to redistribute, as finding the
    software might be made more difficult.
4.  Social engineering.  Management at many firms will reflexively protect
    their 'intellectual property' and business models.  They feel (often
    correctly) that barriers to entry raise their margins by limiting
    supply.  Pander to this impulse.

    Convince management that the software is a business advantage, and 
    redistribution would only provide that advantage to their competitors.
    For bonus points, help them implement an internal policy prohibiting
    redistribution.

    Take advantage of management worried about the 'viral nature' of the
    GPL.  Advise them of section 5 of the GPL;  they don't have to accept
    the license at all!  For the relatively small price of not being able
    to redistribute or modify, you don't have to worry about that viral
    nature -- besides, you didn't really want to redistribute that, did
    you?  And, since I'm so sensative to your needs, I have special
    low pricing for customers that can't modify their own code.  For bonus
    points, get that rejection in writing.

These are definately in the realm of 'dirty tricks'.  You are not likely
to make many friends this way.  I'm not advocating them, I'm just trying
to illustrate that the GPL is limited in scope.  Step outside the scope,
and you can certainly do things the GPL never intended.

Also, I'm not arguing the effectiveness of the above tactics, I merely
point out that you may be able to use them.

--------------------------------

My personal opinion of the ransom model is that you would be best off
pitching it under a consulting/services model.  Go to your pontential
customer, and tell them that you have a solution to a problem they have.  
And oh, by the way, the software that powers this solution, it's under the
GPL, with all the attached benefeits!

Otherwise, for most people, ransom is probably not going to work with the
GPL.  Unless you have an outstanding reputation, not many people are
likely to front money and trust your delivery.

Kyle Sparger