- docs updated

This commit is contained in:
Martin Willi
2005-12-06 16:46:39 +00:00
parent 3febcf15f0
commit a6cbf64831
12 changed files with 80 additions and 29 deletions
+2 -2
View File
@@ -90,7 +90,7 @@ static event_t *event_create(timeval_t time, job_t *job)
typedef struct private_event_queue_t private_event_queue_t;
/**
* @brief Private Variables and Functions of event_queue_t class.
* Private Variables and Functions of event_queue_t class.
*
*/
struct private_event_queue_t {
@@ -342,7 +342,7 @@ event_queue_t *event_queue_create()
this->public.add_relative = (void (*) (event_queue_t *event_queue, job_t *job, u_int32_t ms)) add_relative;
this->public.destroy = (void (*) (event_queue_t *event_queue)) event_queue_destroy;
this->list = linked_list_create();;
this->list = linked_list_create();
pthread_mutex_init(&(this->mutex), NULL);
pthread_cond_init(&(this->condvar), NULL);
+10 -3
View File
@@ -32,10 +32,18 @@ typedef struct event_queue_t event_queue_t;
/**
* @brief Event-Queue used to store timed events.
*
* Added events are sorted. The get method blocks until
* the time is elapsed to process the next event. The get
* method is called from the scheduler_t thread, which
* will add the jobs to to job_queue_t for further processing.
*
* Although the event-queue is based on a linked_list_t
* all access functions are thread-save implemented.
*
* @b Constructors:
* - event_queue_create()
*
* @ingroup queues
*/
struct event_queue_t {
@@ -93,15 +101,14 @@ struct event_queue_t {
* after calling this function.
*
* @param event_queue calling object
* @returns always SUCCESS
*/
void (*destroy) (event_queue_t *event_queue);
};
/**
* @brief Creates an empty event_queue
* @brief Creates an empty event_queue.
*
* @returns event_queue
* @returns event_queue_t object
*
* @ingroup queues
*/
+5
View File
@@ -36,12 +36,17 @@ typedef struct private_job_queue_t private_job_queue_t;
*
*/
struct private_job_queue_t {
/**
* public members
*/
job_queue_t public;
/**
* The jobs are stored in a linked list
*/
linked_list_t *list;
/**
* access to linked_list is locked through this mutex
*/
+11 -6
View File
@@ -29,17 +29,22 @@
typedef struct job_queue_t job_queue_t;
/**
* @brief Job-Queue
* @brief The job queue stores jobs, which will be processed by the thread_pool_t.
*
* Jobs are added from various sources, from the threads and
* from the event_queue_t.
* Although the job-queue is based on a linked_list_t
* all access functions are thread-save implemented.
*
* @b Constructors:
* - job_queue_create()
*
* @ingroup queues
*/
struct job_queue_t {
/**
* @brief returns number of jobs in queue
* @brief Returns number of jobs in queue.
*
* @param job_queue_t calling object
* @returns number of items in queue
@@ -47,7 +52,7 @@ struct job_queue_t {
int (*get_count) (job_queue_t *job_queue);
/**
* @brief get the next job from the queue
* @brief Get the next job from the queue.
*
* If the queue is empty, this function blocks until a job can be returned.
* After using, the returned job has to get destroyed by the caller.
@@ -59,7 +64,7 @@ struct job_queue_t {
job_t *(*get) (job_queue_t *job_queue);
/**
* @brief adds a job to the queue
* @brief Adds a job to the queue.
*
* This function is non blocking and adds a job_t to the list.
* The specific job object has to get destroyed by the thread which
@@ -71,7 +76,7 @@ struct job_queue_t {
void (*add) (job_queue_t *job_queue, job_t *job);
/**
* @brief destroys a job_queue object
* @brief Destroys a job_queue object.
*
* @warning The caller of this function has to make sure
* that no thread is going to add or get a job from the job_queue
@@ -85,7 +90,7 @@ struct job_queue_t {
/**
* @brief Creates an empty job_queue.
*
* @return job_queue_t empty job_queue
* @return job_queue_t object
*
* @ingroup queues
*/
@@ -33,6 +33,9 @@ typedef struct delete_established_ike_sa_job_t delete_established_ike_sa_job_t;
/**
* @brief Class representing an DELETE_ESTABLISHED_IKE_SA Job.
*
* This job initiates the deletion of an IKE_SA. The SA
* to delete is specified via an ike_sa_id_t.
*
* @b Constructors:
* - delete_established_ike_sa_job_create()
*
@@ -66,7 +69,7 @@ struct delete_established_ike_sa_job_t {
* @brief Creates a job of type DELETE_ESTABLISHED_IKE_SA.
*
* @param ike_sa_id id of the IKE_SA to delete
* @return created delete_established_ike_sa_job_t object
* @return delete_established_ike_sa_job_t object
*
* @ingroup jobs
*/
@@ -33,6 +33,10 @@ typedef struct delete_half_open_ike_sa_job_t delete_half_open_ike_sa_job_t;
/**
* @brief Class representing an DELETE_HALF_OPEN_IKE_SA Job.
*
* This job is responsible for deleting of half open IKE_SAs. A half
* open IKE_SA is every IKE_SA which hasn't reache the ike_sa_established
* state.
*
* @b Constructors:
* - delete_half_open_ike_sa_job_create()
*
@@ -31,7 +31,13 @@
typedef struct incoming_packet_job_t incoming_packet_job_t;
/**
* @brief Object representing an INCOMING_PACKET Job.
* @brief Class representing an INCOMING_PACKET Job.
*
* An incoming pack job is created from the receiver, which has
* read a packet to process from the socket.
*
* @b Constructors:
* - incoming_packet_job_create()
*
* @ingroup jobs
*/
@@ -28,7 +28,13 @@
typedef struct initiate_ike_sa_job_t initiate_ike_sa_job_t;
/**
* Object representing an INITIATE_IKE_SA Job
* @brief Class representing an INITIATE_IKE_SA Job.
*
* This job is created if an IKE_SA should be iniated. This
* happens form a user request, or via the kernel interface.
*
* @b Constructors:
* - initiate_ike_sa_job_create()
*
* @ingroup jobs
*/
@@ -39,14 +45,14 @@ struct initiate_ike_sa_job_t {
job_t job_interface;
/**
* @brief Returns the currently set configuration name for this job
* @brief Returns the currently set configuration name for this job.
*
* @warning Returned name is not copied.
*
* @param this calling initiate_ike_sa_job_t object
* @return name of the configuration
*/
char * (*get_configuration_name) (initiate_ike_sa_job_t *this);
char *(*get_configuration_name) (initiate_ike_sa_job_t *this);
/**
* @brief Destroys an initiate_ike_sa_job_t object.
+8 -4
View File
@@ -32,6 +32,8 @@ typedef enum job_type_t job_type_t;
/**
* @brief Definition of the various job types.
*
* @todo add more jobs, such as rekeying.
*
* @ingroup jobs
*/
enum job_type_t {
@@ -52,8 +54,8 @@ enum job_type_t {
*
* Job is implemented in class type initiate_ike_sa_job_t
*/
INITIATE_IKE_SA,
/**
* Delete an ike sa which is still not established.
*
@@ -67,13 +69,12 @@ enum job_type_t {
* Job is implemented in class type delete_established_ike_sa_job_t
*/
DELETE_ESTABLISHED_IKE_SA
/* more job types have to be inserted here */
};
/**
* string mappings for job_type_t
*
* @ingroup jobs
*/
extern mapping_t job_type_m[];
@@ -85,6 +86,9 @@ typedef struct job_t job_t;
*
* A job consists of a job-type and one or more assigned values.
*
* @b Constructors:
* - None, use specific implementation of the interface.
*
* @ingroup jobs
*/
struct job_t {
@@ -31,7 +31,14 @@
typedef struct retransmit_request_job_t retransmit_request_job_t;
/**
* Object representing an RETRANSMIT_REQUEST Job.
* @brief Class representing an RETRANSMIT_REQUEST Job.
*
* This job is scheduled every time a request is sent over the
* wire. If the response to the request is not received at schedule
* time, the retransmission will be initiated.
*
* @b Constructors:
* - retransmit_request_job_create()
*
* @ingroup jobs
*/
+5 -5
View File
@@ -30,7 +30,7 @@
typedef struct private_send_queue_t private_send_queue_t;
/**
/**
* @brief Private Variables and Functions of send_queue class
*
*/
@@ -70,7 +70,7 @@ static int get_count(private_send_queue_t *this)
return count;
}
/**
/**
* implements send_queue_t.get
*/
static packet_t *get(private_send_queue_t *this)
@@ -96,7 +96,7 @@ static packet_t *get(private_send_queue_t *this)
return packet;
}
/**
/**
* implements send_queue_t.add
*/
static void add(private_send_queue_t *this, packet_t *packet)
@@ -107,7 +107,7 @@ static void add(private_send_queue_t *this, packet_t *packet)
pthread_mutex_unlock(&(this->mutex));
}
/**
/**
* implements send_queue_t.destroy
*/
static void destroy (private_send_queue_t *this)
@@ -133,7 +133,7 @@ static void destroy (private_send_queue_t *this)
allocator_free(this);
}
/*
/*
*
* Documented in header
*/
+7 -3
View File
@@ -30,11 +30,15 @@
typedef struct send_queue_t send_queue_t;
/**
* @brief Send-Queue
*
* @brief The send queue stores packet for the sender_t instance.
*
* The sender_t will send them consequently over the wire.
* Although the send-queue is based on a linked_list_t
* all access functions are thread-save implemented.
*
* @b Constructors:
* - send_queue_create()
*
* @ingroup queues
*/
struct send_queue_t {
@@ -87,7 +91,7 @@ struct send_queue_t {
/**
* @brief Creates an empty send_queue_t.
*
* @return send_queue_t empty send_queue_t
* @return send_queue_t object
*
* @ingroup queues
*/