2 * @file proposal_substructure.h
4 * @brief Declaration of the class proposal_substructure_t.
6 * An object of this type represents an IKEv2 PROPOSAL Substructure and contains transforms.
11 * Copyright (C) 2005 Jan Hutter, Martin Willi
12 * Hochschule fuer Technik Rapperswil
14 * This program is free software; you can redistribute it and/or modify it
15 * under the terms of the GNU General Public License as published by the
16 * Free Software Foundation; either version 2 of the License, or (at your
17 * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
19 * This program is distributed in the hope that it will be useful, but
20 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
21 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
25 #ifndef PROPOSAL_SUBSTRUCTURE_H_
26 #define PROPOSAL_SUBSTRUCTURE_H_
33 * Object representing an IKEv2- PROPOSAL SUBSTRUCTURE
35 * The PROPOSAL SUBSTRUCTURE format is described in RFC section 3.3.1.
38 typedef struct proposal_substructure_s proposal_substructure_t
;
40 struct proposal_substructure_s
{
42 * implements payload_t interface
44 payload_t payload_interface
;
47 * @brief Destroys an proposal_substructure_t object.
49 * @param this proposal_substructure_t object to destroy
53 status_t (*destroy
) (proposal_substructure_t
*this);
57 * @brief Creates an empty proposal_substructure_t object
60 * - created proposal_substructure_t object, or
64 proposal_substructure_t
*proposal_substructure_create();
68 #endif /*PROPOSAL_SUBSTRUCTURE_H_*/