Project

General

Profile

strongSwan Developer Documentation » History » Version 30

Version 29 (Andreas Steffen, 15.06.2009 07:39) → Version 30/57 (Andreas Steffen, 25.07.2009 16:03)

h1. strongSwan Developer Documentation

h2. Getting the Source Code

The easiest way to get the source code is checking it out from our "Git":http://git-scm.com/ repository:
<pre>
git clone http://git.strongswan.org/strongswan.git
</pre>

h2. Source Code Documentation

The newer parts of strongSwan use extractable inline documentation extensively. This documentation is extracted with [[doxygen]] three times a day and uploaded to the "/apidoc":http://www.strongswan.org/apidoc folder.

h2. Code style

For new code (charon, libstrongswan, ...) we heavily use an [[ObjectOrientedC|object oriented programming style]] for C.

h2. Contributions

Before starting development, please read our [[Contributions|contribution requirements]].

h2. Compoments

The _src_ directory in the strongSwan distribution contains a set of compoments:

|[[charon]]|The IKEv2 keying daemon.|
|[[pluto]]|The IKEv1 keying daemon.|
|[[libstrongswan]]|The new strongSwan library with basic functions used by the on which charon and pluto daemons | is built.|
|libfreeswan|The deprecated library used by pluto.|
|[[DynamicUmlMeshModeler|dumm]]|An new and experimental UML testing framework in developement.|
|[[IpsecCommand|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|manager]]|A graphical management application for charon based on libfast.|
|[[OpenAc|openac]]|Utility to build attribute certificates on the command line.|
|[[ScepClient|scepclient]]|Utility to enroll certificates using the SCEP protocol.|
|[[IpsecStarter|starter]]|Reads _ipsec.conf_ and controls the keying daemons pluto and charon.|
|[[IpsecStroke|stroke]]|Command line utility to control charon via the stroke protocol.|
|[[IpsecWhack|whack]]|Command line utility to control pluto via the whack protocol.|