aboutsummaryrefslogtreecommitdiffstats
path: root/Source/charon/sa/ike_sa_id.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/charon/sa/ike_sa_id.h')
-rw-r--r--Source/charon/sa/ike_sa_id.h83
1 files changed, 44 insertions, 39 deletions
diff --git a/Source/charon/sa/ike_sa_id.h b/Source/charon/sa/ike_sa_id.h
index 0df752496..a39beadc0 100644
--- a/Source/charon/sa/ike_sa_id.h
+++ b/Source/charon/sa/ike_sa_id.h
@@ -21,121 +21,126 @@
*/
-#ifndef IKE_SA_ID_H_
-#define IKE_SA_ID_H_
+#ifndef _IKE_SA_ID_H_
+#define _IKE_SA_ID_H_
+
+#include <types.h>
-#include "types.h"
typedef struct ike_sa_id_t ike_sa_id_t;
/**
- * @brief This class is used to identify an IKE_SA.
+ * @brief An object of type ike_sa_id_t is used to identify an IKE_SA.
*
* An IKE_SA is identified by its initiator and responder spi's.
* Additionaly it contains the role of the actual running IKEv2-Daemon
- * for the specific IKE_SA.
+ * for the specific IKE_SA (original initiator or responder).
+ *
+ * @b Constructors:
+ * - ike_sa_id_create()
*
* @ingroup sa
*/
struct ike_sa_id_t {
/**
- * @brief Sets the SPI of the responder.
+ * @brief Set the SPI of the responder.
*
* This function is called when a request or reply of a IKE_SA_INIT is received.
*
- * @param this ike_sa_id_t object
+ * @param this calling object
* @param responder_spi SPI of responder to set
*/
void (*set_responder_spi) (ike_sa_id_t *this, u_int64_t responder_spi);
/**
- * @brief Sets the SPI of the initiator.
- *
+ * @brief Set the SPI of the initiator.
*
- * @param this ike_sa_id_t object
+ * @param this calling object
* @param initiator_spi SPI to set
*/
void (*set_initiator_spi) (ike_sa_id_t *this, u_int64_t initiator_spi);
/**
- * @brief Returns the initiator spi.
+ * @brief Get the initiator SPI.
*
- * @param this ike_sa_id_t object
- * @return spi of the initiator
+ * @param this calling object
+ * @return SPI of the initiator
*/
u_int64_t (*get_initiator_spi) (ike_sa_id_t *this);
/**
- * @brief Returns the responder spi.
+ * @brief Get the responder SPI.
*
- * @param this ike_sa_id_t object
- * @return spi of the responder
+ * @param this calling object
+ * @return SPI of the responder
*/
u_int64_t (*get_responder_spi) (ike_sa_id_t *this);
/**
- * @brief Check if two ike_sa_ids are equal.
+ * @brief Check if two ike_sa_id_t objects are equal.
+ *
+ * Two ike_sa_id_t objects are equal if both SPI values and the role matches.
*
- * @param this ike_sa_id_t object
- * @param other ike_sa_id object to check if equal
- * @return TRUE if given ike_sa_ids are equal, FALSE otherwise
+ * @param this calling object
+ * @param other ike_sa_id_t object to check if equal
+ * @return TRUE if given ike_sa_id_t are equal, FALSE otherwise
*/
bool (*equals) (ike_sa_id_t *this, ike_sa_id_t *other);
/**
- * @brief Replace the values of a given ike_sa_id_t object with values.
+ * @brief Replace all values of a given ike_sa_id_t object with values.
* from another ike_sa_id_t object.
+ *
+ * After calling this function, both objects are equal.
*
- * @param this ike_sa_id_t object
- * @param other ike_sa_id_t object which values will be taken
+ * @param this calling object
+ * @param other ike_sa_id_t object from which values will be taken
*/
void (*replace_values) (ike_sa_id_t *this, ike_sa_id_t *other);
/**
- * @brief gets the initiator flag.
+ * @brief Get the initiator flag.
*
- * @param this ike_sa_id_t object
+ * @param this calling object
* @return TRUE if we are the original initator
*/
bool (*is_initiator) (ike_sa_id_t *this);
/**
- * @brief switches the initiator flag.
+ * @brief Switche the original initiator flag.
*
- * @param this ike_sa_id_t object
- * @return TRUE if we are the original initator after switch
+ * @param this calling object
+ * @return TRUE if we are the original initator after switch, FALSE otherwise
*/
bool (*switch_initiator) (ike_sa_id_t *this);
/**
* @brief Clones a given ike_sa_id_t object.
*
- * @param this ike_sa_id_t object
- * @return cloned ike_sa_id
+ * @param this calling object
+ * @return cloned ike_sa_id_t object
*/
ike_sa_id_t *(*clone) (ike_sa_id_t *this);
/**
- * @brief Destroys a ike_sa_id_tobject.
+ * @brief Destroys an ike_sa_id_t object.
*
- * @param this ike_sa_id_t object
+ * @param this calling object
*/
void (*destroy) (ike_sa_id_t *this);
};
/**
- * @brief Creates an ike_sa_id_t object with specific spi's and defined role
+ * @brief Creates an ike_sa_id_t object with specific SPI's and defined role.
*
- * @warning The initiator SPI and role is not changeable after initiating a ike_sa_id object
- *
- * @param initiator_spi initiators spi
- * @param responder_spi responders spi
+ * @param initiator_spi initiators SPI
+ * @param responder_spi responders SPI
* @param is_initiator TRUE if we are the original initiator
- * @return created ike_sa_id_t object
+ * @return ike_sa_id_t object
*
* @ingroup sa
*/
ike_sa_id_t * ike_sa_id_create(u_int64_t initiator_spi, u_int64_t responder_spi, bool is_initiaor);
-#endif /*IKE_SA_ID_H_*/
+#endif /*_IKE_SA_ID_H_*/