summaryrefslogtreecommitdiff
path: root/src/transport/test_plugin_transport.c
diff options
context:
space:
mode:
authorMatthias Wachs <wachs@net.in.tum.de>2014-01-13 16:59:57 +0000
committerMatthias Wachs <wachs@net.in.tum.de>2014-01-13 16:59:57 +0000
commit1257490cb630ade315a196a724d0233e662afb2c (patch)
tree0d9c01593a1aa73d8f6490127b640d67da69b54c /src/transport/test_plugin_transport.c
parent35d79cb1941c9f9607195b8760d8a14d836e6397 (diff)
implementing 0003268 to inbound information in HELLO addresses
All transport plugin functions are modified to use HELLO addresses instead of peer,address,address_length All plugins are modified to use HELLO addresses internally This commit can break transport functionality: core tests on my system still pass, but transport tests may still fail, errors messages may occurs or crashs Will be fixed asap
Diffstat (limited to 'src/transport/test_plugin_transport.c')
-rw-r--r--src/transport/test_plugin_transport.c621
1 files changed, 286 insertions, 335 deletions
diff --git a/src/transport/test_plugin_transport.c b/src/transport/test_plugin_transport.c
index 6c81acb49..13920d6fe 100644
--- a/src/transport/test_plugin_transport.c
+++ b/src/transport/test_plugin_transport.c
@@ -1,22 +1,22 @@
/*
- This file is part of GNUnet.
- (C) 2009 Christian Grothoff (and other contributing authors)
-
- GNUnet is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation; either version 3, or (at your
- option) any later version.
-
- GNUnet is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with GNUnet; see the file COPYING. If not, write to the
- Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
-*/
+ This file is part of GNUnet.
+ (C) 2009 Christian Grothoff (and other contributing authors)
+
+ GNUnet is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published
+ by the Free Software Foundation; either version 3, or (at your
+ option) any later version.
+
+ GNUnet is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GNUnet; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+ */
/**
* @file transport/test_plugin_transport.c
* @brief testcase for transport_api.c
@@ -120,21 +120,17 @@ unsigned int pretty_printers_running;
*/
static int ok;
-
struct AddressWrapper
{
struct AddressWrapper *next;
struct AddressWrapper *prev;
- void *addr;
-
- size_t addrlen;
+ struct GNUNET_HELLO_Address *address;
char *addrstring;
};
-
static void
end ()
{
@@ -144,33 +140,32 @@ end ()
if (GNUNET_SCHEDULER_NO_TASK != timeout_endbadly)
{
- GNUNET_SCHEDULER_cancel (timeout_endbadly);
- timeout_endbadly = GNUNET_SCHEDULER_NO_TASK;
+ GNUNET_SCHEDULER_cancel (timeout_endbadly);
+ timeout_endbadly = GNUNET_SCHEDULER_NO_TASK;
}
if (NULL != api)
- GNUNET_PLUGIN_unload (libname, api);
+ GNUNET_PLUGIN_unload (libname, api);
while (NULL != head)
{
- w = head;
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Plugin did not remove address `%s'\n", w->addrstring);
- GNUNET_CONTAINER_DLL_remove (head, tail, w);
- c ++;
- GNUNET_free (w->addr);
- GNUNET_free (w->addrstring);
- GNUNET_free (w);
+ w = head;
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR, "Plugin did not remove address `%s'\n",
+ w->addrstring);
+ GNUNET_CONTAINER_DLL_remove(head, tail, w);
+ c++;
+ GNUNET_HELLO_address_free(w->address);
+ GNUNET_free(w->addrstring);
+ GNUNET_free(w);
}
if (c > 0)
{
- GNUNET_break (0);
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Plugin did not remove %u addresses \n", c);
+ GNUNET_break(0);
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR, "Plugin did not remove %u addresses \n",
+ c);
ok = 1;
}
-
- GNUNET_free (libname);
+ GNUNET_free(libname);
libname = NULL;
GNUNET_STATISTICS_destroy (stats, GNUNET_NO);
stats = NULL;
@@ -182,7 +177,6 @@ end ()
}
}
-
static void
end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
@@ -192,48 +186,49 @@ end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
timeout_endbadly = GNUNET_SCHEDULER_NO_TASK;
if (GNUNET_SCHEDULER_NO_TASK != timeout_wait)
{
- GNUNET_SCHEDULER_cancel (timeout_wait);
- timeout_wait = GNUNET_SCHEDULER_NO_TASK;
+ GNUNET_SCHEDULER_cancel (timeout_wait);
+ timeout_wait = GNUNET_SCHEDULER_NO_TASK;
}
if (pretty_printers_running > 0)
{
- timeout_endbadly = GNUNET_SCHEDULER_add_delayed(GNUNET_TIME_UNIT_SECONDS, &end_badly, &ok);
- GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- "Have pending calls to pretty_printer ... deferring shutdown\n");
- return;
+ timeout_endbadly = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS,
+ &end_badly, &ok);
+ GNUNET_log(GNUNET_ERROR_TYPE_INFO,
+ "Have pending calls to pretty_printer ... deferring shutdown\n");
+ return;
}
if (NULL != cls)
{
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Test took too long to execute, timeout .... \n");
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Test took too long to execute, timeout .... \n");
}
if (NULL != libname)
{
if (NULL != api)
GNUNET_PLUGIN_unload (libname, api);
- GNUNET_free (libname);
+ GNUNET_free(libname);
libname = NULL;
}
while (NULL != head)
{
- w = head;
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Plugin did not remove address `%s'\n", w->addrstring);
- GNUNET_CONTAINER_DLL_remove (head, tail, w);
- c ++;
- GNUNET_free (w->addr);
- GNUNET_free (w->addrstring);
- GNUNET_free (w);
+ w = head;
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR, "Plugin did not remove address `%s'\n",
+ w->addrstring);
+ GNUNET_CONTAINER_DLL_remove(head, tail, w);
+ c++;
+ GNUNET_HELLO_address_free(w->address);
+ GNUNET_free(w->addrstring);
+ GNUNET_free(w);
}
if (c > 0)
{
- GNUNET_break (0);
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Plugin did not remove %u addresses\n", c);
+ GNUNET_break(0);
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR, "Plugin did not remove %u addresses\n",
+ c);
}
if (NULL != stats)
@@ -251,51 +246,44 @@ end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
ok = 1;
}
-
static void
wait_end (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
timeout_wait = GNUNET_SCHEDULER_NO_TASK;
if (0 == addresses_reported)
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "Plugin did not report any addresses, could not check address conversion functions\n");
+ GNUNET_log(GNUNET_ERROR_TYPE_WARNING,
+ "Plugin did not report any addresses, could not check address conversion functions\n");
end ();
}
-
static void
end_badly_now ()
{
if (GNUNET_SCHEDULER_NO_TASK != timeout_wait)
{
- GNUNET_SCHEDULER_cancel (timeout_wait);
- timeout_wait = GNUNET_SCHEDULER_NO_TASK;
+ GNUNET_SCHEDULER_cancel (timeout_wait);
+ timeout_wait = GNUNET_SCHEDULER_NO_TASK;
}
if (GNUNET_SCHEDULER_NO_TASK != timeout_endbadly)
{
- GNUNET_SCHEDULER_cancel (timeout_endbadly);
- timeout_endbadly = GNUNET_SCHEDULER_NO_TASK;
+ GNUNET_SCHEDULER_cancel (timeout_endbadly);
+ timeout_endbadly = GNUNET_SCHEDULER_NO_TASK;
}
- timeout_endbadly = GNUNET_SCHEDULER_add_now (&end_badly, NULL);
+ timeout_endbadly = GNUNET_SCHEDULER_add_now (&end_badly, NULL );
}
-
static struct GNUNET_TIME_Relative
env_receive (void *cls,
- const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_MessageHeader *message,
- struct Session * session,
- const char *sender_address,
- uint16_t sender_address_len)
+ const struct GNUNET_HELLO_Address *address,
+ struct Session *session,
+ const struct GNUNET_MessageHeader *message)
{
/* do nothing */
- return GNUNET_TIME_relative_get_zero_();
+ return GNUNET_TIME_relative_get_zero_ ();
}
-
static int got_reply;
-
/**
* Take the given address and append it to the set of results sent back to
* the client.
@@ -309,28 +297,23 @@ address_pretty_printer_cb (void *cls, const char *buf)
if (NULL != buf)
{
got_reply = GNUNET_YES;
- GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- "Pretty address : `%s'\n", buf);
- pretty_printers_running --;
+ GNUNET_log(GNUNET_ERROR_TYPE_INFO, "Pretty address : `%s'\n", buf);
+ pretty_printers_running--;
}
else
{
- if (GNUNET_NO == got_reply)
- {
- pretty_printers_running --;
- GNUNET_break (0);
- end_badly_now ();
- }
+ if (GNUNET_NO == got_reply)
+ {
+ pretty_printers_running--;
+ GNUNET_break(0);
+ end_badly_now ();
+ }
}
}
-
static void
-env_notify_address (void *cls,
- int add_remove,
- const void *addr,
- size_t addrlen,
- const char *plugin)
+env_notify_address (void *cls, int add_remove,
+ const struct GNUNET_HELLO_Address *address)
{
struct AddressWrapper *w;
struct AddressWrapper *wtmp;
@@ -339,150 +322,145 @@ env_notify_address (void *cls,
if (GNUNET_YES == add_remove)
{
- addresses_reported ++;
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Adding address of length %u\n", addrlen);
+ addresses_reported++;
+ GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Adding address of length %u\n",
+ address->address_length);
- for (wtmp = head; NULL != wtmp; wtmp = wtmp->next)
+ for (wtmp = head; NULL != wtmp; wtmp = wtmp->next)
+ {
+ if ((address->address_length == wtmp->address->address_length) &&
+ (0 == memcmp (address->address, wtmp->address->address, address->address_length)))
{
- if ((addrlen == wtmp->addrlen) && (0 == memcmp (addr, wtmp->addr, addrlen)))
- {
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Duplicate address notification .... \n");
- return;
- }
- }
-
- w = GNUNET_new (struct AddressWrapper);
- w->addr = GNUNET_malloc (addrlen);
- w->addrlen = addrlen;
- memcpy (w->addr, addr, addrlen);
- GNUNET_CONTAINER_DLL_insert(head, tail, w);
- got_reply = GNUNET_NO;
- GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- "Testing: address_to_string \n");
- w->addrstring = strdup (api->address_to_string (api, w->addr, w->addrlen));
- if (NULL == w->addrstring)
- {
- GNUNET_break (0);
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Plugin cannot convert address to string!\n");
- end_badly_now();
- return;
- }
- else
- {
- GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- "Plugin added address `%s'\n", w->addrstring);
- GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- "Testing address_to_string: OK\n");
- }
-
- GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- "Testing: string_to_address \n");
- s2a = NULL;
- s2a_len = 0;
- if ((GNUNET_OK != api->string_to_address (api, w->addrstring, strlen (w->addrstring)+1, &s2a, &s2a_len)) || (NULL == s2a))
- {
- GNUNET_break (0);
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Plugin cannot convert string to address!\n");
- end_badly_now();
- return;
- }
-
- /*
- GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- "Plugin creates `%s' %u\n",api->address_to_string (api, s2a, s2a_len), s2a_len);
-
- int c1;
- for (c1 = 0; c1 < s2a_len; c1++ )
- fprintf (stderr, "%u == %u\n", ((char *) s2a)[c1], ((char *) w->addr)[c1]);
- */
- if (s2a_len != w->addrlen)
- {
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Plugin creates different address length when converting address->string->address: %u != %u\n", w->addrlen, s2a_len);
- }
- else if (0 != memcmp (s2a, w->addr, s2a_len))
- {
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Plugin creates different address length when converting back and forth %i!\n", memcmp (s2a, w->addr, s2a_len));
- }
- else
- {
- GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- "Testing string_to_address: OK\n");
- }
- GNUNET_free (s2a);
-
- pretty_printers_running ++;
- api->address_pretty_printer (api->cls, plugin, addr, addrlen,
- GNUNET_YES, GNUNET_TIME_UNIT_MINUTES,
- &address_pretty_printer_cb,
- w);
-
- if (GNUNET_OK != api->check_address (api->cls, w->addr, w->addrlen))
- {
- GNUNET_break (0);
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Plugin refuses added address!\n");
- end_badly_now();
- return;
- }
- if (GNUNET_SCHEDULER_NO_TASK != timeout_wait)
- {
- GNUNET_SCHEDULER_cancel (timeout_wait);
- timeout_wait = GNUNET_SCHEDULER_NO_TASK;
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Duplicate address notification .... \n");
+ return;
}
+ }
+
+ w = GNUNET_new (struct AddressWrapper);
+ w->address = GNUNET_HELLO_address_copy (address);
+ GNUNET_CONTAINER_DLL_insert(head, tail, w);
+ got_reply = GNUNET_NO;
+ GNUNET_log(GNUNET_ERROR_TYPE_INFO, "Testing: address_to_string \n");
+ w->addrstring = strdup (
+ api->address_to_string (api, w->address->address,
+ w->address->address_length));
+ if (NULL == w->addrstring)
+ {
+ GNUNET_break(0);
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Plugin cannot convert address to string!\n");
+ end_badly_now ();
+ return;
+ }
+ else
+ {
+ GNUNET_log(GNUNET_ERROR_TYPE_INFO, "Plugin added address `%s'\n",
+ w->addrstring);
+ GNUNET_log(GNUNET_ERROR_TYPE_INFO, "Testing address_to_string: OK\n");
+ }
+
+ GNUNET_log(GNUNET_ERROR_TYPE_INFO, "Testing: string_to_address \n");
+ s2a = NULL;
+ s2a_len = 0;
+ if ((GNUNET_OK
+ != api->string_to_address (api, w->addrstring,
+ strlen (w->addrstring) + 1, &s2a, &s2a_len)) || (NULL == s2a))
+ {
+ GNUNET_break(0);
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Plugin cannot convert string to address!\n");
+ end_badly_now ();
+ return;
+ }
+
+ /*
+ GNUNET_log (GNUNET_ERROR_TYPE_INFO,
+ "Plugin creates `%s' %u\n",api->address_to_string (api, s2a, s2a_len), s2a_len);
+
+ int c1;
+ for (c1 = 0; c1 < s2a_len; c1++ )
+ fprintf (stderr, "%u == %u\n", ((char *) s2a)[c1], ((char *) w->addr)[c1]);
+ */
+ if (s2a_len != w->address->address_length)
+ {
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Plugin creates different address length when converting address->string->address: %u != %u\n",
+ w->address->address_length, s2a_len);
+ }
+ else if (0 != memcmp (s2a, w->address->address, s2a_len))
+ {
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Plugin creates different address length when converting back and forth %i!\n",
+ memcmp (s2a, w->address->address, s2a_len));
+ }
+ else
+ {
+ GNUNET_log(GNUNET_ERROR_TYPE_INFO, "Testing string_to_address: OK\n");
+ }
+ GNUNET_free(s2a);
+
+ pretty_printers_running++;
+ api->address_pretty_printer (api->cls, address->transport_name, address->address, address->address_length, GNUNET_YES,
+ GNUNET_TIME_UNIT_MINUTES, &address_pretty_printer_cb, w);
+
+ if (GNUNET_OK != api->check_address (api->cls, w->address->address, w->address->address_length))
+ {
+ GNUNET_break(0);
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR, "Plugin refuses added address!\n");
+ end_badly_now ();
+ return;
+ }
+ if (GNUNET_SCHEDULER_NO_TASK != timeout_wait)
+ {
+ GNUNET_SCHEDULER_cancel (timeout_wait);
+ timeout_wait = GNUNET_SCHEDULER_NO_TASK;
+ }
- timeout_wait = GNUNET_SCHEDULER_add_delayed (WAIT, &wait_end, NULL);
+ timeout_wait = GNUNET_SCHEDULER_add_delayed (WAIT, &wait_end, NULL );
}
else if (GNUNET_NO == add_remove)
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Removing address of length %u\n", addrlen);
+ GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Removing address of length %u\n",
+ address->address_length);
- w = head;
- while (NULL != w)
+ w = head;
+ while (NULL != w)
+ {
+ if ((address->address_length == w->address->address_length) &&
+ (0 == memcmp (w->address->address, address->address, address->address_length)))
{
- if ((addrlen == w->addrlen) && (0 == memcmp (w->addr, addr, addrlen)))
- {
- break;
- }
- w = w->next;
- }
-
- if (w == NULL)
- {
- GNUNET_break (0);
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Plugin removes address never added!\n");
- end_badly_now();
- return;
+ break;
}
+ w = w->next;
+ }
+
+ if (w == NULL )
+ {
+ GNUNET_break(0);
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Plugin removes address never added!\n");
+ end_badly_now ();
+ return;
+ }
- GNUNET_CONTAINER_DLL_remove (head, tail, w);
- GNUNET_free (w->addr);
- GNUNET_free (w->addrstring);
- GNUNET_free (w);
+ GNUNET_CONTAINER_DLL_remove(head, tail, w);
+ GNUNET_HELLO_address_free (w->address);
+ GNUNET_free(w->addrstring);
+ GNUNET_free(w);
}
else
{
- GNUNET_break (0);
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Invalid operation: %u\n", add_remove);
- end_badly_now ();
- return;
+ GNUNET_break(0);
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR, "Invalid operation: %u\n", add_remove);
+ end_badly_now ();
+ return;
}
}
-
static struct GNUNET_ATS_Information
-env_get_address_type (void *cls,
- const struct sockaddr *addr,
- size_t addrlen)
+env_get_address_type (void *cls, const struct sockaddr *addr, size_t addrlen)
{
struct GNUNET_ATS_Information ats;
ats.type = htonl (GNUNET_ATS_NETWORK_TYPE);
@@ -490,34 +468,27 @@ env_get_address_type (void *cls,
return ats;
}
-
static const struct GNUNET_MessageHeader *
env_get_our_hello ()
{
return (const struct GNUNET_MessageHeader *) hello;
}
-
static void
-env_session_end (void *cls,
- const struct GNUNET_PeerIdentity *peer,
- struct Session * session)
+env_session_end (void *cls, const struct GNUNET_PeerIdentity *peer,
+ struct Session * session)
{
}
-
static void
env_update_metrics (void *cls,
- const struct GNUNET_PeerIdentity *peer,
- const void *address,
- uint16_t address_len,
- struct Session *session,
- const struct GNUNET_ATS_Information *ats,
- uint32_t ats_count)
+ const struct GNUNET_HELLO_Address *address,
+ struct Session *session,
+ const struct GNUNET_ATS_Information *ats,
+ uint32_t ats_count)
{
}
-
static void
setup_plugin_environment ()
{
@@ -534,15 +505,13 @@ setup_plugin_environment ()
env.session_end = &env_session_end;
}
-
static int
handle_helper_message (void *cls, void *client,
- const struct GNUNET_MessageHeader *hdr)
+ const struct GNUNET_MessageHeader *hdr)
{
return GNUNET_OK;
}
-
/**
* Runs the test.
*
@@ -550,10 +519,10 @@ handle_helper_message (void *cls, void *client,
* @param c configuration to use
*/
static void
-run (void *cls, char *const *args, const char *cfgfile,
- const struct GNUNET_CONFIGURATION_Handle *c)
+run (void *cls, char * const *args, const char *cfgfile,
+ const struct GNUNET_CONFIGURATION_Handle *c)
{
- char *const *argv = cls;
+ char * const *argv = cls;
unsigned long long tneigh;
char *keyfile;
char *plugin;
@@ -563,66 +532,62 @@ run (void *cls, char *const *args, const char *cfgfile,
cfg = c;
/* parse configuration */
- if ( (GNUNET_OK != GNUNET_CONFIGURATION_get_value_number (c,
- "TRANSPORT",
- "NEIGHBOUR_LIMIT",
- &tneigh)) ||
- (GNUNET_OK != GNUNET_CONFIGURATION_get_value_filename (c,
- "PEER", "PRIVATE_KEY",
- &keyfile)))
- {
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Transport service is lacking key configuration settings. Exiting.\n");
+ if ((GNUNET_OK
+ != GNUNET_CONFIGURATION_get_value_number (c, "TRANSPORT",
+ "NEIGHBOUR_LIMIT", &tneigh))
+ || (GNUNET_OK
+ != GNUNET_CONFIGURATION_get_value_filename (c, "PEER", "PRIVATE_KEY",
+ &keyfile)))
+ {
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Transport service is lacking key configuration settings. Exiting.\n");
return;
}
if (NULL == (stats = GNUNET_STATISTICS_create ("transport", cfg)))
{
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Could not create statistics. Exiting.\n");
- GNUNET_free (keyfile);
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Could not create statistics. Exiting.\n");
+ GNUNET_free(keyfile);
end_badly_now ();
return;
}
if (GNUNET_OK != GNUNET_DISK_file_test (HOSTKEY_FILE))
{
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Hostkey `%s' missing. Exiting.\n",
- HOSTKEY_FILE);
- GNUNET_free (keyfile);
- end_badly_now ();
- return;
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR, "Hostkey `%s' missing. Exiting.\n",
+ HOSTKEY_FILE);
+ GNUNET_free(keyfile);
+ end_badly_now ();
+ return;
}
if (GNUNET_OK != GNUNET_DISK_directory_create_for_file (keyfile))
{
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Could not create a directory for hostkey `%s'. Exiting.\n",
- keyfile);
- GNUNET_free (keyfile);
- end_badly_now ();
- return;
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Could not create a directory for hostkey `%s'. Exiting.\n", keyfile);
+ GNUNET_free(keyfile);
+ end_badly_now ();
+ return;
}
- if (GNUNET_OK != GNUNET_DISK_file_copy (HOSTKEY_FILE, keyfile))
+ if (GNUNET_OK != GNUNET_DISK_file_copy (HOSTKEY_FILE, keyfile))
{
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Could not copy hostkey `%s' to destination `%s'. Exiting.\n",
- HOSTKEY_FILE, keyfile);
- GNUNET_free (keyfile);
- end_badly_now ();
- return;
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Could not copy hostkey `%s' to destination `%s'. Exiting.\n",
+ HOSTKEY_FILE, keyfile);
+ GNUNET_free(keyfile);
+ end_badly_now ();
+ return;
}
-
max_connect_per_transport = (uint32_t) tneigh;
my_private_key = GNUNET_CRYPTO_eddsa_key_create_from_file (keyfile);
- GNUNET_free (keyfile);
+ GNUNET_free(keyfile);
if (NULL == my_private_key)
{
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Could not access hostkey. Exiting.\n");
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Could not access hostkey. Exiting.\n");
end_badly_now ();
return;
}
@@ -633,18 +598,18 @@ run (void *cls, char *const *args, const char *cfgfile,
/* load plugins... */
setup_plugin_environment ();
- GNUNET_assert (strlen (argv[0]) > strlen ("test_plugin_"));
- plugin = strstr(argv[0],"test_plugin_");
- sep = strrchr(argv[0],'.');
+ GNUNET_assert(strlen (argv[0]) > strlen ("test_plugin_"));
+ plugin = strstr (argv[0], "test_plugin_");
+ sep = strrchr (argv[0], '.');
if (NULL == plugin)
{
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Not a valid test name\n");
- end_badly_now ();
- return;
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR, "Not a valid test name\n");
+ end_badly_now ();
+ return;
}
plugin += strlen ("test_plugin_");
if (NULL != sep)
- sep[0] = '\0';
+ sep[0] = '\0';
/* Hack for WLAN: start a second helper */
if (0 == strcmp (plugin, "wlan"))
@@ -654,77 +619,73 @@ run (void *cls, char *const *args, const char *cfgfile,
helper_argv[1] = (char *) "2";
helper_argv[2] = NULL;
suid_helper = GNUNET_HELPER_start (GNUNET_NO,
- "gnunet-helper-transport-wlan-dummy",
- helper_argv,
- &handle_helper_message,
- NULL,
- NULL);
+ "gnunet-helper-transport-wlan-dummy", helper_argv,
+ &handle_helper_message, NULL, NULL );
}
/* Loading plugin */
- GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Loading transport plugin %s\n", plugin);
+ GNUNET_log(GNUNET_ERROR_TYPE_INFO, "Loading transport plugin %s\n", plugin);
GNUNET_asprintf (&libname, "libgnunet_plugin_transport_%s", plugin);
api = GNUNET_PLUGIN_load (libname, &env);
- if (api == NULL)
+ if (api == NULL )
{
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Failed to load transport plugin for %s\n", plugin);
+ GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
+ "Failed to load transport plugin for %s\n", plugin);
end_badly_now ();
return;
}
- timeout_wait = GNUNET_SCHEDULER_add_delayed (WAIT, &wait_end, NULL);
+ timeout_wait = GNUNET_SCHEDULER_add_delayed (WAIT, &wait_end, NULL );
/* Check if all functions are implemented */
if (NULL == api->address_pretty_printer)
{
- GNUNET_break (0);
- end_badly_now ();
- return;
+ GNUNET_break(0);
+ end_badly_now ();
+ return;
}
if (NULL == api->address_to_string)
{
- GNUNET_break (0);
- end_badly_now ();
- return;
+ GNUNET_break(0);
+ end_badly_now ();
+ return;
}
- GNUNET_assert (NULL != api->check_address);
+ GNUNET_assert(NULL != api->check_address);
if (NULL == api->check_address)
{
- GNUNET_break (0);
- end_badly_now ();
- return;
+ GNUNET_break(0);
+ end_badly_now ();
+ return;
}
- GNUNET_assert (NULL != api->disconnect_peer);
+ GNUNET_assert(NULL != api->disconnect_peer);
if (NULL == api->disconnect_peer)
{
- GNUNET_break (0);
- end_badly_now ();
- return;
+ GNUNET_break(0);
+ end_badly_now ();
+ return;
}
- GNUNET_assert (NULL != api->get_session);
+ GNUNET_assert(NULL != api->get_session);
if (NULL == api->get_session)
{
- GNUNET_break (0);
- end_badly_now ();
- return;
+ GNUNET_break(0);
+ end_badly_now ();
+ return;
}
if (NULL == api->address_pretty_printer)
{
- GNUNET_break (0);
- end_badly_now ();
- return;
+ GNUNET_break(0);
+ end_badly_now ();
+ return;
}
if (NULL == api->string_to_address)
{
- GNUNET_break (0);
- end_badly_now ();
- return;
+ GNUNET_break(0);
+ end_badly_now ();
+ return;
}
}
-
/**
* The main function for the test
*
@@ -733,32 +694,22 @@ run (void *cls, char *const *args, const char *cfgfile,
* @return 0 ok, 1 on error
*/
int
-main (int argc, char *const *argv)
+main (int argc, char * const *argv)
{
static struct GNUNET_GETOPT_CommandLineOption options[] = {
- GNUNET_GETOPT_OPTION_END
- };
+ GNUNET_GETOPT_OPTION_END };
int ret;
GNUNET_DISK_directory_remove ("/tmp/test-gnunetd-plugin-transport");
- char *const argv_prog[] = {
- "test_plugin_transport",
- "-c",
- "test_plugin_transport_data.conf",
- NULL
- };
- GNUNET_log_setup ("test-plugin-transport",
- "WARNING",
- NULL);
- ok = 1; /* set to fail */
- ret = (GNUNET_OK == GNUNET_PROGRAM_run (3,
- argv_prog,
- "test-plugin-transport",
- "testcase",
- options,
- &run,
- (void *) argv)) ? ok : 1;
+ char * const argv_prog[] = { "test_plugin_transport", "-c",
+ "test_plugin_transport_data.conf", NULL };
+ GNUNET_log_setup ("test-plugin-transport", "WARNING", NULL );
+ ok = 1; /* set to fail */
+ ret =
+ (GNUNET_OK
+ == GNUNET_PROGRAM_run (3, argv_prog, "test-plugin-transport",
+ "testcase", options, &run, (void *) argv)) ? ok : 1;
GNUNET_DISK_directory_remove ("/tmp/test-gnunetd-plugin-transport");
return ret;
}