*/
struct ike_sa_entry_t {
/**
- * destructor, also destroys ike_sa
+ * Destructor, also destroys associated ike_sa_t object.
*/
status_t (*destroy) (ike_sa_entry_t *this);
+
/**
- * Number of threads waiting for this ike_sa
+ * Number of threads waiting for this ike_sa_t object.
*/
int waiting_threads;
+
/**
- * condvar where threads can wait until it's free again
+ * Condvar where threads can wait until ike_sa_t object is free for use again.
*/
pthread_cond_t condvar;
+
/**
- * is this ike_sa currently checked out?
+ * Is this ike_sa currently checked out?
*/
bool checked_out;
+
/**
* Does this SA drives out new threads?
*/
bool driveout_new_threads;
+
/**
* Does this SA drives out waiting threads?
*/
bool driveout_waiting_threads;
+
/**
- * identifiaction of ike_sa (SPIs)
+ * Identifiaction of an IKE_SA (SPIs).
*/
ike_sa_id_t *ike_sa_id;
+
/**
- * the contained ike_sa
+ * The contained ike_sa_t object.
*/
ike_sa_t *ike_sa;
};
/**
- * Implements ike_sa_entry_t.destroy.
+ * Implementation of ike_sa_entry_t.destroy.
*/
static status_t ike_sa_entry_destroy(ike_sa_entry_t *this)
{
}
/**
- * @brief creates a new entry for the ike_sa list
+ * @brief Creates a new entry for the ike_sa_t list.
*
* This constructor additionaly creates a new and empty SA.
*
- * @param ike_sa_id the associated ike_sa_id_t, will be cloned
- * @return created entry, with ike_sa and ike_sa_id
+ * @param ike_sa_id The associated ike_sa_id_t, will be cloned
+ * @return ike_sa_entry_t object
*/
static ike_sa_entry_t *ike_sa_entry_create(ike_sa_id_t *ike_sa_id)
{
return this;
}
+
typedef struct private_ike_sa_manager_t private_ike_sa_manager_t;
/**
- * Additional private members to ike_sa_manager_t
+ * Additional private members of ike_sa_manager_t.
*/
struct private_ike_sa_manager_t {
/**
- * Public members
+ * Public interface of ike_sa_manager_t.
*/
ike_sa_manager_t public;
/**
- * @brief get next spi
- *
- * we give out SPIs incremental.
+ * @brief Get next spi.
*
+ * We give out SPIs incremental starting at 1.
+ *
* @param this the ike_sa_manager
* @return the next spi
*/
u_int64_t (*get_next_spi) (private_ike_sa_manager_t *this);
/**
- * @brief find the ike_sa_entry in the list by SPIs.
+ * @brief Find the ike_sa_entry_t object in the list by SPIs.
*
* This function simply iterates over the linked list. A hash-table
* would be more efficient when storing a lot of IKE_SAs...
*
- * @param this the ike_sa_manager containing the list
+ * @param this calling object
* @param ike_sa_id id of the ike_sa, containing SPIs
- * @param entry[out] pointer to set to the found entry
+ * @param[out] entry pointer to set to the found entry
* @return
* - SUCCESS when found,
* - NOT_FOUND when no such ike_sa_id in list
status_t (*get_entry_by_id) (private_ike_sa_manager_t *this, ike_sa_id_t *ike_sa_id, ike_sa_entry_t **entry);
/**
- * @brief find the ike_sa_entry in the list by pointer to SA.
+ * @brief Find the ike_sa_entry_t in the list by pointer to SA.
*
* This function simply iterates over the linked list. A hash-table
* would be more efficient when storing a lot of IKE_SAs...
*
- * @param this the ike_sa_manager containing the list
- * @param ike_sa pointer to the ike_sa
- * @param entry[out] pointer to set to the found entry
+ * @param this calling object
+ * @param ike_sa pointer to the ike_sa
+ * @param[out] entry pointer to set to the found entry
* @return
* - SUCCESS when found,
* - NOT_FOUND when no such ike_sa_id in list
status_t (*get_entry_by_sa) (private_ike_sa_manager_t *this, ike_sa_t *ike_sa, ike_sa_entry_t **entry);
/**
- * @brief delete an entry from the linked list
+ * @brief Felete an entry from the linked list.
*
- * @param this the ike_sa_manager containing the list
+ * @param this calling object
* @param entry entry to delete
* @return
* - SUCCESS when found,
status_t (*delete_entry) (private_ike_sa_manager_t *this, ike_sa_entry_t *entry);
/**
- * lock for exclusivly accessing the manager
+ * Lock for exclusivly accessing the manager.
*/
pthread_mutex_t mutex;
/**
- * Logger used for this IKE SA Manager
+ * Logger used for this IKE SA Manager.
*/
logger_t *logger;
/**
- * Linked list with entries for the ike_sa
+ * Linked list with entries for the ike_sa_t objects.
*/
linked_list_t *ike_sa_list;
/**
- * Next SPI, needed for incremental creation of SPIs
+ * Next SPI, needed for incremental creation of SPIs.
*/
u_int64_t next_spi;
};
/**
- * Implements private_ike_sa_manager_t.get_entry_by_id.
+ * Implementation of private_ike_sa_manager_t.get_entry_by_id.
*/
static status_t get_entry_by_id(private_ike_sa_manager_t *this, ike_sa_id_t *ike_sa_id, ike_sa_entry_t **entry)
{
}
/**
- * Implements private_ike_sa_manager_t.get_entry_by_sa.
+ * Implementation of private_ike_sa_manager_t.get_entry_by_sa.
*/
static status_t get_entry_by_sa(private_ike_sa_manager_t *this, ike_sa_t *ike_sa, ike_sa_entry_t **entry)
{
}
/**
- * Implements private_ike_sa_manager_s.delete_entry.
+ * Implementation of private_ike_sa_manager_s.delete_entry.
*/
static status_t delete_entry(private_ike_sa_manager_t *this, ike_sa_entry_t *entry)
{
/**
- * Implements private_ike_sa_manager_t.get_next_spi.
+ * Implementation of private_ike_sa_manager_t.get_next_spi.
*/
static u_int64_t get_next_spi(private_ike_sa_manager_t *this)
{
}
/**
- * Implementation of ike_sa_manager.create_and_checkout.
+ * Implementation of of ike_sa_manager.create_and_checkout.
*/
static void create_and_checkout(private_ike_sa_manager_t *this,ike_sa_t **ike_sa)
{
}
/**
- * Implementation of ike_sa_manager.checkout.
+ * Implementation of of ike_sa_manager.checkout.
*/
static status_t checkout(private_ike_sa_manager_t *this, ike_sa_id_t *ike_sa_id, ike_sa_t **ike_sa)
{
}
/**
- * Implements ike_sa_manager_t.checkin.
+ * Implementation of ike_sa_manager_t.checkin.
*/
static status_t checkin(private_ike_sa_manager_t *this, ike_sa_t *ike_sa)
{
/**
- * Implements ike_sa_manager_t.checkin_and_delete.
+ * Implementation of ike_sa_manager_t.checkin_and_delete.
*/
static status_t checkin_and_delete(private_ike_sa_manager_t *this, ike_sa_t *ike_sa)
{
}
/**
- * Implements ike_sa_manager_t.delete.
+ * Implementation of ike_sa_manager_t.delete.
*/
static status_t delete(private_ike_sa_manager_t *this, ike_sa_id_t *ike_sa_id)
{
}
/**
- * Implements ike_sa_manager_t.destroy.
+ * Implementation of ike_sa_manager_t.destroy.
*/
static void destroy(private_ike_sa_manager_t *this)
{
}
/*
- * Described in header
+ * Described in header.
*/
ike_sa_manager_t *ike_sa_manager_create()
{