documentation fixes and updates
This commit is contained in:
parent
9fe1a1ca76
commit
432b298e40
10
HACKING
10
HACKING
|
@ -38,11 +38,17 @@ Then you're in, start the build as usual:
|
||||||
make install
|
make install
|
||||||
|
|
||||||
|
|
||||||
|
API documentation
|
||||||
|
-----------------
|
||||||
|
Charon and libstrongswan contain inline code documentation. These comments can be
|
||||||
|
extracted using doxygen. It is built using 'make apidoc', which creates an 'apidoc'
|
||||||
|
folder containing the HTML files.
|
||||||
|
|
||||||
|
|
||||||
uClibc support
|
uClibc support
|
||||||
--------------
|
--------------
|
||||||
|
|
||||||
Support for uClibc is still work in progress. To get started, make sure to
|
To run strongSwan on uClibc, you need at least:
|
||||||
include the following options:
|
|
||||||
|
|
||||||
String and Stdio Support --->
|
String and Stdio Support --->
|
||||||
[*] Support glibc's register_printf_function()
|
[*] Support glibc's register_printf_function()
|
||||||
|
|
14
TODO
14
TODO
|
@ -10,18 +10,15 @@ gain hassle-free configuration, version negotiation and maintainability.
|
||||||
Roadmap 2007
|
Roadmap 2007
|
||||||
============
|
============
|
||||||
|
|
||||||
Apr ! - credentials backend redesign
|
Jun ! - distribution packages
|
||||||
! - interface in charon for the XML based SMP management interface
|
! - interface in charon for the XML based SMP management interface
|
||||||
!
|
! - SMP configuration client
|
||||||
May ! - SMP configuration client
|
|
||||||
! - release IKEv2 p2p NATT draft 00
|
! - release IKEv2 p2p NATT draft 00
|
||||||
|
!
|
||||||
|
Jul ! - modular credential backends
|
||||||
! - reimplement IKEv2 p2p NATT support
|
! - reimplement IKEv2 p2p NATT support
|
||||||
!
|
!
|
||||||
Jun ! - start with IKEv1 migration strategy
|
Aug ! - Start IKEv1 implementation in charon
|
||||||
!
|
|
||||||
Jul !
|
|
||||||
!
|
|
||||||
Aug !
|
|
||||||
!
|
!
|
||||||
Sep !
|
Sep !
|
||||||
!
|
!
|
||||||
|
@ -51,7 +48,6 @@ Stroke interface
|
||||||
----------------
|
----------------
|
||||||
- add a Rekey-Counter for SAs in "statusall"
|
- add a Rekey-Counter for SAs in "statusall"
|
||||||
- ipsec statusall bytecount
|
- ipsec statusall bytecount
|
||||||
- proper handling of CTRL+C console detach (SIG_PIPE)
|
|
||||||
|
|
||||||
Misc
|
Misc
|
||||||
----
|
----
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
libtoolize &&
|
libtoolize --force &&
|
||||||
aclocal &&
|
aclocal &&
|
||||||
automake -a &&
|
automake -a &&
|
||||||
autoconf
|
autoconf
|
||||||
|
|
|
@ -40,13 +40,17 @@ typedef struct bus_t bus_t;
|
||||||
* Signaling is for different purporses. First, it allows debugging via
|
* Signaling is for different purporses. First, it allows debugging via
|
||||||
* "debugging signal messages", sencondly, it allows to follow certain
|
* "debugging signal messages", sencondly, it allows to follow certain
|
||||||
* mechanisms currently going on in the daemon. As we are multithreaded,
|
* mechanisms currently going on in the daemon. As we are multithreaded,
|
||||||
* and of multiple transactions are involved, it's not possible to follow
|
* and multiple transactions are involved, it's not possible to follow
|
||||||
* one connection setup without further infrastructure. These infrastructure
|
* one connection setup without further infrastructure. These infrastructure
|
||||||
* is provided by the bus and the signals the daemon emits to the bus.
|
* is provided by the bus and the signals the daemon emits to the bus.
|
||||||
*
|
*
|
||||||
* There are different scenarios to follow these signals, but all have
|
* There are different scenarios to follow these signals, but all have
|
||||||
* the same scheme. First, a START signal is emitted to indicate the daemon
|
* the same scheme. First, a START signal is emitted to indicate the daemon
|
||||||
* has started to
|
* has started to do something. After a start signal, a SUCCESS or a FAILED
|
||||||
|
* signal of the same type follows. This allows to track the operation. Any
|
||||||
|
* Debug signal betwee a START and a SUCCESS/FAILED belongs to that operation
|
||||||
|
* if the IKE_SA is the same. The thread may change, as multiple threads
|
||||||
|
* may be involved in a complex scenario.
|
||||||
*
|
*
|
||||||
* @ingroup bus
|
* @ingroup bus
|
||||||
*/
|
*/
|
||||||
|
@ -247,7 +251,9 @@ struct bus_listener_t {
|
||||||
* in receiving event signals registers at the bus. Any signals sent to
|
* in receiving event signals registers at the bus. Any signals sent to
|
||||||
* are delivered to all registered listeners.
|
* are delivered to all registered listeners.
|
||||||
* To deliver signals to threads, the blocking listen() call may be used
|
* To deliver signals to threads, the blocking listen() call may be used
|
||||||
* to wait for a signal.
|
* to wait for a signal. However, passive listeners should be preferred,
|
||||||
|
* as listening actively requires some synchronization overhead as data
|
||||||
|
* must be passed from the raising thread to the listening thread.
|
||||||
*
|
*
|
||||||
* @ingroup bus
|
* @ingroup bus
|
||||||
*/
|
*/
|
||||||
|
@ -283,7 +289,7 @@ struct bus_t {
|
||||||
* it processes a signal, registration is required. This is done through
|
* it processes a signal, registration is required. This is done through
|
||||||
* the set_listen_state() method, see below.
|
* the set_listen_state() method, see below.
|
||||||
*
|
*
|
||||||
* The listen() function is (has) a thread cancellation point, so might
|
* The listen() function is (has) a thread cancellation point, so you might
|
||||||
* want to register cleanup handlers.
|
* want to register cleanup handlers.
|
||||||
*
|
*
|
||||||
* @param this bus
|
* @param this bus
|
||||||
|
|
|
@ -56,7 +56,7 @@ struct private_callback_job_t {
|
||||||
pthread_t thread;
|
pthread_t thread;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* mutex to synchronize thread startup/cancellation
|
* mutex to access jobs interna
|
||||||
*/
|
*/
|
||||||
pthread_mutex_t mutex;
|
pthread_mutex_t mutex;
|
||||||
|
|
||||||
|
|
|
@ -33,6 +33,11 @@ typedef enum job_requeue_t job_requeue_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Job requeueing policy
|
* @brief Job requeueing policy
|
||||||
|
*
|
||||||
|
* The job requeueing policy defines how a job is handled when the callback
|
||||||
|
* function returns.
|
||||||
|
*
|
||||||
|
* @ingroup jobs
|
||||||
*/
|
*/
|
||||||
enum job_requeue_t {
|
enum job_requeue_t {
|
||||||
|
|
||||||
|
@ -42,12 +47,12 @@ enum job_requeue_t {
|
||||||
JOB_REQUEUE_NONE,
|
JOB_REQUEUE_NONE,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reque the job farly, meaning it has to queue as any other job
|
* Reque the job fairly, meaning it has to requeue as any other job
|
||||||
*/
|
*/
|
||||||
JOB_REQUEUE_FAIR,
|
JOB_REQUEUE_FAIR,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reexecute the job directly, without the need of requeing it
|
* Reexecute the job directly, without the need of requeueing it
|
||||||
*/
|
*/
|
||||||
JOB_REQUEUE_DIRECT,
|
JOB_REQUEUE_DIRECT,
|
||||||
};
|
};
|
||||||
|
@ -60,6 +65,8 @@ enum job_requeue_t {
|
||||||
*
|
*
|
||||||
* @param data param supplied to job
|
* @param data param supplied to job
|
||||||
* @return requeing policy how to requeue the job
|
* @return requeing policy how to requeue the job
|
||||||
|
*
|
||||||
|
* @ingroup jobs
|
||||||
*/
|
*/
|
||||||
typedef job_requeue_t (*callback_job_cb_t)(void *data);
|
typedef job_requeue_t (*callback_job_cb_t)(void *data);
|
||||||
|
|
||||||
|
@ -72,6 +79,8 @@ typedef job_requeue_t (*callback_job_cb_t)(void *data);
|
||||||
*
|
*
|
||||||
* @param data param supplied to job
|
* @param data param supplied to job
|
||||||
* @return requeing policy how to requeue the job
|
* @return requeing policy how to requeue the job
|
||||||
|
*
|
||||||
|
* @ingroup jobs
|
||||||
*/
|
*/
|
||||||
typedef void (*callback_job_cleanup_t)(void *data);
|
typedef void (*callback_job_cleanup_t)(void *data);
|
||||||
|
|
||||||
|
|
|
@ -99,6 +99,8 @@ struct processor_t {
|
||||||
/**
|
/**
|
||||||
* @brief Create the thread pool without any threads.
|
* @brief Create the thread pool without any threads.
|
||||||
*
|
*
|
||||||
|
* Use the set_threads method to start processing jobs.
|
||||||
|
*
|
||||||
* @return processor_t object
|
* @return processor_t object
|
||||||
*
|
*
|
||||||
* @ingroup processing
|
* @ingroup processing
|
||||||
|
|
Loading…
Reference in New Issue