aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2006-07-12 14:08:52 +0000
committerMartin Willi <martin@strongswan.org>2006-07-12 14:08:52 +0000
commitcb5c41cde987fafa330fa679e25fee904ac6fe1f (patch)
treed9f1d8c9fa4db0e9ff2ef4026052cde59c10607f /src
parent0d379627dec3c462133eab343272cb762987f8f0 (diff)
downloadstrongswan-cb5c41cde987fafa330fa679e25fee904ac6fe1f.tar.bz2
strongswan-cb5c41cde987fafa330fa679e25fee904ac6fe1f.tar.xz
updated some inline docs
Diffstat (limited to 'src')
-rw-r--r--src/charon/daemon.h6
-rw-r--r--src/charon/sa/ike_sa.h34
-rw-r--r--src/charon/sa/transactions/transaction.c2
-rw-r--r--src/charon/sa/transactions/transaction.h2
4 files changed, 40 insertions, 4 deletions
diff --git a/src/charon/daemon.h b/src/charon/daemon.h
index 42feb0394..4c2423a03 100644
--- a/src/charon/daemon.h
+++ b/src/charon/daemon.h
@@ -159,9 +159,11 @@
*/
/**
- * @defgroup states states
+ * @defgroup transactions transactions
*
- * Varius states in which an IKE SA can be.
+ * Transactions represent a request/response
+ * message exchange to implement the IKEv2
+ * protocol exchange scenarios.
*
* @ingroup sa
*/
diff --git a/src/charon/sa/ike_sa.h b/src/charon/sa/ike_sa.h
index 955ec8ff7..40a2728b3 100644
--- a/src/charon/sa/ike_sa.h
+++ b/src/charon/sa/ike_sa.h
@@ -46,7 +46,39 @@ typedef enum ike_sa_state_t ike_sa_state_t;
/**
* @brief State of an IKE_SA.
- *
+ *
+ * An IKE_SA passes various states in its lifetime. A newly created
+ * SA is in the state CREATED.
+ * @verbatim
+ +----------------+
+ ¦ SA_CREATED ¦
+ +----------------+
+ ¦
+ on initiate()---> ¦ <----- on IKE_SA_INIT received
+ ¦
+ +----------------+
+ ¦ SA_CONNECTING ¦
+ +----------------+
+ ¦
+ ¦ <----- on IKE_AUTH successfully completed
+ ¦
+ +----------------+
+ ¦ SA_ESTABLISHED ¦
+ +----------------+
+ ¦
+ on delete()---> ¦ <----- on IKE_SA delete request received
+ ¦
+ +----------------+
+ ¦ SA_DELETING ¦
+ +----------------+
+ ¦
+ ¦ <----- after delete() acknowledged
+ ¦
+ \¦/
+ X
+ / \
+ @endverbatim
+ *
* @ingroup sa
*/
enum ike_sa_state_t {
diff --git a/src/charon/sa/transactions/transaction.c b/src/charon/sa/transactions/transaction.c
index e03b0cc0f..37baaf962 100644
--- a/src/charon/sa/transactions/transaction.c
+++ b/src/charon/sa/transactions/transaction.c
@@ -100,6 +100,8 @@ transaction_t *transaction_create(ike_sa_t *ike_sa, message_t *request)
/* we do not handle rekeying of CHILD_SAs in a special
* transaction, as the procedure is nearly equal
* to create a new CHILD_SA. */
+ transaction = (transaction_t*)create_child_sa_create(ike_sa, message_id);
+ break;
default:
break;
}
diff --git a/src/charon/sa/transactions/transaction.h b/src/charon/sa/transactions/transaction.h
index 9bb600fe4..bf910ea78 100644
--- a/src/charon/sa/transactions/transaction.h
+++ b/src/charon/sa/transactions/transaction.h
@@ -47,7 +47,7 @@ typedef struct transaction_t transaction_t;
*
* The responder must not destroy the transaction, until the
* initiator initiates another transaction (or a number of transactions
- * > window size). This allows us to redo a transaction in case of a
+ * > window size). This allows us to redo a transaction in case of a
* message loss. The initiator can destroy the the transaction once
* the conclude() function is called.
*