diff options
author | Christian Grothoff <christian@grothoff.org> | 2011-10-23 16:34:12 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2011-10-23 16:34:12 +0000 |
commit | 9817670b9465d68dd7ca7f27a40df273f0cbb16b (patch) | |
tree | 3327a2658f8c574cd62261cbd95591121b5ff84b /src/transport | |
parent | 1207885b627afe3bcdb5fafa17a4edf2730882ef (diff) | |
download | gnunet-9817670b9465d68dd7ca7f27a40df273f0cbb16b.tar.gz gnunet-9817670b9465d68dd7ca7f27a40df273f0cbb16b.zip |
undo 17963, better solution ahead
Diffstat (limited to 'src/transport')
-rw-r--r-- | src/transport/plugin_transport_http.c | 1 | ||||
-rw-r--r-- | src/transport/plugin_transport_http_client.c | 6 | ||||
-rw-r--r-- | src/transport/plugin_transport_http_server.c | 7 | ||||
-rw-r--r-- | src/transport/plugin_transport_tcp.c | 2 | ||||
-rw-r--r-- | src/transport/plugin_transport_udp.c | 4 | ||||
-rw-r--r-- | src/transport/plugin_transport_wlan.c | 17 |
6 files changed, 9 insertions, 28 deletions
diff --git a/src/transport/plugin_transport_http.c b/src/transport/plugin_transport_http.c index 430d13330..784dd3002 100644 --- a/src/transport/plugin_transport_http.c +++ b/src/transport/plugin_transport_http.c | |||
@@ -248,7 +248,6 @@ http_plugin_address_suggested (void *cls, const void *addr, size_t addrlen) | |||
248 | return GNUNET_OK; | 248 | return GNUNET_OK; |
249 | } | 249 | } |
250 | 250 | ||
251 | |||
252 | struct GNUNET_TIME_Relative | 251 | struct GNUNET_TIME_Relative |
253 | http_plugin_receive (void *cls, const struct GNUNET_PeerIdentity * peer, | 252 | http_plugin_receive (void *cls, const struct GNUNET_PeerIdentity * peer, |
254 | const struct GNUNET_MessageHeader * message, | 253 | const struct GNUNET_MessageHeader * message, |
diff --git a/src/transport/plugin_transport_http_client.c b/src/transport/plugin_transport_http_client.c index a27997d33..a2024953c 100644 --- a/src/transport/plugin_transport_http_client.c +++ b/src/transport/plugin_transport_http_client.c | |||
@@ -322,11 +322,7 @@ client_receive_mst_cb (void *cls, void *client, | |||
322 | struct GNUNET_TIME_Relative delay; | 322 | struct GNUNET_TIME_Relative delay; |
323 | 323 | ||
324 | delay = http_plugin_receive (s, &s->target, message, s, s->addr, s->addrlen); | 324 | delay = http_plugin_receive (s, &s->target, message, s, s->addr, s->addrlen); |
325 | if (delay.rel_value == GNUNET_TIME_UNIT_FOREVER_REL.rel_value) | 325 | s->next_receive = GNUNET_TIME_absolute_add(GNUNET_TIME_absolute_get(), delay); |
326 | { | ||
327 | // FIXME: terminate connection! | ||
328 | } | ||
329 | s->next_receive = GNUNET_TIME_relative_to_absolute (delay); | ||
330 | 326 | ||
331 | if (GNUNET_TIME_absolute_get().abs_value < s->next_receive.abs_value) | 327 | if (GNUNET_TIME_absolute_get().abs_value < s->next_receive.abs_value) |
332 | { | 328 | { |
diff --git a/src/transport/plugin_transport_http_server.c b/src/transport/plugin_transport_http_server.c index 7733c6323..158532aca 100644 --- a/src/transport/plugin_transport_http_server.c +++ b/src/transport/plugin_transport_http_server.c | |||
@@ -278,11 +278,8 @@ server_receive_mst_cb (void *cls, void *client, | |||
278 | struct GNUNET_TIME_Relative delay; | 278 | struct GNUNET_TIME_Relative delay; |
279 | 279 | ||
280 | delay = http_plugin_receive (s, &s->target, message, s, s->addr, s->addrlen); | 280 | delay = http_plugin_receive (s, &s->target, message, s, s->addr, s->addrlen); |
281 | if (delay.rel_value == GNUNET_TIME_UNIT_FOREVER_REL.rel_value) | 281 | |
282 | { | 282 | s->next_receive = GNUNET_TIME_absolute_add(GNUNET_TIME_absolute_get(), delay); |
283 | // FIXME: terminate connection! | ||
284 | } | ||
285 | s->next_receive = GNUNET_TIME_relative_to_absolute (delay); | ||
286 | 283 | ||
287 | if (delay.rel_value > 0) | 284 | if (delay.rel_value > 0) |
288 | { | 285 | { |
diff --git a/src/transport/plugin_transport_tcp.c b/src/transport/plugin_transport_tcp.c index edbcb0e17..5a77f25b5 100644 --- a/src/transport/plugin_transport_tcp.c +++ b/src/transport/plugin_transport_tcp.c | |||
@@ -1685,8 +1685,6 @@ delayed_done (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) | |||
1685 | NULL, 0); | 1685 | NULL, 0); |
1686 | if (delay.rel_value == 0) | 1686 | if (delay.rel_value == 0) |
1687 | GNUNET_SERVER_receive_done (session->client, GNUNET_OK); | 1687 | GNUNET_SERVER_receive_done (session->client, GNUNET_OK); |
1688 | else if (delay.rel_value == GNUNET_TIME_UNIT_FOREVER_REL.rel_value) | ||
1689 | GNUNET_SERVER_receive_done (session->client, GNUNET_SYSERR); | ||
1690 | else | 1688 | else |
1691 | session->receive_delay_task = | 1689 | session->receive_delay_task = |
1692 | GNUNET_SCHEDULER_add_delayed (delay, &delayed_done, session); | 1690 | GNUNET_SCHEDULER_add_delayed (delay, &delayed_done, session); |
diff --git a/src/transport/plugin_transport_udp.c b/src/transport/plugin_transport_udp.c index 077fe38e3..9812416de 100644 --- a/src/transport/plugin_transport_udp.c +++ b/src/transport/plugin_transport_udp.c | |||
@@ -861,10 +861,6 @@ process_inbound_tokenized_messages (void *cls, void *client, | |||
861 | "Giving Session %X %s to transport\n", si->session, GNUNET_i2s(&si->session->target)); | 861 | "Giving Session %X %s to transport\n", si->session, GNUNET_i2s(&si->session->target)); |
862 | delay = plugin->env->receive (plugin->env->cls, &si->sender, hdr, &distance, 1, si->session, | 862 | delay = plugin->env->receive (plugin->env->cls, &si->sender, hdr, &distance, 1, si->session, |
863 | si->arg, si->args); | 863 | si->arg, si->args); |
864 | if (delay.rel_value == GNUNET_TIME_UNIT_FOREVER_REL.rel_value) | ||
865 | { | ||
866 | // FIXME: terminate session! | ||
867 | } | ||
868 | si->session->flow_delay_for_other_peer = delay; | 864 | si->session->flow_delay_for_other_peer = delay; |
869 | } | 865 | } |
870 | 866 | ||
diff --git a/src/transport/plugin_transport_wlan.c b/src/transport/plugin_transport_wlan.c index 160b5924c..b3faf4480 100644 --- a/src/transport/plugin_transport_wlan.c +++ b/src/transport/plugin_transport_wlan.c | |||
@@ -2333,7 +2333,7 @@ process_data (void *cls, void *client, const struct GNUNET_MessageHeader *hdr) | |||
2333 | GNUNET_assert (cls != NULL); | 2333 | GNUNET_assert (cls != NULL); |
2334 | struct Session *session = (struct Session *) client; | 2334 | struct Session *session = (struct Session *) client; |
2335 | struct Plugin *plugin = (struct Plugin *) cls; | 2335 | struct Plugin *plugin = (struct Plugin *) cls; |
2336 | struct GNUNET_TIME_Relative delay; | 2336 | |
2337 | struct GNUNET_ATS_Information distance; | 2337 | struct GNUNET_ATS_Information distance; |
2338 | 2338 | ||
2339 | distance.type = htonl (GNUNET_ATS_QUALITY_NET_DISTANCE); | 2339 | distance.type = htonl (GNUNET_ATS_QUALITY_NET_DISTANCE); |
@@ -2348,16 +2348,11 @@ process_data (void *cls, void *client, const struct GNUNET_MessageHeader *hdr) | |||
2348 | htons (hdr->size)); | 2348 | htons (hdr->size)); |
2349 | #endif | 2349 | #endif |
2350 | 2350 | ||
2351 | delay = plugin->env->receive (plugin->env->cls, &(session->target), hdr, | 2351 | plugin->env->receive (plugin->env->cls, &(session->target), hdr, |
2352 | (const struct GNUNET_ATS_Information *) | 2352 | (const struct GNUNET_ATS_Information *) |
2353 | &distance, 1, session, | 2353 | &distance, 1, session, |
2354 | (const char *) &session->mac->addr, | 2354 | (const char *) &session->mac->addr, |
2355 | sizeof (session->mac->addr)); | 2355 | sizeof (session->mac->addr)); |
2356 | if (delay.rel_value == GNUNET_TIME_UNIT_FOREVER_REL.rel_value) | ||
2357 | { | ||
2358 | // FIXME: terminate session! | ||
2359 | } | ||
2360 | |||
2361 | } | 2356 | } |
2362 | 2357 | ||
2363 | /** | 2358 | /** |