blob: a422f78fca9b19461456eeec3f01e3f0ffd6ea7c [file] [log] [blame]
HAPROXY's license - 2006/06/15
Historically, haproxy has been covered by GPL version 2. However, an issue
appeared in GPL which will prevent external non-GPL code from being built
using the headers provided with haproxy. My long-term goal is to build a core
system able to load external modules to support specific application protocols.
Since some protocols are found in rare environments (finance, industry, ...),
some of them might be accessible only after signing an NDA. Enforcing GPL on
such modules would only prevent them from ever being implemented, while not
providing anything useful to ordinary users.
For this reason, I *want* to be able to support binary only external modules
when needed, with a GPL core and GPL modules for standard protocols, so that
people fixing bugs don't keep them secretly to try to stay over competition.
The solution was then to apply the LGPL license to the exportable include
files, while keeping the GPL for all the rest. This way, it still is mandatory
to redistribute modified code under customer request, but at the same time, it
is expressly permitted to write, compile, link and load non-GPL code using the
LGPL header files and not to distribute them if it causes a legal problem.
Of course, users are strongly encouraged to continue the work under GPL as long
as possible, since this license has allowed useful enhancements, contributions
and fixes from talented people around the world.
The text of the licenses lies in the "doc" directory. All the files provided in
this package are covered by the GPL unless expressly stated otherwise in them.
Every patch or contribution provided by external people will by default comply
with the license of the files it affects, or be rejected.
Willy Tarreau -