[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r27862 - gnunet/src/transport
From: |
gnunet |
Subject: |
[GNUnet-SVN] r27862 - gnunet/src/transport |
Date: |
Wed, 10 Jul 2013 09:59:58 +0200 |
Author: wachs
Date: 2013-07-10 09:59:58 +0200 (Wed, 10 Jul 2013)
New Revision: 27862
Modified:
gnunet/src/transport/gnunet-service-transport_plugins.c
Log:
check implementation of api while loading plugn
Modified: gnunet/src/transport/gnunet-service-transport_plugins.c
===================================================================
--- gnunet/src/transport/gnunet-service-transport_plugins.c 2013-07-10
07:48:41 UTC (rev 27861)
+++ gnunet/src/transport/gnunet-service-transport_plugins.c 2013-07-10
07:59:58 UTC (rev 27862)
@@ -106,6 +106,7 @@
char *libname;
char *plugs;
char *pos;
+ int fail;
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_number (GST_cfg, "TRANSPORT",
@@ -160,6 +161,81 @@
GNUNET_free (plug->lib_name);
GNUNET_free (plug);
}
+ fail = GNUNET_NO;
+ if (NULL == plug->api->address_pretty_printer)
+ {
+ fail = GNUNET_YES;
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ _("Missing function `%s' in transport plugin for `%s'\n"),
+ "address_pretty_printer",
+ plug->lib_name);
+ }
+ if (NULL == plug->api->address_to_string)
+ {
+ fail = GNUNET_YES;
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ _("Missing function `%s' in transport plugin for `%s'\n"),
+ "address_to_string",
+ plug->lib_name);
+ }
+ if (NULL == plug->api->string_to_address)
+ {
+ fail = GNUNET_YES;
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ _("Missing function `%s' in transport plugin for `%s'\n"),
+ "string_to_address",
+ plug->lib_name);
+ }
+ if (NULL == plug->api->check_address)
+ {
+ fail = GNUNET_YES;
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ _("Missing function `%s' in transport plugin for `%s'\n"),
+ "check_address",
+ plug->lib_name);
+ }
+ if (NULL == plug->api->get_session)
+ {
+ fail = GNUNET_YES;
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ _("Missing function `%s' in transport plugin for `%s'\n"),
+ "get_session",
+ plug->lib_name);
+ }
+ if (NULL == plug->api->get_network)
+ {
+ fail = GNUNET_YES;
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ _("Missing function `%s' in transport plugin for `%s'\n"),
+ "get_network",
+ plug->lib_name);
+ }
+ if (NULL == plug->api->send)
+ {
+ fail = GNUNET_YES;
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ _("Missing function `%s' in transport plugin for `%s'\n"),
+ "send",
+ plug->lib_name);
+ }
+ if (NULL == plug->api->disconnect)
+ {
+ fail = GNUNET_YES;
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ _("Missing function `%s' in transport plugin for `%s'\n"),
+ "disconnect",
+ plug->lib_name);
+ }
+ if (GNUNET_YES == fail)
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ _("Did not load plugin `%s' due to missing functions\n"),
+ plug->lib_name);
+ GNUNET_CONTAINER_DLL_remove (plugins_head, plugins_tail, plug);
+ GNUNET_free (plug->short_name);
+ GNUNET_free (plug->lib_name);
+ GNUNET_free (plug);
+ }
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r27862 - gnunet/src/transport,
gnunet <=