diff options
author | Martin Willi <martin@strongswan.org> | 2006-10-30 14:07:05 +0000 |
---|---|---|
committer | Martin Willi <martin@strongswan.org> | 2006-10-30 14:07:05 +0000 |
commit | 382b481795d973a94efa1bf5635426566a941718 (patch) | |
tree | 901754b00d54493e9181cd096fd283b220411db3 /src/charon/encoding/payloads | |
parent | 09cb5472bc51d95e6e0fa9c5321ecb0956fcd6c0 (diff) | |
download | strongswan-382b481795d973a94efa1bf5635426566a941718.tar.bz2 strongswan-382b481795d973a94efa1bf5635426566a941718.tar.xz |
moved typedefs to beginning of files to solve some include problems
splitted authenticator to have a separate implementation for each auth_method_t
using va_copy to clone va_lists, should fix proplems on AMD64
some other cleanups
Diffstat (limited to 'src/charon/encoding/payloads')
24 files changed, 119 insertions, 146 deletions
diff --git a/src/charon/encoding/payloads/auth_payload.c b/src/charon/encoding/payloads/auth_payload.c index 55de405fb..5e3569750 100644 --- a/src/charon/encoding/payloads/auth_payload.c +++ b/src/charon/encoding/payloads/auth_payload.c @@ -70,7 +70,6 @@ struct private_auth_payload_t { * * The defined offsets are the positions in a object of type * private_auth_payload_t. - * */ encoding_rule_t auth_payload_encodings[] = { /* 1 Byte next payload type, stored in the field next_payload */ @@ -78,23 +77,23 @@ encoding_rule_t auth_payload_encodings[] = { /* the critical bit */ { FLAG, offsetof(private_auth_payload_t, critical) }, /* 7 Bit reserved bits, nowhere stored */ - { RESERVED_BIT, 0 }, - { RESERVED_BIT, 0 }, - { RESERVED_BIT, 0 }, - { RESERVED_BIT, 0 }, - { RESERVED_BIT, 0 }, - { RESERVED_BIT, 0 }, - { RESERVED_BIT, 0 }, + { RESERVED_BIT, 0 }, + { RESERVED_BIT, 0 }, + { RESERVED_BIT, 0 }, + { RESERVED_BIT, 0 }, + { RESERVED_BIT, 0 }, + { RESERVED_BIT, 0 }, + { RESERVED_BIT, 0 }, /* Length of the whole payload*/ { PAYLOAD_LENGTH, offsetof(private_auth_payload_t, payload_length)}, /* 1 Byte AUTH type*/ { U_INT_8, offsetof(private_auth_payload_t, auth_method) }, /* 3 reserved bytes */ - { RESERVED_BYTE, 0 }, - { RESERVED_BYTE, 0 }, - { RESERVED_BYTE, 0 }, + { RESERVED_BYTE, 0 }, + { RESERVED_BYTE, 0 }, + { RESERVED_BYTE, 0 }, /* some auth data bytes, length is defined in PAYLOAD_LENGTH */ - { AUTH_DATA, offsetof(private_auth_payload_t, auth_data) } + { AUTH_DATA, offsetof(private_auth_payload_t, auth_data) } }; /* @@ -116,8 +115,8 @@ encoding_rule_t auth_payload_encodings[] = { */ static status_t verify(private_auth_payload_t *this) { - if ((this->auth_method == 0) || - ((this->auth_method >= 4) && (this->auth_method <= 200))) + if (this->auth_method == 0 || + (this->auth_method >= 4 && this->auth_method <= 200)) { /* reserved IDs */ return FAILED; diff --git a/src/charon/encoding/payloads/auth_payload.h b/src/charon/encoding/payloads/auth_payload.h index 76fe53467..7616a6ed2 100644 --- a/src/charon/encoding/payloads/auth_payload.h +++ b/src/charon/encoding/payloads/auth_payload.h @@ -21,13 +21,14 @@ * for more details. */ - #ifndef AUTH_PAYLOAD_H_ #define AUTH_PAYLOAD_H_ +typedef struct auth_payload_t auth_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> -#include <config/policies/policy.h> +#include <sa/authenticators/authenticator.h> /** * Length of a auth payload without the auth data in bytes. @@ -36,17 +37,14 @@ */ #define AUTH_PAYLOAD_HEADER_LENGTH 8 - -typedef struct auth_payload_t auth_payload_t; - /** * @brief Class representing an IKEv2 AUTH payload. - * + * * The AUTH payload format is described in RFC section 3.8. - * + * * @b Constructors: * - auth_payload_create() - * + * * @ingroup payloads */ struct auth_payload_t { diff --git a/src/charon/encoding/payloads/cert_payload.h b/src/charon/encoding/payloads/cert_payload.h index aaf0b8566..c1ba0bdc0 100644 --- a/src/charon/encoding/payloads/cert_payload.h +++ b/src/charon/encoding/payloads/cert_payload.h @@ -24,6 +24,9 @@ #ifndef CERT_PAYLOAD_H_ #define CERT_PAYLOAD_H_ +typedef enum cert_encoding_t cert_encoding_t; +typedef struct cert_payload_t cert_payload_t; + #include <types.h> #include <crypto/x509.h> #include <encoding/payloads/payload.h> @@ -35,12 +38,9 @@ */ #define CERT_PAYLOAD_HEADER_LENGTH 5 - -typedef enum cert_encoding_t cert_encoding_t; - /** * @brief Certificate encoding, as described in IKEv2 RFC section 3.6 - * + * * @ingroup payloads */ enum cert_encoding_t { @@ -66,11 +66,9 @@ enum cert_encoding_t { */ extern enum_name_t *cert_encoding_names; -typedef struct cert_payload_t cert_payload_t; - /** * @brief Class representing an IKEv2 CERT payload. - * + * * The CERT payload format is described in RFC section 3.6. * This is just a dummy implementation to fullfill the standards * requirements. A full implementation would offer setters/getters @@ -78,9 +76,9 @@ typedef struct cert_payload_t cert_payload_t; * * @b Constructors: * - cert_payload_create() - * + * * @todo Implement setters/getters for the different certificate encodings. - * + * * @ingroup payloads */ struct cert_payload_t { diff --git a/src/charon/encoding/payloads/certreq_payload.h b/src/charon/encoding/payloads/certreq_payload.h index db3976aad..e00d673e7 100644 --- a/src/charon/encoding/payloads/certreq_payload.h +++ b/src/charon/encoding/payloads/certreq_payload.h @@ -24,6 +24,8 @@ #ifndef CERTREQ_PAYLOAD_H_ #define CERTREQ_PAYLOAD_H_ +typedef struct certreq_payload_t certreq_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> #include <encoding/payloads/cert_payload.h> @@ -36,21 +38,19 @@ #define CERTREQ_PAYLOAD_HEADER_LENGTH 5 -typedef struct certreq_payload_t certreq_payload_t; - /** * @brief Class representing an IKEv2 CERTREQ payload. - * + * * The CERTREQ payload format is described in RFC section 3.7. * This is just a dummy implementation to fullfill the standards * requirements. A full implementation would offer setters/getters * for the different encoding types. - * + * * @b Constructors: * - certreq_payload_create() - * + * * @todo Implement payload functionality. - * + * * @ingroup payloads */ struct certreq_payload_t { diff --git a/src/charon/encoding/payloads/configuration_attribute.h b/src/charon/encoding/payloads/configuration_attribute.h index 5cd7b2263..51abab61e 100644 --- a/src/charon/encoding/payloads/configuration_attribute.h +++ b/src/charon/encoding/payloads/configuration_attribute.h @@ -24,11 +24,13 @@ #ifndef CONFIGURATION_ATTRIBUTE_H_ #define CONFIGURATION_ATTRIBUTE_H_ +typedef enum configuration_attribute_type_t configuration_attribute_type_t; +typedef struct configuration_attribute_t configuration_attribute_t; + #include <types.h> #include <encoding/payloads/payload.h> - /** * Configuration attribute header length in bytes. * @@ -36,9 +38,6 @@ */ #define CONFIGURATION_ATTRIBUTE_HEADER_LENGTH 4 - -typedef enum configuration_attribute_type_t configuration_attribute_type_t; - /** * Type of the attribute, as in IKEv2 RFC 3.15.1. * @@ -68,8 +67,6 @@ enum configuration_attribute_type_t { */ extern enum_name_t *configuration_attribute_type_names; -typedef struct configuration_attribute_t configuration_attribute_t; - /** * @brief Class representing an IKEv2-CONFIGURATION Attribute. * diff --git a/src/charon/encoding/payloads/cp_payload.h b/src/charon/encoding/payloads/cp_payload.h index 3391881eb..1978b69cf 100644 --- a/src/charon/encoding/payloads/cp_payload.h +++ b/src/charon/encoding/payloads/cp_payload.h @@ -24,6 +24,9 @@ #ifndef CP_PAYLOAD_H_ #define CP_PAYLOAD_H_ +typedef enum config_type_t config_type_t; +typedef struct cp_payload_t cp_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> #include <encoding/payloads/configuration_attribute.h> @@ -36,12 +39,9 @@ */ #define CP_PAYLOAD_HEADER_LENGTH 8 - -typedef enum config_type_t config_type_t; - /** * Config Type of an Configuration Payload. - * + * * @ingroup payloads */ enum config_type_t { @@ -58,9 +58,6 @@ enum config_type_t { */ extern enum_name_t *config_type_names; - -typedef struct cp_payload_t cp_payload_t; - /** * @brief Class representing an IKEv2-CP Payload. * diff --git a/src/charon/encoding/payloads/delete_payload.h b/src/charon/encoding/payloads/delete_payload.h index 4a5af2668..3484f0235 100644 --- a/src/charon/encoding/payloads/delete_payload.h +++ b/src/charon/encoding/payloads/delete_payload.h @@ -24,31 +24,29 @@ #ifndef DELETE_PAYLOAD_H_ #define DELETE_PAYLOAD_H_ +typedef struct delete_payload_t delete_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> #include <encoding/payloads/proposal_substructure.h> /** * Length of a delete payload without the SPI in bytes. - * + * * @ingroup payloads */ #define DELETE_PAYLOAD_HEADER_LENGTH 8 - - -typedef struct delete_payload_t delete_payload_t; - /** * @brief Class representing an IKEv2 DELETE payload. - * + * * The DELETE payload format is described in RFC section 3.11. - * + * * @b Constructors: * - delete_payload_create() - * + * * @todo Implement better setter/getters - * + * * @ingroup payloads */ struct delete_payload_t { diff --git a/src/charon/encoding/payloads/eap_payload.h b/src/charon/encoding/payloads/eap_payload.h index 6b9322789..17af03d40 100644 --- a/src/charon/encoding/payloads/eap_payload.h +++ b/src/charon/encoding/payloads/eap_payload.h @@ -24,6 +24,8 @@ #ifndef EAP_PAYLOAD_H_ #define EAP_PAYLOAD_H_ +typedef struct eap_payload_t eap_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> @@ -34,19 +36,16 @@ */ #define EAP_PAYLOAD_HEADER_LENGTH 4 - -typedef struct eap_payload_t eap_payload_t; - /** * @brief Class representing an IKEv2 EAP payload. - * + * * The EAP payload format is described in RFC section 3.16. * * @b Constructors: * - eap_payload_create() - * + * * @todo Implement functionality for this payload - * + * * @ingroup payloads */ struct eap_payload_t { diff --git a/src/charon/encoding/payloads/encodings.h b/src/charon/encoding/payloads/encodings.h index 24dc16fa7..d69de4f1d 100644 --- a/src/charon/encoding/payloads/encodings.h +++ b/src/charon/encoding/payloads/encodings.h @@ -24,11 +24,12 @@ #ifndef ENCODINGS_H_ #define ENCODINGS_H_ -#include <types.h> -#include <definitions.h> +typedef enum encoding_type_t encoding_type_t; +typedef struct encoding_rule_t encoding_rule_t; -typedef enum encoding_type_t encoding_type_t; +#include <types.h> +#include <definitions.h> /** * @brief All different kinds of encoding types. @@ -36,12 +37,12 @@ typedef enum encoding_type_t encoding_type_t; * Each field of an IKEv2-Message (in header or payload) * which has to be parsed or generated differently has its own * type defined here. - * + * * Header is parsed like a payload and gets its one payload_id * from PRIVATE USE space. Also the substructures * of specific payload types get their own payload_id * from PRIVATE_USE space. See IKEv2-Draft for more informations. - * + * * @ingroup payloads */ enum encoding_type_t { @@ -505,9 +506,6 @@ enum encoding_type_t { */ extern enum_name_t *encoding_type_names; - -typedef struct encoding_rule_t encoding_rule_t; - /** * An encoding rule is a mapping of a specific encoding type to * a location in the data struct where the current field is stored to diff --git a/src/charon/encoding/payloads/encryption_payload.h b/src/charon/encoding/payloads/encryption_payload.h index 116d6f209..c0b476b73 100644 --- a/src/charon/encoding/payloads/encryption_payload.h +++ b/src/charon/encoding/payloads/encryption_payload.h @@ -23,6 +23,8 @@ #ifndef ENCRYPTION_PAYLOAD_H_ #define ENCRYPTION_PAYLOAD_H_ +typedef struct encryption_payload_t encryption_payload_t; + #include <types.h> #include <crypto/crypters/crypter.h> #include <crypto/signers/signer.h> @@ -37,11 +39,9 @@ #define ENCRYPTION_PAYLOAD_HEADER_LENGTH 4 -typedef struct encryption_payload_t encryption_payload_t; - -/** +/** * @brief The encryption payload as described in RFC section 3.14. - * + * * Before any crypt/decrypt/sign/verify operation can occur, * the transforms must be set. After that, a parsed encryption payload * can be decrypted, which also will parse the contained payloads. @@ -51,10 +51,10 @@ typedef struct encryption_payload_t encryption_payload_t; * must be builded after generation of all payloads and the encryption * of the encryption payload. * Signature verificatin is done before decryption. - * + * * @b Constructors: * - encryption_payload_create() - * + * * @ingroup payloads */ struct encryption_payload_t { diff --git a/src/charon/encoding/payloads/id_payload.h b/src/charon/encoding/payloads/id_payload.h index 1840c1a4c..01c6a4e1d 100644 --- a/src/charon/encoding/payloads/id_payload.h +++ b/src/charon/encoding/payloads/id_payload.h @@ -25,6 +25,8 @@ #ifndef ID_PAYLOAD_H_ #define ID_PAYLOAD_H_ +typedef struct id_payload_t id_payload_t; + #include <types.h> #include <utils/identification.h> #include <encoding/payloads/payload.h> @@ -36,18 +38,15 @@ */ #define ID_PAYLOAD_HEADER_LENGTH 8 - -typedef struct id_payload_t id_payload_t; - /** * Object representing an IKEv2 ID payload. - * + * * The ID payload format is described in RFC section 3.5. - * + * * @b Constructors: * - id_payload_create_from_identification() * - id_payload_create() - * + * * @ingroup payloads */ struct id_payload_t { diff --git a/src/charon/encoding/payloads/ike_header.h b/src/charon/encoding/payloads/ike_header.h index 7bb380d43..4cf253f80 100644 --- a/src/charon/encoding/payloads/ike_header.h +++ b/src/charon/encoding/payloads/ike_header.h @@ -24,6 +24,9 @@ #ifndef IKE_HEADER_H_ #define IKE_HEADER_H_ +typedef enum exchange_type_t exchange_type_t; +typedef struct ike_header_t ike_header_t; + #include <types.h> #include <encoding/payloads/payload.h> @@ -55,8 +58,6 @@ */ #define IKE_HEADER_LENGTH 28 -typedef enum exchange_type_t exchange_type_t; - /** * @brief Different types of IKE-Exchanges. * @@ -99,9 +100,6 @@ enum exchange_type_t{ */ extern enum_name_t *exchange_type_names; - -typedef struct ike_header_t ike_header_t; - /** * @brief An object of this type represents an IKEv2 header and is used to * generate and parse IKEv2 headers. diff --git a/src/charon/encoding/payloads/ke_payload.h b/src/charon/encoding/payloads/ke_payload.h index 3af3cce47..18f9dece7 100644 --- a/src/charon/encoding/payloads/ke_payload.h +++ b/src/charon/encoding/payloads/ke_payload.h @@ -24,6 +24,8 @@ #ifndef KE_PAYLOAD_H_ #define KE_PAYLOAD_H_ +typedef struct ke_payload_t ke_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> #include <encoding/payloads/transform_substructure.h> @@ -37,17 +39,14 @@ */ #define KE_PAYLOAD_HEADER_LENGTH 8 - -typedef struct ke_payload_t ke_payload_t; - /** * @brief Class representing an IKEv2-KE Payload. - * + * * The KE Payload format is described in RFC section 3.4. - * + * * @b Constructors: * - ke_payload_create() - * + * * @ingroup payloads */ struct ke_payload_t { diff --git a/src/charon/encoding/payloads/nonce_payload.h b/src/charon/encoding/payloads/nonce_payload.h index db3eec3a0..444110a99 100644 --- a/src/charon/encoding/payloads/nonce_payload.h +++ b/src/charon/encoding/payloads/nonce_payload.h @@ -24,6 +24,8 @@ #ifndef NONCE_PAYLOAD_H_ #define NONCE_PAYLOAD_H_ +typedef struct nonce_payload_t nonce_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> @@ -43,8 +45,6 @@ */ #define NONCE_PAYLOAD_HEADER_LENGTH 4 -typedef struct nonce_payload_t nonce_payload_t; - /** * Object representing an IKEv2 Nonce payload. * diff --git a/src/charon/encoding/payloads/notify_payload.h b/src/charon/encoding/payloads/notify_payload.h index ec6536cdf..df956334b 100644 --- a/src/charon/encoding/payloads/notify_payload.h +++ b/src/charon/encoding/payloads/notify_payload.h @@ -26,6 +26,9 @@ #ifndef NOTIFY_PAYLOAD_H_ #define NOTIFY_PAYLOAD_H_ +typedef enum notify_type_t notify_type_t; +typedef struct notify_payload_t notify_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> #include <encoding/payloads/proposal_substructure.h> @@ -38,14 +41,11 @@ */ #define NOTIFY_PAYLOAD_HEADER_LENGTH 8 -typedef enum notify_type_t notify_type_t; - - -/** +/** * @brief Notify message types. - * + * * See IKEv2 RFC 3.10.1. - * + * * @ingroup payloads */ enum notify_type_t { @@ -98,8 +98,6 @@ enum notify_type_t { extern enum_name_t *notify_type_names; -typedef struct notify_payload_t notify_payload_t; - /** * @brief Class representing an IKEv2-Notify Payload. * diff --git a/src/charon/encoding/payloads/payload.h b/src/charon/encoding/payloads/payload.h index 30f2cbfda..dfc30542f 100644 --- a/src/charon/encoding/payloads/payload.h +++ b/src/charon/encoding/payloads/payload.h @@ -24,19 +24,20 @@ #ifndef PAYLOAD_H_ #define PAYLOAD_H_ +typedef enum payload_type_t payload_type_t; +typedef struct payload_t payload_t; + #include <types.h> #include <definitions.h> #include <encoding/payloads/encodings.h> -typedef enum payload_type_t payload_type_t; - /** * @brief Payload-Types of a IKEv2-Message. - * + * * Header and substructures are also defined as * payload types with values from PRIVATE USE space. - * + * * @ingroup payloads */ enum payload_type_t{ @@ -194,9 +195,6 @@ extern enum_name_t *payload_type_names; */ extern enum_name_t *payload_type_short_names; - -typedef struct payload_t payload_t; - /** * @brief Generic interface for all payload types (incl.header and substructures). * diff --git a/src/charon/encoding/payloads/proposal_substructure.h b/src/charon/encoding/payloads/proposal_substructure.h index b9bd0a8b3..f1ce5bc47 100644 --- a/src/charon/encoding/payloads/proposal_substructure.h +++ b/src/charon/encoding/payloads/proposal_substructure.h @@ -24,6 +24,8 @@ #ifndef PROPOSAL_SUBSTRUCTURE_H_ #define PROPOSAL_SUBSTRUCTURE_H_ +typedef struct proposal_substructure_t proposal_substructure_t; + #include <types.h> #include <encoding/payloads/payload.h> #include <encoding/payloads/transform_substructure.h> @@ -38,9 +40,6 @@ */ #define PROPOSAL_SUBSTRUCTURE_HEADER_LENGTH 8 - -typedef struct proposal_substructure_t proposal_substructure_t; - /** * @brief Class representing an IKEv2-PROPOSAL SUBSTRUCTURE. * diff --git a/src/charon/encoding/payloads/sa_payload.h b/src/charon/encoding/payloads/sa_payload.h index ce85dbe85..90ded9a0f 100644 --- a/src/charon/encoding/payloads/sa_payload.h +++ b/src/charon/encoding/payloads/sa_payload.h @@ -24,6 +24,8 @@ #ifndef SA_PAYLOAD_H_ #define SA_PAYLOAD_H_ +typedef struct sa_payload_t sa_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> #include <encoding/payloads/proposal_substructure.h> @@ -36,20 +38,18 @@ */ #define SA_PAYLOAD_HEADER_LENGTH 4 -typedef struct sa_payload_t sa_payload_t; - /** * @brief Class representing an IKEv2-SA Payload. - * + * * The SA Payload format is described in RFC section 3.3. - * + * * @b Constructors: * - sa_payload_create() * - sa_payload_create_from_ike_proposals() * - sa_payload_create_from_proposal() - * + * * @todo Add support of algorithms without specified keylength in get_proposals and get_ike_proposals. - * + * * @ingroup payloads */ struct sa_payload_t { diff --git a/src/charon/encoding/payloads/traffic_selector_substructure.h b/src/charon/encoding/payloads/traffic_selector_substructure.h index 5c19c6cb0..5fc7dced6 100644 --- a/src/charon/encoding/payloads/traffic_selector_substructure.h +++ b/src/charon/encoding/payloads/traffic_selector_substructure.h @@ -25,6 +25,8 @@ #ifndef TRAFFIC_SELECTOR_SUBSTRUCTURE_H_ #define TRAFFIC_SELECTOR_SUBSTRUCTURE_H_ +typedef struct traffic_selector_substructure_t traffic_selector_substructure_t; + #include <types.h> #include <encoding/payloads/payload.h> #include <utils/host.h> @@ -37,8 +39,6 @@ */ #define TRAFFIC_SELECTOR_HEADER_LENGTH 8 -typedef struct traffic_selector_substructure_t traffic_selector_substructure_t; - /** * @brief Class representing an IKEv2 TRAFFIC SELECTOR. * diff --git a/src/charon/encoding/payloads/transform_attribute.h b/src/charon/encoding/payloads/transform_attribute.h index ffc06503c..1588b8f57 100644 --- a/src/charon/encoding/payloads/transform_attribute.h +++ b/src/charon/encoding/payloads/transform_attribute.h @@ -24,12 +24,13 @@ #ifndef TRANSFORM_ATTRIBUTE_H_ #define TRANSFORM_ATTRIBUTE_H_ +typedef enum transform_attribute_type_t transform_attribute_type_t; +typedef struct transform_attribute_t transform_attribute_t; + #include <types.h> #include <encoding/payloads/payload.h> -typedef enum transform_attribute_type_t transform_attribute_type_t; - /** * Type of the attribute, as in IKEv2 RFC 3.3.5. * @@ -47,8 +48,6 @@ enum transform_attribute_type_t { */ extern enum_name_t *transform_attribute_type_names; -typedef struct transform_attribute_t transform_attribute_t; - /** * @brief Class representing an IKEv2- TRANSFORM Attribute. * diff --git a/src/charon/encoding/payloads/transform_substructure.h b/src/charon/encoding/payloads/transform_substructure.h index 2811fb960..ee297f826 100644 --- a/src/charon/encoding/payloads/transform_substructure.h +++ b/src/charon/encoding/payloads/transform_substructure.h @@ -24,6 +24,8 @@ #ifndef TRANSFORM_SUBSTRUCTURE_H_ #define TRANSFORM_SUBSTRUCTURE_H_ +typedef struct transform_substructure_t transform_substructure_t; + #include <types.h> #include <definitions.h> #include <encoding/payloads/payload.h> @@ -51,8 +53,6 @@ #define TRANSFORM_SUBSTRUCTURE_HEADER_LENGTH 8 -typedef struct transform_substructure_t transform_substructure_t; - /** * @brief Class representing an IKEv2- TRANSFORM SUBSTRUCTURE. * diff --git a/src/charon/encoding/payloads/ts_payload.h b/src/charon/encoding/payloads/ts_payload.h index a8c5a38a3..a5595c98a 100644 --- a/src/charon/encoding/payloads/ts_payload.h +++ b/src/charon/encoding/payloads/ts_payload.h @@ -25,6 +25,8 @@ #ifndef TS_PAYLOAD_H_ #define TS_PAYLOAD_H_ +typedef struct ts_payload_t ts_payload_t; + #include <types.h> #include <utils/linked_list.h> #include <config/traffic_selector.h> @@ -39,17 +41,15 @@ #define TS_PAYLOAD_HEADER_LENGTH 8 -typedef struct ts_payload_t ts_payload_t; - /** * @brief Class representing an IKEv2 TS payload. - * + * * The TS payload format is described in RFC section 3.13. - * + * * @b Constructors: * - ts_payload_create() * - ts_payload_create_from_traffic_selectors() - * + * * @ingroup payloads */ struct ts_payload_t { diff --git a/src/charon/encoding/payloads/unknown_payload.h b/src/charon/encoding/payloads/unknown_payload.h index 5279773c5..23cf421a6 100644 --- a/src/charon/encoding/payloads/unknown_payload.h +++ b/src/charon/encoding/payloads/unknown_payload.h @@ -24,6 +24,8 @@ #ifndef UNKNOWN_PAYLOAD_H_ #define UNKNOWN_PAYLOAD_H_ +typedef struct unknown_payload_t unknown_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> @@ -34,19 +36,16 @@ */ #define UNKNOWN_PAYLOAD_HEADER_LENGTH 4 - -typedef struct unknown_payload_t unknown_payload_t; - /** * @brief Payload which can't be processed further. - * + * * When the parser finds an unknown payload, he builds an instance of * this class. This allows further processing of this payload, such as * a check for the critical bit in the header. - * + * * @b Constructors: * - unknown_payload_create() - * + * * @ingroup payloads */ struct unknown_payload_t { diff --git a/src/charon/encoding/payloads/vendor_id_payload.h b/src/charon/encoding/payloads/vendor_id_payload.h index 415313c90..8972eaa03 100644 --- a/src/charon/encoding/payloads/vendor_id_payload.h +++ b/src/charon/encoding/payloads/vendor_id_payload.h @@ -24,6 +24,8 @@ #ifndef VENDOR_ID_PAYLOAD_H_ #define VENDOR_ID_PAYLOAD_H_ +typedef struct vendor_id_payload_t vendor_id_payload_t; + #include <types.h> #include <encoding/payloads/payload.h> @@ -35,16 +37,14 @@ #define VENDOR_ID_PAYLOAD_HEADER_LENGTH 4 -typedef struct vendor_id_payload_t vendor_id_payload_t; - /** * @brief Class representing an IKEv2 VENDOR ID payload. - * + * * The VENDOR ID payload format is described in RFC section 3.12. - * + * * @b Constructors: * - vendor_id_payload_create() - * + * * @ingroup payloads */ struct vendor_id_payload_t { |