diff options
author | Matthias Wachs <wachs@net.in.tum.de> | 2011-09-27 10:59:27 +0000 |
---|---|---|
committer | Matthias Wachs <wachs@net.in.tum.de> | 2011-09-27 10:59:27 +0000 |
commit | 31cca448e4178022c29e23e57aaeb4145fee2a4f (patch) | |
tree | 22a27546bbb14ebcc1fb194a0097324dc72deee4 /src/transport/plugin_transport_http_server.c | |
parent | edab319f07cc940f64111b6e89da245a2afcf71a (diff) | |
download | gnunet-31cca448e4178022c29e23e57aaeb4145fee2a4f.tar.gz gnunet-31cca448e4178022c29e23e57aaeb4145fee2a4f.zip |
working version
Diffstat (limited to 'src/transport/plugin_transport_http_server.c')
-rw-r--r-- | src/transport/plugin_transport_http_server.c | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/src/transport/plugin_transport_http_server.c b/src/transport/plugin_transport_http_server.c index 596ac4925..6781b0745 100644 --- a/src/transport/plugin_transport_http_server.c +++ b/src/transport/plugin_transport_http_server.c | |||
@@ -242,16 +242,16 @@ server_receive_mst_cb (void *cls, void *client, | |||
242 | const struct GNUNET_MessageHeader *message) | 242 | const struct GNUNET_MessageHeader *message) |
243 | { | 243 | { |
244 | struct Session *s = cls; | 244 | struct Session *s = cls; |
245 | #if VERBOSE_SERVER | ||
245 | struct Plugin *plugin = s->plugin; | 246 | struct Plugin *plugin = s->plugin; |
247 | #endif | ||
246 | struct GNUNET_TIME_Relative delay; | 248 | struct GNUNET_TIME_Relative delay; |
247 | 249 | ||
248 | delay = http_plugin_receive (s, &s->target, message, s, s->addr, s->addrlen); | 250 | delay = http_plugin_receive (s, &s->target, message, s, s->addr, s->addrlen); |
249 | 251 | ||
250 | s->delay = GNUNET_TIME_absolute_add(GNUNET_TIME_absolute_get(), delay); | 252 | s->next_receive = GNUNET_TIME_absolute_add(GNUNET_TIME_absolute_get(), delay); |
251 | GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name, "Server: SERVER DELAY %llu ms\n", | ||
252 | delay.rel_value); | ||
253 | 253 | ||
254 | if (GNUNET_TIME_absolute_get().abs_value < s->delay.abs_value) | 254 | if (delay.rel_value > 0) |
255 | { | 255 | { |
256 | #if VERBOSE_CLIENT | 256 | #if VERBOSE_CLIENT |
257 | GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name, "Server: peer `%s' address `%s' next read delayed for %llu ms\n", | 257 | GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name, "Server: peer `%s' address `%s' next read delayed for %llu ms\n", |
@@ -272,7 +272,7 @@ static ssize_t | |||
272 | server_send_callback (void *cls, uint64_t pos, char *buf, size_t max) | 272 | server_send_callback (void *cls, uint64_t pos, char *buf, size_t max) |
273 | { | 273 | { |
274 | struct Session *s = cls; | 274 | struct Session *s = cls; |
275 | struct Plugin *plugin = s->plugin; | 275 | |
276 | struct HTTP_Message *msg; | 276 | struct HTTP_Message *msg; |
277 | int bytes_read = 0; | 277 | int bytes_read = 0; |
278 | //static int c = 0; | 278 | //static int c = 0; |
@@ -304,6 +304,7 @@ server_send_callback (void *cls, uint64_t pos, char *buf, size_t max) | |||
304 | } | 304 | } |
305 | 305 | ||
306 | #if VERBOSE_CLIENT | 306 | #if VERBOSE_CLIENT |
307 | struct Plugin *plugin = s->plugin; | ||
307 | GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name, | 308 | GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name, |
308 | "Server: %X: sent %u bytes\n", | 309 | "Server: %X: sent %u bytes\n", |
309 | s, bytes_read); | 310 | s, bytes_read); |
@@ -324,6 +325,7 @@ server_access_cb (void *cls, struct MHD_Connection *mhd_connection, | |||
324 | const char *upload_data, size_t * upload_data_size, | 325 | const char *upload_data, size_t * upload_data_size, |
325 | void **httpSessionCache) | 326 | void **httpSessionCache) |
326 | { | 327 | { |
328 | |||
327 | struct Plugin *plugin = cls; | 329 | struct Plugin *plugin = cls; |
328 | struct ServerConnection *sc = *httpSessionCache; | 330 | struct ServerConnection *sc = *httpSessionCache; |
329 | struct Session *s = NULL; | 331 | struct Session *s = NULL; |
@@ -477,7 +479,7 @@ create: | |||
477 | NULL); | 479 | NULL); |
478 | 480 | ||
479 | s->inbound = GNUNET_YES; | 481 | s->inbound = GNUNET_YES; |
480 | s->delay = GNUNET_TIME_absolute_get_zero(); | 482 | s->next_receive = GNUNET_TIME_absolute_get_zero(); |
481 | s->tag= tag; | 483 | s->tag= tag; |
482 | if (0 == strcmp (MHD_HTTP_METHOD_PUT, method)) | 484 | if (0 == strcmp (MHD_HTTP_METHOD_PUT, method)) |
483 | s->server_recv = s; | 485 | s->server_recv = s; |
@@ -563,7 +565,7 @@ found: | |||
563 | GNUNET_i2s (&s->target), GNUNET_a2s (s->addr, s->addrlen), *upload_data_size); | 565 | GNUNET_i2s (&s->target), GNUNET_a2s (s->addr, s->addrlen), *upload_data_size); |
564 | #endif | 566 | #endif |
565 | struct GNUNET_TIME_Absolute now = GNUNET_TIME_absolute_get(); | 567 | struct GNUNET_TIME_Absolute now = GNUNET_TIME_absolute_get(); |
566 | if (( s->delay.abs_value < now.abs_value)) | 568 | if (( s->next_receive.abs_value <= now.abs_value)) |
567 | { | 569 | { |
568 | #if VERBOSE_SERVER | 570 | #if VERBOSE_SERVER |
569 | GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name, | 571 | GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name, |
@@ -575,19 +577,18 @@ found: | |||
575 | s->msg_tk = GNUNET_SERVER_mst_create (&server_receive_mst_cb, s); | 577 | s->msg_tk = GNUNET_SERVER_mst_create (&server_receive_mst_cb, s); |
576 | } | 578 | } |
577 | res = GNUNET_SERVER_mst_receive (s->msg_tk, s, upload_data, *upload_data_size, GNUNET_NO, GNUNET_NO); | 579 | res = GNUNET_SERVER_mst_receive (s->msg_tk, s, upload_data, *upload_data_size, GNUNET_NO, GNUNET_NO); |
580 | #if VERBOSE_SERVER | ||
578 | GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name, | 581 | GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name, |
579 | "Server: Received %Zu bytes\n", | 582 | "Server: Received %Zu bytes\n", *upload_data_size); |
580 | *upload_data_size); | 583 | #endif |
581 | (*upload_data_size) = 0; | 584 | (*upload_data_size) = 0; |
582 | } | 585 | } |
583 | else | 586 | else |
584 | { | 587 | { |
585 | |||
586 | #if DEBUG_HTTP | 588 | #if DEBUG_HTTP |
587 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 589 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
588 | "Connection %X: no inbound bandwidth available! Next read was delayed by %llu ms\n", s, now.abs_value - s->delay.abs_value); | 590 | "Server: %X no inbound bandwidth available! Next read was delayed by %llu ms\n", s, now.abs_value - s->next_receive.abs_value); |
589 | #endif | 591 | #endif |
590 | |||
591 | } | 592 | } |
592 | return MHD_YES; | 593 | return MHD_YES; |
593 | } | 594 | } |