aboutsummaryrefslogtreecommitdiffstats
path: root/Source/charon/config/sa_config.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/charon/config/sa_config.h')
-rw-r--r--Source/charon/config/sa_config.h46
1 files changed, 5 insertions, 41 deletions
diff --git a/Source/charon/config/sa_config.h b/Source/charon/config/sa_config.h
index 060d3fcae..412e7e611 100644
--- a/Source/charon/config/sa_config.h
+++ b/Source/charon/config/sa_config.h
@@ -31,6 +31,7 @@
#include <transforms/crypters/crypter.h>
#include <transforms/signers/signer.h>
#include <transforms/diffie_hellman.h>
+#include <config/traffic_selector.h>
typedef struct child_proposal_t child_proposal_t;
@@ -73,43 +74,6 @@ struct child_proposal_t {
};
-typedef struct traffic_selector_t traffic_selector_t;
-
-/**
- * @brief Storage structure for a traffic selection.
- *
- * Specifies a protocol and a valid IP and port range.
- *
- * @ingroup config
- */
-struct traffic_selector_t {
- /**
- * Protocol for which this ts applies (TCP/UDP/ICMP)
- */
- u_int8_t protocol;
-
- union {
- struct {
-
-
- } ipv4;
- struct {
- /* ipv6 support */
- } ipv6;
-
- };
-
- /**
- * Start address and port for allowed range
- */
- host_t *begin;
- /**
- * End address and port for allowed range
- */
- host_t *end;
-};
-
-
typedef struct sa_config_t sa_config_t;
/**
@@ -130,7 +94,7 @@ struct sa_config_t {
* @param this calling object
* @return own id
*/
- identification_t (*get_my_id) (sa_config_t *this);
+ identification_t *(*get_my_id) (sa_config_t *this);
/**
* @brief Get id of communication partner..
@@ -138,7 +102,7 @@ struct sa_config_t {
* @param this calling object
* @return other id
*/
- identification_t (*get_other_id) (sa_config_t *this);
+ identification_t *(*get_other_id) (sa_config_t *this);
/**
* @brief Get authentication method to use for IKE_AUTH.
@@ -157,7 +121,7 @@ struct sa_config_t {
* @param[out]traffic_selectors pointer where traffic selectors will be allocated
* @return number of returned traffic selectors
*/
- size_t (*get_traffic_selectors) (sa_config_t *this, traffic_selector_t **traffic_selectors);
+ size_t (*get_traffic_selectors) (sa_config_t *this, traffic_selector_t ***traffic_selectors);
/**
* @brief Select traffic selectors from a supplied list.
@@ -170,7 +134,7 @@ struct sa_config_t {
* @param[out]traffic_selectors pointer where selected traffic selectors will be allocated
* @return number of selected traffic selectors
*/
- size_t (*select_traffic_selectors) (sa_config_t *this, traffic_selector_t *supplied, size_t count, traffic_selector_t **selected);
+ size_t (*select_traffic_selectors) (sa_config_t *this, traffic_selector_t **supplied, size_t count, traffic_selector_t ***selected);
/**
* @brief Get the list of proposals for this config.