Licensing information

Linux-HA licensing in a nutshell
Linux-HA code is licensed either under the GNU General Public License (GPL), or under the GNU Lesser General Public License (LGPL).

Linux-HA documentation is licensed either under the GPL, or under the LGPL, or under the Creative Commons Attribution-Share Alike (CC-BY-SA) license.

Every source file distributed as part of Linux-HA should clearly state which license applies to it. If you become aware of any that do not, please let the developers know on the project mailing list.

Uniformity

 * Every .c, .h, .py, and shell script needs to have a copyright and license statement in it. It is acceptable for other files to have them, but the emphasis should be on making sure these files are covered.


 * For shell scripts, it is acceptable if they contain just two lines: one for copyright and one for license - because they are interpreted and making the file larger actually makes it a little slower (this is not true for .py and .perl files). All shell scripts should be GPL -- but the . included files  and   should be LGPL to make it as clear as possible that it's OK to include them in non-GPL scripts.


 * For files which are translated into a persistent object code of some sort, please put a full copy of the GPL or LGPL preamble in the source code.

Public Interfaces

 * For libraries which talk to the core modules via IPC or sockets or fork/exec, they and the header files needed to interface to them should be LGPL.


 * For plugins which are intended to be reusable, they should be licensed LGPL. This probably includes most plugins.


 * Core code which is not part of a public interface should be licensed GPL.

What's Legal, and what's not
The LGPL specifically allows relicensing code as GPL, so if something is mistakenly (according to this policy) marked LGPL, then it is possible to change the license without the author's permission.

All other changes in licenses require the permission of the author.

Exceptions
There are a small number of files which were included into the project from other open source projects. These files were licensed as BSD or were public domain or something similar. All such files must have GPL-compatible licenses. This section will have the list of exception files here.

Obsolete Directories
There are a number of obsolete directories which can be ignored, since they aren't part of the active base. These include:
 * telecom/eventd
 * telecom/cms
 * telecom/checkpointd
 * lib/eventd
 * lib/cmsclient
 * lib/checkpointd
 * lib/tinyxml
 * proc-ha

Manual pages
The Linux-HA man pages are licensed under the same license as the relevant Linux-HA component they are intended to document.

User's Guide
The Heartbeat User's Guide is licensed under the Creative Commons Attribution-Share Alike (CC-BY-SA) license.

Content on this web site
Content on the MediaWiki web site is likewise licensed under the Creative Commons Attribution-Share Alike (CC-BY-SA) license.