strongSwan Developer Documentation » History » Version 37
« Previous -
Version 37/58
(diff) -
Next » -
Current version
Tobias Brunner, 03.08.2011 14:23
strongSwan Developer Documentation¶
Getting the Source Code¶
The easiest way to get the source code is checking it out from our Git repository:
git clone git://git.strongswan.org/strongswan.gitThe master branch is also mirrored to GitHub.
Browsing the Source Code¶
The Git repository can be browsed online using either Gitweb or the integrated repository browser (slower).
Source Code Documentation¶
The newer parts of strongSwan use extractable inline documentation extensively. This documentation is extracted with doxygen for the latest release
and uploaded to strongswan.org/apidoc, but can also be browsed here using the Developer Documentation button above.
Code style¶
For new code (charon, libstrongswan, ...) we heavily use an object oriented programming style for C. Also have a look to our basic programming style guidelines.
Contributions¶
Before starting development, please read our contribution requirements.
Components¶
The src directory in the strongSwan distribution contains a set of compoments:
charon | The IKEv2 keying daemon. |
pluto | The IKEv1 keying daemon. |
libstrongswan | The strongSwan library with basic functions used by the daemons and utilities |
libcharon | Contains most of the code and the plugins of the charon daemon |
libhydra | Contains daemon-specific code and plugins used by both the charon und pluto daemons |
libfreeswan | The deprecated library used by pluto. |
dumm | An new and experimental UML testing framework in development. |
ipsec | The ipsec command line tool wrapping commands and other tools. |
libfast | A lightweight framework to build native web applications using ClearSilver and FastCGI. |
manager | A graphical management application for charon based on libfast. |
openac | Utility to build attribute certificates on the command line. |
pki | Public Key Infrastructure utility. |
scepclient | Utility to enroll certificates using the SCEP protocol. |
starter | Reads ipsec.conf and controls the keying daemons pluto and charon. |
stroke | Command line utility to control charon via the stroke protocol. |
whack | Command line utility to control pluto via the whack protocol. |