From: Matthias Wachs Date: Tue, 12 Jul 2011 16:10:36 +0000 (+0000) Subject: peers with inbound connections have to validate these immediately X-Git-Tag: initial-import-from-subversion-38251~17896 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=ad04126c71ef4de17657391ecc656d5bfd32f5fd;p=oweals%2Fgnunet.git peers with inbound connections have to validate these immediately --- diff --git a/src/transport/gnunet-service-transport.c b/src/transport/gnunet-service-transport.c index 5ca5590ba..f69e06d70 100644 --- a/src/transport/gnunet-service-transport.c +++ b/src/transport/gnunet-service-transport.c @@ -5355,6 +5355,19 @@ plugin_env_receive (void *cls, const struct GNUNET_PeerIdentity *peer, peer_address->distance = distance; if (GNUNET_YES == peer_address->validated) mark_address_connected (peer_address); + else + { +#if DEBUG_TRANSPORT + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "New address is unvalidated, trying to validate it now\n"); +#endif + if (peer_address->revalidate_task != GNUNET_SCHEDULER_NO_TASK) + { + GNUNET_SCHEDULER_cancel (peer_address->revalidate_task); + peer_address->revalidate_task = GNUNET_SCHEDULER_NO_TASK; + } + GNUNET_SCHEDULER_add_now (send_periodic_ping, peer_address); + } peer_address->timeout = GNUNET_TIME_relative_to_absolute (GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT); schedule_next_ping (peer_address);