merged the modularization branch (credentials) back to trunk
This commit is contained in:
@@ -1,10 +1,3 @@
|
||||
/**
|
||||
* @file generator.h
|
||||
*
|
||||
* @brief Interface of generator_t.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (C) 2005-2006 Martin Willi
|
||||
* Copyright (C) 2005 Jan Hutter
|
||||
@@ -19,6 +12,13 @@
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* for more details.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
/**
|
||||
* @defgroup generator generator
|
||||
* @{ @ingroup encoding
|
||||
*/
|
||||
|
||||
#ifndef GENERATOR_H_
|
||||
@@ -33,21 +33,17 @@ typedef struct generator_t generator_t;
|
||||
/**
|
||||
* Generating is done in a data buffer.
|
||||
* This is thehe start size of this buffer in bytes.
|
||||
*
|
||||
* @ingroup enconding
|
||||
*/
|
||||
#define GENERATOR_DATA_BUFFER_SIZE 500
|
||||
|
||||
/**
|
||||
* Number of bytes to increase the buffer, if it is to small.
|
||||
*
|
||||
* @ingroup enconding
|
||||
*/
|
||||
#define GENERATOR_DATA_BUFFER_INCREASE_VALUE 500
|
||||
|
||||
|
||||
/**
|
||||
* @brief A generator_t class used to generate IKEv2 payloads.
|
||||
* A generator_t class used to generate IKEv2 payloads.
|
||||
*
|
||||
* After creation, multiple payloads can be generated with the generate_payload
|
||||
* method. The generated bytes are appended. After all payloads are added,
|
||||
@@ -56,47 +52,36 @@ typedef struct generator_t generator_t;
|
||||
* The generater uses a set of encoding rules, which it can get from
|
||||
* the supplied payload. With this rules, the generater can generate
|
||||
* the payload and all substructures automatically.
|
||||
*
|
||||
* @b Constructor:
|
||||
* - generator_create()
|
||||
*
|
||||
* @ingroup encoding
|
||||
*/
|
||||
struct generator_t {
|
||||
|
||||
/**
|
||||
* @brief Generates a specific payload from given payload object.
|
||||
* Generates a specific payload from given payload object.
|
||||
*
|
||||
* Remember: Header and substructures are also handled as payloads.
|
||||
*
|
||||
* @param this generator_t object
|
||||
* @param[in] payload interface payload_t implementing object
|
||||
* @param payload interface payload_t implementing object
|
||||
*/
|
||||
void (*generate_payload) (generator_t *this,payload_t *payload);
|
||||
|
||||
/**
|
||||
* @brief Writes all generated data of the generator to a chunk.
|
||||
* Writes all generated data of the generator to a chunk.
|
||||
*
|
||||
* @param this generator_t object
|
||||
* @param[out] data chunk to write the data to
|
||||
* @param data chunk to write the data to
|
||||
*/
|
||||
void (*write_to_chunk) (generator_t *this,chunk_t *data);
|
||||
|
||||
/**
|
||||
* @brief Destroys a generator_t object.
|
||||
*
|
||||
* @param this generator_t object
|
||||
* Destroys a generator_t object.
|
||||
*/
|
||||
void (*destroy) (generator_t *this);
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Constructor to create a generator.
|
||||
* Constructor to create a generator.
|
||||
*
|
||||
* @return generator_t object.
|
||||
*
|
||||
* @ingroup encoding
|
||||
*/
|
||||
generator_t *generator_create(void);
|
||||
|
||||
#endif /*GENERATOR_H_*/
|
||||
#endif /*GENERATOR_H_ @} */
|
||||
|
||||
Reference in New Issue
Block a user