diff options
author | Jan Hutter <jhutter@hsr.ch> | 2005-11-14 08:12:59 +0000 |
---|---|---|
committer | Jan Hutter <jhutter@hsr.ch> | 2005-11-14 08:12:59 +0000 |
commit | 1e8bb886d161d0508b089892c318bc7bca63ff8c (patch) | |
tree | c4cffdb22c09df220bc17147a7f6542cd20e4a99 /Source/charon/generator.h | |
parent | cc0fbc3c243808d89ded59c7feabae67af837541 (diff) | |
download | strongswan-1e8bb886d161d0508b089892c318bc7bca63ff8c.tar.bz2 strongswan-1e8bb886d161d0508b089892c318bc7bca63ff8c.tar.xz |
- removed generator context object and implemented payload-interface in generator
Diffstat (limited to 'Source/charon/generator.h')
-rw-r--r-- | Source/charon/generator.h | 49 |
1 files changed, 6 insertions, 43 deletions
diff --git a/Source/charon/generator.h b/Source/charon/generator.h index 517a56c11..a23a9573a 100644 --- a/Source/charon/generator.h +++ b/Source/charon/generator.h @@ -39,23 +39,6 @@ #define GENERATOR_DATA_BUFFER_INCREASE_VALUE 1000 /** - * Used for generator operations internaly to store a generator context. - */ -typedef struct generator_context_s generator_context_t; - -struct generator_context_s { - /** - * @brief Destroys a generator_infos_t object and its containing buffer - * - * @param generator_infos_t generator_infos_t object - * @return always SUCCESSFUL - */ - status_t (*destroy) (generator_context_t *this); -}; - - - -/** *A generator_t object which generates payloads of specific type. */ typedef struct generator_s generator_t; @@ -63,46 +46,29 @@ typedef struct generator_s generator_t; struct generator_s { /** - * Creates a generator_context_t object holding necessary informations - * for generating (buffer, data_struct, etc). - * - * After using, this context has to get destroyed! - * - * @param data_struct data struct where the specific payload informations are stored - * @return - * - pointer to created generator_infos_t object - * - NULL if memory allocation failed - */ - generator_context_t * (*create_context) (generator_t *this); - - /** - * @brief Generates a specific payload from given data struct. + * @brief Generates a specific payload from given payload object. * * Remember: Header and substructures are also handled as payloads. * - * @param this generator_t object - * @param payload_type payload type to generate using the given data struct - * @param[in] data_struct data struct where the needed data for generating are stored - * @param generator_context generator context to use when generating + * @param this generator_t object + * @param[in] payload interface payload_t implementing object * @return * - SUCCESSFUL if succeeded - * - NOT_SUPPORTED if payload_type is not supported * - OUT_OF_RES if out of ressources */ - status_t (*generate_payload) (generator_t *this,payload_type_t payload_type,void * data_struct,generator_context_t *generator_context); + status_t (*generate_payload) (generator_t *this,payload_t *payload); /** - * Writes all generated data of current context to a chunk + * Writes all generated data of current generator context to a chunk * * @param this generator_t object - * @param generator_context generator context to use when generating * * @param[out] data chunk to write the data to * @return * @return * - SUCCESSFUL if succeeded * - OUT_OF_RES otherwise */ - status_t (*write_to_chunk) (generator_t *this,generator_context_t *generator_context, chunk_t *data); + status_t (*write_to_chunk) (generator_t *this,chunk_t *data); /** * @brief Destroys a generator_t object. @@ -117,9 +83,6 @@ struct generator_s { /** * Constructor to create a generator * - * @param payload_infos pointer to the payload_info_t-array containing - * all the payload informations needed to - * automatic generate a specific payload */ generator_t * generator_create(); |