* Final status code.
*/
static int ret;
+static int ping;
static int have_tcp;
static int have_udp;
{
struct PeerContainer *pc = value;
- if ((GNUNET_YES == pc->transport_connected) && (NULL == pc->th_ping))
- pc->th_ping = GNUNET_TRANSPORT_notify_transmit_ready(th, &pc->id,
- sizeof (struct PING), UINT_MAX,
- GNUNET_TIME_relative_get_forever(), &send_transport_ping_cb, pc);
- else
- GNUNET_break(0);
-
- if ((GNUNET_YES == pc->core_connected) && (NULL == pc->ch_ping))
- pc->ch_ping = GNUNET_CORE_notify_transmit_ready(ch,
- GNUNET_NO, UINT_MAX,
- GNUNET_TIME_relative_get_forever(),
- &pc->id,
- sizeof (struct PING),
- send_core_ping_cb, pc);
- else
- GNUNET_break (0);
+ if (ping == GNUNET_YES)
+ {
+ if ((GNUNET_YES == pc->transport_connected) && (NULL == pc->th_ping))
+ pc->th_ping = GNUNET_TRANSPORT_notify_transmit_ready(th, &pc->id,
+ sizeof (struct PING), UINT_MAX,
+ GNUNET_TIME_relative_get_forever(), &send_transport_ping_cb, pc);
+ else
+ GNUNET_break(0);
+ if ((GNUNET_YES == pc->core_connected) && (NULL == pc->ch_ping))
+ pc->ch_ping = GNUNET_CORE_notify_transmit_ready(ch,
+ GNUNET_NO, UINT_MAX,
+ GNUNET_TIME_relative_get_forever(),
+ &pc->id,
+ sizeof (struct PING),
+ send_core_ping_cb, pc);
+ else
+ GNUNET_break (0);
+ }
return GNUNET_OK;
}
if (GNUNET_NO == pc->transport_connected)
{
pc->transport_connected = GNUNET_YES;
- if (NULL == pc->th_ping)
- pc->th_ping = GNUNET_TRANSPORT_notify_transmit_ready(th, peer, sizeof (struct PING), UINT_MAX, GNUNET_TIME_relative_get_forever(), &send_transport_ping_cb, pc);
- else
- GNUNET_break(0);
+ if (GNUNET_YES == ping)
+ {
+ if (NULL == pc->th_ping)
+ pc->th_ping = GNUNET_TRANSPORT_notify_transmit_ready(th, peer, sizeof (struct PING), UINT_MAX, GNUNET_TIME_relative_get_forever(), &send_transport_ping_cb, pc);
+ else
+ GNUNET_break(0);
+ }
}
else
{
if (GNUNET_NO == pc->core_connected)
{
pc->core_connected = GNUNET_YES;
- if (NULL == pc->ch_ping)
- pc->ch_ping = GNUNET_CORE_notify_transmit_ready(ch,
+ if (GNUNET_YES == ping)
+ {
+ if (NULL == pc->ch_ping)
+ pc->ch_ping = GNUNET_CORE_notify_transmit_ready(ch,
GNUNET_NO, UINT_MAX,
GNUNET_TIME_relative_get_forever(),
peer,
sizeof (struct PING),
send_core_ping_cb, pc);
- else
- GNUNET_break (0);
+ else
+ GNUNET_break (0);
+ }
}
else
{
"TRANSPORT",
"PING",
GNUNET_i2s (peer)) ;
- if (NULL == pc->th_pong)
- pc->th_pong = GNUNET_TRANSPORT_notify_transmit_ready(th,
+ if (GNUNET_YES == ping)
+ {
+ if (NULL == pc->th_pong)
+ pc->th_pong = GNUNET_TRANSPORT_notify_transmit_ready(th,
peer, sizeof (struct PONG),
UINT_MAX, GNUNET_TIME_relative_get_forever(),
&send_transport_pong_cb, pc);
- else
- GNUNET_break (0);
+ else
+ GNUNET_break (0);
+ }
}
if ((message->size == ntohs (sizeof (struct PONG))) && (message->type == ntohs (4321)))
"CORE",
"PING",
GNUNET_i2s (peer));
- if (NULL == pc->ch_pong)
- pc->ch_pong = GNUNET_CORE_notify_transmit_ready(ch,
+ if (GNUNET_YES == ping)
+ {
+ if (NULL == pc->ch_pong)
+ pc->ch_pong = GNUNET_CORE_notify_transmit_ready(ch,
GNUNET_NO, UINT_MAX,
GNUNET_TIME_relative_get_forever(),
peer,
sizeof (struct PONG),
send_core_pong_cb, pc);
- else
- GNUNET_break (0);
+ else
+ GNUNET_break (0);
+ }
}
if ((message->size == ntohs (sizeof (struct PONG))) && (message->type == ntohs (4321)))
int
main (int argc, char *const *argv)
{
+ ping = GNUNET_NO;
static const struct GNUNET_GETOPT_CommandLineOption options[] = {
- /* FIMXE: add options here */
+ {'p', "ping", NULL, gettext_noop ("Send ping messages to test connectivity (default == NO)"),
+ GNUNET_NO, &GNUNET_GETOPT_set_one, &ping},
GNUNET_GETOPT_OPTION_END
};
return (GNUNET_OK ==