Go to the first, previous, next, last section, table of contents.

1 Copying Conditions.

Parts of this library are free; this means that everyone is free to use it and free to redistribute it on a free basis. gpkcs11 is not in the public domain; it is copyrighted and there are restrictions on its distribution, but these restrictions are designed to permit everything that a good cooperating citizen would want to do. What is not allowed is to try to prevent others from further sharing any version of gpks11 that they might get from you.

Specifically, we want to make sure that you have the right to give away copies gpkcs11, that you receive source code or else can get it if you want it, that you can change these functions or use pieces of them in new free programs, and that you know you can do these things.

The fact that you must allow the recipient of the software to give it away, does not mean that you are not allowed to charged for software that is based on this library and its acompanying componentst. You are even encouraged to charge whatever the market will give you. But you are not allowed to take away the rights granted to you from your customer. Free in this context does not mean free beer but free speech instead.

To make sure that everyone has such rights, we have to forbid you to deprive anyone else of these rights. For example, if you distribute copies gpkcs11, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must tell them their rights.

Also, for our own protection, we must make certain that everyone finds out that there is no warranty for anything in the gpkcs11 distribution. If these functions are modified by someone else and passed on, we want their recipients to know that what they have is not what we distributed, so that any problems introduced by others will not reflect on our reputation.

Warning: due to a number of practical, political and commercial considerations the licensing for the whole package is rather complex and please make sure that you understand them before distributing code or use/build derivative products. This somewhat messy solution is a attempt to get the most out of the free software concept without undermining its useability by blocking the support of smartcard that are not availiable as free software. The maintainer and his supporting company are dedicated to choosing and developing free solutions over proprietary ones, but not to a point of making the use of the software impossible due to the lack of support for vital cards.

gpkcs11 in Version 0.5.4 was distributed under the terms of the GNU General Public License, Version 2. (NOT under the GNU Lesser General Public License.) A copy the GNU General Public License is included with the distribution of gpkcs11. If you are dedicated to free software without commercial constraints, please continue to maintain from this codebase.

As of Version 0.5.5 and later, different components of the package are released under different licenses. The code falls under four basic categories: free code, lesser free code, OpenSSL Group code and proprietary code.

the basic interface library libgpkcs11 is release under the GNU Lesser General Public License. This basically allows you to statically link it or dynamically link it at compile time to your application, regardless wether it is proprietary or free. This is an example of lesser free code.

the ceay-token is released under the BSD style code used by the Crypto Algorithm implementation of the OpenSSL Group, based on code by Eric A Young. Since it copies code from those packages it must be released under the same code. This is an example of OpenSSL Group Code.

cryptsh and all scheme scripts that acompany it, are released under the GNU General Public License. Not only is this needed due to the use of guile, but it is the only component that does not suffer from the license dependencies of the other components. It is as free as can and should be.

Go to the first, previous, next, last section, table of contents.