From c74a75ecca434556774637cc72286bc4affa07b9 Mon Sep 17 00:00:00 2001 From: Matthias Wachs Date: Mon, 17 Sep 2012 15:21:07 +0000 Subject: - work in progress --- src/transport/plugin_transport_http_client.c | 16 +++++++++------- src/transport/plugin_transport_http_server.c | 21 ++++++++++----------- .../test_transport_api_http_reverse_peer2.conf | 2 +- 3 files changed, 20 insertions(+), 19 deletions(-) diff --git a/src/transport/plugin_transport_http_client.c b/src/transport/plugin_transport_http_client.c index db1250236..7d3c8f9ea 100644 --- a/src/transport/plugin_transport_http_client.c +++ b/src/transport/plugin_transport_http_client.c @@ -34,7 +34,7 @@ #define VERBOSE_CURL GNUNET_YES -#define PUT_DISCONNECT_TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 1) +#define PUT_DISCONNECT_TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 2) #define ENABLE_PUT GNUNET_YES #define ENABLE_GET GNUNET_YES @@ -785,7 +785,7 @@ client_wake_up (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) /** - * Callback for message stream tokenixer + * Callback for message stream tokenizer * * @param cls the session * @param client not used @@ -800,15 +800,14 @@ client_receive_mst_cb (void *cls, void *client, struct HTTP_Client_Plugin *plugin; struct GNUNET_TIME_Relative delay; struct GNUNET_ATS_Information atsi[2]; - + //GNUNET_break (0); if (GNUNET_YES != client_exist_session(p, s)) { GNUNET_break (0); return GNUNET_OK; } plugin = s->plugin; - - + //GNUNET_break (0); atsi[0].type = htonl (GNUNET_ATS_QUALITY_NET_DISTANCE); atsi[0].value = htonl (1); atsi[1].type = htonl (GNUNET_ATS_NETWORK_TYPE); @@ -876,7 +875,10 @@ client_receive (void *stream, size_t size, size_t nmemb, void *cls) } if (NULL == s->msg_tk) s->msg_tk = GNUNET_SERVER_mst_create (&client_receive_mst_cb, s); - GNUNET_SERVER_mst_receive (s->msg_tk, s, stream, len, GNUNET_NO, GNUNET_NO); + //GNUNET_break (0); + int res = GNUNET_SERVER_mst_receive (s->msg_tk, s, stream, len, GNUNET_NO, GNUNET_NO); + //GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MST RESULT : %u \n" , res); + //GNUNET_break (0); return len; } @@ -1027,7 +1029,7 @@ client_run (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) if (s->client_get == NULL) { /* Disconnect other transmission direction and tell transport */ - client_disconnect (s); + //client_disconnect (s); } } if (easy_h == s->client_get) diff --git a/src/transport/plugin_transport_http_server.c b/src/transport/plugin_transport_http_server.c index 2acbbaeb1..6d4549f35 100644 --- a/src/transport/plugin_transport_http_server.c +++ b/src/transport/plugin_transport_http_server.c @@ -1473,20 +1473,19 @@ server_disconnect_cb (void *cls, struct MHD_Connection *connection, GNUNET_free (sc); plugin->cur_connections--; - if (((s->server_send == NULL) || (s->server_recv == NULL)) && - ((GNUNET_YES == s->session_passed) && (GNUNET_NO == s->session_ended))) - { - /* Notify transport immediately that this session is invalid */ - s->session_ended = GNUNET_YES; - plugin->env->session_end (plugin->env->cls, &s->target, s); - } - if ((s->server_send == NULL) && (s->server_recv == NULL)) { GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name, "Peer `%s' on address `%s' disconnected\n", GNUNET_i2s (&s->target), http_common_plugin_address_to_string (NULL, s->addr, s->addrlen)); + + if ((GNUNET_YES == s->session_passed) && (GNUNET_NO == s->session_ended)) + { + /* Notify transport immediately that this session is invalid */ + s->session_ended = GNUNET_YES; + plugin->env->session_end (plugin->env->cls, &s->target, s); + } server_delete_session (s); } @@ -1636,10 +1635,10 @@ server_schedule (struct HTTP_Server_Plugin *plugin, last_timeout, timeout); last_timeout = timeout; } - if (timeout <= GNUNET_TIME_UNIT_SECONDS.rel_value) + //if (timeout <= GNUNET_TIME_UNIT_SECONDS.rel_value) tv.rel_value = (uint64_t) timeout; - else - tv = GNUNET_TIME_UNIT_SECONDS; + //else + //tv = GNUNET_TIME_UNIT_SECONDS; } else tv = GNUNET_TIME_UNIT_SECONDS; diff --git a/src/transport/test_transport_api_http_reverse_peer2.conf b/src/transport/test_transport_api_http_reverse_peer2.conf index d38a4c0ee..c7e9d4fe1 100644 --- a/src/transport/test_transport_api_http_reverse_peer2.conf +++ b/src/transport/test_transport_api_http_reverse_peer2.conf @@ -7,7 +7,7 @@ DEFAULTCONFIG = test_transport_api_http_reverse_peer2.conf [transport-http_client] [transport-http_server] -PORT = 12080 +PORT = 8080 EXTERNAL_HOSTNAME = fulcrum.net.in.tum.de/gnunet EXTERNAL_HOSTNAME_ONLY = YES #USE_IPV4 = YES -- cgit v1.2.3