aboutsummaryrefslogtreecommitdiffstats
path: root/Source/charon/generator.h
diff options
context:
space:
mode:
authorJan Hutter <jhutter@hsr.ch>2005-11-14 08:12:59 +0000
committerJan Hutter <jhutter@hsr.ch>2005-11-14 08:12:59 +0000
commit1e8bb886d161d0508b089892c318bc7bca63ff8c (patch)
treec4cffdb22c09df220bc17147a7f6542cd20e4a99 /Source/charon/generator.h
parentcc0fbc3c243808d89ded59c7feabae67af837541 (diff)
downloadstrongswan-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.h49
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();