[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r31513 - gnunet/src/transport
From: |
gnunet |
Subject: |
[GNUnet-SVN] r31513 - gnunet/src/transport |
Date: |
Wed, 18 Dec 2013 11:08:50 +0100 |
Author: grothoff
Date: 2013-12-18 11:08:50 +0100 (Wed, 18 Dec 2013)
New Revision: 31513
Modified:
gnunet/src/transport/gnunet-service-transport_plugins.c
Log:
-properly unload incomplete plugins
Modified: gnunet/src/transport/gnunet-service-transport_plugins.c
===================================================================
--- gnunet/src/transport/gnunet-service-transport_plugins.c 2013-12-18
10:02:15 UTC (rev 31512)
+++ gnunet/src/transport/gnunet-service-transport_plugins.c 2013-12-18
10:08:50 UTC (rev 31513)
@@ -120,14 +120,16 @@
GNUNET_CONFIGURATION_get_value_string (GST_cfg, "TRANSPORT", "PLUGINS",
&plugs))
return;
- GNUNET_log (GNUNET_ERROR_TYPE_INFO, _("Starting transport plugins `%s'\n"),
+ GNUNET_log (GNUNET_ERROR_TYPE_INFO,
+ _("Starting transport plugins `%s'\n"),
plugs);
for (pos = strtok (plugs, " "); pos != NULL; pos = strtok (NULL, " "))
{
- GNUNET_log (GNUNET_ERROR_TYPE_INFO, _("Loading `%s' transport plugin\n"),
+ GNUNET_log (GNUNET_ERROR_TYPE_INFO,
+ _("Loading `%s' transport plugin\n"),
pos);
GNUNET_asprintf (&libname, "libgnunet_plugin_transport_%s", pos);
- plug = GNUNET_malloc (sizeof (struct TransportPlugin));
+ plug = GNUNET_new (struct TransportPlugin);
plug->short_name = GNUNET_strdup (pos);
plug->lib_name = libname;
plug->env.cfg = GST_cfg;
@@ -151,7 +153,7 @@
plug = next;
next = plug->next;
plug->api = GNUNET_PLUGIN_load (plug->lib_name, &plug->env);
- if (plug->api == NULL)
+ if (NULL == plug->api)
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
_("Failed to load transport plugin for `%s'\n"),
@@ -237,7 +239,7 @@
}
if (NULL == plug->api->query_keepalive_factor)
{
- fail = GNUNET_YES;
+ fail = GNUNET_YES;
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
_("Missing function `%s' in transport plugin for `%s'\n"),
"query_keepalive_factor",
@@ -248,6 +250,7 @@
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
_("Did not load plugin `%s' due to missing functions\n"),
plug->lib_name);
+ GNUNET_break (NULL == GNUNET_PLUGIN_unload (plug->lib_name, plug->api));
GNUNET_CONTAINER_DLL_remove (plugins_head, plugins_tail, plug);
GNUNET_free (plug->short_name);
GNUNET_free (plug->lib_name);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r31513 - gnunet/src/transport,
gnunet <=