/*
This file is part of GNUnet.
- (C) 2004, 2009 Christian Grothoff (and other contributing authors)
+ (C) 2004, 2009, 2010 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
#define NUM_REQUESTS 5000
-static struct GNUNET_SCHEDULER_Handle *sched;
-
static const struct GNUNET_CONFIGURATION_Handle *cfg;
static struct GNUNET_PEERINFO_IteratorContext *ic[NUM_REQUESTS];
struct GNUNET_TIME_Absolute expiration,
const void *addr, uint16_t addrlen)
{
+#if DEBUG
if (addrlen > 0)
{
-#if DEBUG
fprintf (stderr,
"name: %s, addr: %s\n",
tname,
(const char*) addr);
-#endif
}
+#endif
return GNUNET_OK;
}
ret = GNUNET_HELLO_add_address ("peerinfotest",
GNUNET_TIME_relative_to_absolute
- (GNUNET_TIME_UNIT_HOURS), address, strlen(address) + 1,
+ (GNUNET_TIME_UNIT_HOURS),
+ address, strlen(address) + 1,
buf, max);
+ GNUNET_free (address);
*agc = 0;
return ret;
}
static void
run (void *cls,
- struct GNUNET_SCHEDULER_Handle *s,
char *const *args,
const char *cfgfile,
const struct GNUNET_CONFIGURATION_Handle *c)
{
size_t i;
- sched = s;
cfg = c;
- h = GNUNET_PEERINFO_connect (sched, cfg);
-
+ h = GNUNET_PEERINFO_connect (cfg);
+ GNUNET_assert (h != NULL);
for (i = 0; i < NUM_REQUESTS; i++)
{
add_peer (i);
(GNUNET_TIME_UNIT_SECONDS, 30),
&process, cls);
}
- fprintf (stderr,
- "Issued %u requests\n",
- NUM_REQUESTS);
}
static int
check ()
{
- int ok = 3;
- char *const argv[] = { "test-peerinfo-hammer",
+ int ok = 0;
+ char *const argv[] = { "perf-peerinfo-api",
"-c",
"test_peerinfo_api_data.conf",
#if DEBUG_PEERINFO
"-L", "DEBUG",
+#else
+ "-L", "ERROR",
#endif
NULL
};
#if START_SERVICE
- pid_t pid;
+ struct GNUNET_OS_Process *proc;
struct GNUNET_GETOPT_CommandLineOption options[] = {
GNUNET_GETOPT_OPTION_END
};
- pid = GNUNET_OS_start_process (NULL, NULL, "gnunet-service-peerinfo",
+ proc = GNUNET_OS_start_process (NULL, NULL, "gnunet-service-peerinfo",
"gnunet-service-peerinfo",
#if DEBUG_PEERINFO
"-L", "DEBUG",
+#else
+ "-L", "ERROR",
#endif
"-c", "test_peerinfo_api_data.conf", NULL);
#endif
GNUNET_PROGRAM_run ((sizeof (argv) / sizeof (char *)) - 1,
- argv, "test-peerinfo-api", "nohelp",
+ argv, "perf-peerinfo-api", "nohelp",
options, &run, &ok);
fprintf (stderr,
- "Processed %u/%u peers\n",
+ "Received %u/%u calls before timeout\n",
numpeers,
- NUM_REQUESTS);
+ NUM_REQUESTS * NUM_REQUESTS / 2);
#if START_SERVICE
- if (0 != PLIBC_KILL (pid, SIGTERM))
+ if (0 != GNUNET_OS_process_kill (proc, SIGTERM))
{
GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, "kill");
ok = 1;
}
- GNUNET_OS_process_wait(pid);
+ GNUNET_OS_process_wait (proc);
+ GNUNET_OS_process_close (proc);
+ proc = NULL;
+
#endif
return ok;
}
{
int ret = 0;
- GNUNET_log_setup ("test_peerinfo_api",
+ GNUNET_log_setup ("perf_peerinfo_api",
#if DEBUG_PEERINFO
"DEBUG",
#else
- "WARNING",
+ "ERROR",
#endif
NULL);
ret = check ();
return ret;
}
-/* end of test_peerinfo_hammer.c */
+/* end of perf_peerinfo_api.c */