Contributions to the strongSwan project are very welcome. Before you start your development, please get in contact with our developers via one of our support channels. We might already have some plans for such a feature or are even working on it. We can also give you some useful hints on how to integrate your work into the strongSwan architecture.
For non-trivial submissions we’ll require that you sign a Contributor License Agreement (see below for details).
Patches may be submitted as pull requests on GitHub.
strongSwan is an open source project distributed under the GPLv2 license. We think the open source model has several advantages over a proprietary product:
You can review the code, which is of utmost importance in security software.
You can contribute to fix or improve the software.
You can use the software for free. This allows more users to try and use it, giving feedback and further improve its quality.
We strongly believe in open source and will always distribute strongSwan under a GPL license.
charon daemon and its libraries have
originally been developed at the HSR University of Applied Sciences Rapperswil
in Switzerland. Writing an IKE daemon from scratch is not something you do as a
hobby over the weekend. We have invested several full-time man years of development.
While we are open to contributions, they have been rather rare so far. We think
this is mainly due to the complexity of the topic and the software.
The old IKEv1
pluto daemon (until strongSwan version 5.0.0) and related parts
have been inherited from the FreeS/WAN project. The copyright belongs
to several people.
Depending on the strongSwan components of your contribution, a signed Contributor License Agreement (CLA) will usually be required:
If your (non-trivial) contributions are targeting
the core libraries:
the front ends:
the tools, e.g.:
we will require that contributors have signed a Contributor License Agreement (CLA).
|When submitting a pull request, a bot will automatically check if all authors have signed the CLA and otherwise provide instructions on how to proceed.|
This allows us to:
Integrate your work in our GPLed strongSwan project
To switch the project’s license to GPLv3 if required
Offer partners alternative licensing schemes for these parts
Providing alternative licensing will give us additional revenue to keep the project rolling. We cannot improve strongSwan without a constant income.
If you submit non-trivial patches:
if you extend existing files in a non-trivial way, you may add your own copyright to the existing header
for new files, add the following header
/* * Copyright (C) <year> <copyright holders> * * Copyright (C) secunet Security Networks AG * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * for more details. */
If your contributions are targeting any of the following components we will not require contributors to have signed a Contributor License Agreement (CLA).
The files in these components use regular GPLv2-headers, if any.
the GPL-only NetworkManager front- and backend:
the GPL-only plugins:
legacy crypto plugins:
the testing framework: