aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Hutter <jhutter@hsr.ch>2005-11-08 09:47:27 +0000
committerJan Hutter <jhutter@hsr.ch>2005-11-08 09:47:27 +0000
commit9d7319ecdf6b465b4ba996e52d5bbbe383d0575b (patch)
tree3764bee9292f4714de9422c7c4e266d039fa76b1
parentca6dd4f659df3f8c528b0d56e90cff219da663ba (diff)
downloadstrongswan-9d7319ecdf6b465b4ba996e52d5bbbe383d0575b.tar.bz2
strongswan-9d7319ecdf6b465b4ba996e52d5bbbe383d0575b.tar.xz
- implemented create and destroy function
-rw-r--r--Source/charon/configuration.c54
-rw-r--r--Source/charon/configuration.h26
2 files changed, 80 insertions, 0 deletions
diff --git a/Source/charon/configuration.c b/Source/charon/configuration.c
index 2cfab1467..32308105f 100644
--- a/Source/charon/configuration.c
+++ b/Source/charon/configuration.c
@@ -21,4 +21,58 @@
* for more details.
*/
+#include <stdlib.h>
+#include <freeswan.h>
+#include <pluto/constants.h>
+#include <pluto/defs.h>
+
+#include "types.h"
#include "configuration.h"
+
+/**
+ * Private data of an configuration_t object
+ */
+typedef struct private_configuration_s private_configuration_t;
+
+struct private_configuration_s {
+
+ /**
+ * Public part of a configuration_t object
+ */
+ configuration_t public;
+
+
+ /* Private values */
+
+};
+
+/**
+ * @brief implements function destroy of configuration_t
+ */
+static status_t destroy (private_configuration_t *this)
+{
+ if (this == NULL)
+ {
+ return FAILED;
+ }
+ pfree(this);
+ return SUCCESS;
+}
+
+/*
+ * Described in Header-File
+ */
+configuration_t * configuration_create()
+{
+ private_configuration_t *this = alloc_thing(private_configuration_t, "private_configuration_t");
+ if (this == NULL)
+ {
+ return NULL;
+ }
+
+ /* Public functions */
+ this->public.destroy = (status_t(*)(configuration_t*))destroy;
+
+
+ return (&this->public);
+}
diff --git a/Source/charon/configuration.h b/Source/charon/configuration.h
index 6e2f9d8a9..f3b483302 100644
--- a/Source/charon/configuration.h
+++ b/Source/charon/configuration.h
@@ -24,4 +24,30 @@
#ifndef CONFIGURATION_H_
#define CONFIGURATION_H_
+#include "types.h"
+
+/**
+ * @brief This class is used to represent an IKE_SA-configuration.
+ *
+ */
+typedef struct configuration_s configuration_t;
+
+struct configuration_s {
+
+ /**
+ * @brief Destroys a configuration_t object
+ *
+ * @param this configuration_t object
+ * @return SUCCESSFUL if succeeded, FAILED otherwise
+ */
+ status_t (*destroy) (configuration_t *this);
+};
+
+/**
+ * Creates an configuration_t-object
+ *
+ * @return created configuration_t object
+ */
+configuration_t * configuration_create();
+
#endif /*CONFIGURATION_H_*/