diff options
Diffstat (limited to 'Source/charon/encoding/generator.h')
-rw-r--r-- | Source/charon/encoding/generator.h | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/Source/charon/encoding/generator.h b/Source/charon/encoding/generator.h deleted file mode 100644 index 717d32b73..000000000 --- a/Source/charon/encoding/generator.h +++ /dev/null @@ -1,101 +0,0 @@ -/** - * @file generator.h - * - * @brief Interface of generator_t. - * - */ - -/* - * Copyright (C) 2005 Jan Hutter, Martin Willi - * Hochschule fuer Technik Rapperswil - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2 of the License, or (at your - * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>. - * - * This program is distributed in the hope that it will be useful, but - * 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. - */ - -#ifndef GENERATOR_H_ -#define GENERATOR_H_ - -#include <types.h> -#include <encoding/payloads/encodings.h> -#include <encoding/payloads/payload.h> - -/** - * 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 - - -typedef struct generator_t generator_t; - -/** - * @brief 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, - * the write_to_chunk method writes out all generated data since - * the creation of the generator. After that, the generator must be destroyed. - * 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. - * - * Remember: Header and substructures are also handled as payloads. - * - * @param this generator_t object - * @param[in] 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. - * - * @param this generator_t object - * @param[out] 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 - */ - void (*destroy) (generator_t *this); -}; - -/** - * @brief Constructor to create a generator. - * - * @return generator_t object. - * - * @ingroup encoding - */ -generator_t *generator_create(); - -#endif /*GENERATOR_H_*/ |