[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r19944 - gnunet/src/namestore
From: |
gnunet |
Subject: |
[GNUnet-SVN] r19944 - gnunet/src/namestore |
Date: |
Wed, 22 Feb 2012 18:23:14 +0100 |
Author: wachs
Date: 2012-02-22 18:23:14 +0100 (Wed, 22 Feb 2012)
New Revision: 19944
Modified:
gnunet/src/namestore/gnunet-service-namestore.c
gnunet/src/namestore/test_namestore_api.c
Log:
- plugin (un)loading
Modified: gnunet/src/namestore/gnunet-service-namestore.c
===================================================================
--- gnunet/src/namestore/gnunet-service-namestore.c 2012-02-22 16:47:10 UTC
(rev 19943)
+++ gnunet/src/namestore/gnunet-service-namestore.c 2012-02-22 17:23:14 UTC
(rev 19944)
@@ -27,9 +27,18 @@
#include "gnunet_getopt_lib.h"
#include "gnunet_service_lib.h"
#include "gnunet_namestore_service.h"
+#include "gnunet_namestore_plugin.h"
#include "namestore.h"
+/**
+ * Configuration handle.
+ */
+const struct GNUNET_CONFIGURATION_Handle *GSN_cfg;
+static struct GNUNET_NAMESTORE_PluginFunctions *GSN_database;
+
+static char *db_lib_name;
+
/**
* Task run during shutdown.
*
@@ -39,13 +48,15 @@
static void
cleanup_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
- /* FIXME: do clean up here */
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Stopping namestore service\n");
+
+ GNUNET_break (NULL == GNUNET_PLUGIN_unload (db_lib_name, GSN_database));
+ GNUNET_free (db_lib_name);
}
static void handle_start ()
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Received `%s' message\n", "START");
-
}
@@ -60,15 +71,37 @@
run (void *cls, struct GNUNET_SERVER_Handle *server,
const struct GNUNET_CONFIGURATION_Handle *cfg)
{
+ char * database;
+
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Starting namestore service\n");
+
static const struct GNUNET_SERVER_MessageHandler handlers[] = {
{&handle_start, NULL,
GNUNET_MESSAGE_TYPE_NAMESTORE_START, sizeof (struct StartMessage)},
{NULL, NULL, 0, 0}
};
+ GSN_cfg = cfg;
+
+ /* Loading database plugin */
+ if (GNUNET_OK !=
+ GNUNET_CONFIGURATION_get_value_string (cfg, "namestore", "database",
+ &database))
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "No database backend configured\n");
+
+ GNUNET_asprintf (&db_lib_name, "libgnunet_plugin_namestore_%s", database);
+ GSN_database = GNUNET_PLUGIN_load (db_lib_name, (void *) GSN_cfg);
+ if (GSN_database == NULL)
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Could not load database backend
`%s'\n",
+ db_lib_name);
+ GNUNET_free (database);
+
+ /* Configuring server handles */
GNUNET_SERVER_add_handlers (server, handlers);
+
GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_FOREVER_REL, &cleanup_task,
NULL);
+
}
Modified: gnunet/src/namestore/test_namestore_api.c
===================================================================
--- gnunet/src/namestore/test_namestore_api.c 2012-02-22 16:47:10 UTC (rev
19943)
+++ gnunet/src/namestore/test_namestore_api.c 2012-02-22 17:23:14 UTC (rev
19944)
@@ -27,7 +27,7 @@
#define VERBOSE GNUNET_EXTRA_LOGGING
-#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10)
+#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 5)
static struct GNUNET_NAMESTORE_Handle * nsh;
@@ -107,8 +107,8 @@
GNUNET_break (NULL != nsh);
GNUNET_NAMESTORE_disconnect (nsh, GNUNET_YES);
- stop_arm ();
- end ();
+ //stop_arm ();
+ //end ();
res = 0;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r19944 - gnunet/src/namestore,
gnunet <=