/* trivial strategy: pick first available address... */
asc->cb (asc->cb_cls, &asc->target, ar->plugin_name, ar->plugin_addr,
ar->plugin_addr_len,
+ ar->session,
GNUNET_BANDWIDTH_value_init (asc->atc->total_bps / 32), ar->ats,
ar->ats_count);
asc->cb = NULL;
asc->cb (asc->cb_cls, &asc->target, ar->plugin_name, ar->plugin_addr,
ar->plugin_addr_len,
+ ar->session,
GNUNET_BANDWIDTH_value_init (asc->atc->total_bps / 32), ar->ats,
ar->ats_count);
GNUNET_ATS_suggest_address_cancel (asc);
if (GNUNET_NO == GST_neighbours_test_connected (&obm->peer))
{
/* not connected, not allowed to send; can happen due to asynchronous operations */
+#if DEBUG_TRANSPORT
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Could not send message to peer `%s': not connected\n", GNUNET_i2s (&obm->peer));
+#endif
GNUNET_STATISTICS_update (GST_stats,
gettext_noop
("# bytes payload dropped (other peer was not connected)"),
GNUNET_CONTAINER_DLL_remove (n->messages_head, n->messages_tail, mq);
n->is_active = mq;
mq->n = n;
+
+
ret =
papi->send (papi->cls, &n->id, mq->message_buf, mq->message_buf_size,
0 /* priority -- remove from plugin API? */ ,
GNUNET_break (0);
return;
}
+
+#if DEBUG_TRANSPORT
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "SWITCH! Peer `%4s' switches to plugin `%s' address '%s' session %X\n",
+ GNUNET_i2s (peer),
+ plugin_name,
+ (address_len == 0) ? "<inbound>" :
+ GST_plugins_a2s(plugin_name,address,address_len),
+ session);
+#endif
+
GNUNET_free_non_null (n->addr);
n->addr = GNUNET_malloc (address_len);
memcpy (n->addr, address, address_len);
try_connect_using_address (void *cls, const struct GNUNET_PeerIdentity *target,
const char *plugin_name, const void *plugin_address,
size_t plugin_address_len,
+ struct Session *session,
struct GNUNET_BANDWIDTH_Value32NBO bandwidth,
const struct GNUNET_TRANSPORT_ATS_Information *ats,
uint32_t ats_count)
n->asc = NULL;
GST_neighbours_switch_to_address (target, plugin_name, plugin_address,
- plugin_address_len, NULL, ats, ats_count);
+ plugin_address_len, session, ats, ats_count);
if (GNUNET_YES == n->is_connected)
return;
n->is_connected = GNUNET_YES;