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 2, or (at your
+ 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
static struct GNUNET_PEERINFO_IteratorContext *ic;
+static struct GNUNET_PEERINFO_Handle *h;
+
static unsigned int retries;
static int
check_it (void *cls,
const char *tname,
struct GNUNET_TIME_Absolute expiration,
- const void *addr, size_t addrlen)
+ const void *addr, uint16_t addrlen)
{
unsigned int *agc = cls;
memset (&pkey, 32, sizeof (pkey));
GNUNET_CRYPTO_hash (&pkey, sizeof (pkey), &pid.hashPubKey);
h2 = GNUNET_HELLO_create (&pkey, &address_generator, &agc);
- GNUNET_PEERINFO_add_peer (cfg, sched, &pid, h2);
+ GNUNET_PEERINFO_add_peer (h, h2);
GNUNET_free (h2);
}
static void
process (void *cls,
const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_HELLO_Message *hello, uint32_t trust)
+ const struct GNUNET_HELLO_Message *hello)
{
int *ok = cls;
unsigned int agc;
/* try again */
retries++;
add_peer ();
- ic = GNUNET_PEERINFO_iterate (cfg,
- sched,
+ ic = GNUNET_PEERINFO_iterate (h,
NULL,
- 0,
GNUNET_TIME_relative_multiply
(GNUNET_TIME_UNIT_SECONDS, 15),
&process, cls);
}
GNUNET_assert (peer == NULL);
GNUNET_assert (2 == *ok);
- GNUNET_assert (trust == 0);
+ GNUNET_PEERINFO_disconnect (h);
+ h = NULL;
*ok = 0;
return;
}
{
sched = s;
cfg = c;
+ h = GNUNET_PEERINFO_connect (sched, cfg);
+ GNUNET_assert (h != NULL);
add_peer ();
- ic = GNUNET_PEERINFO_iterate (cfg,
- sched,
+ ic = GNUNET_PEERINFO_iterate (h,
NULL,
- 0,
GNUNET_TIME_relative_multiply
- (GNUNET_TIME_UNIT_SECONDS, 15), &process, cls);
+ (GNUNET_TIME_UNIT_SECONDS, 15),
+ &process, cls);
}
struct GNUNET_GETOPT_CommandLineOption options[] = {
GNUNET_GETOPT_OPTION_END
};
- pid = GNUNET_OS_start_process ("gnunet-service-peerinfo",
+ pid = GNUNET_OS_start_process (NULL, NULL, "gnunet-service-peerinfo",
"gnunet-service-peerinfo",
#if DEBUG_PEERINFO
"-L", "DEBUG",
#endif
NULL);
ret = check ();
- GNUNET_DISK_directory_remove ("/tmp/test-gnunetd-peerinfo");
+ GNUNET_DISK_directory_remove ("/tmp/test-gnunet-peerinfo");
return ret;
}