aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2009-10-04 14:43:50 +0000
committerChristian Grothoff <christian@grothoff.org>2009-10-04 14:43:50 +0000
commita96e3687af7f2353bdc72366996eed473f542523 (patch)
tree7d11a5a0e6b32383b1f1e9baba88beb817eed4fe /src
parentb547897ce3fe3ae2a129afb36bf26eadfb695eef (diff)
downloadgnunet-a96e3687af7f2353bdc72366996eed473f542523.tar.gz
gnunet-a96e3687af7f2353bdc72366996eed473f542523.zip
more debug support
Diffstat (limited to 'src')
-rw-r--r--src/util/connection.c131
-rw-r--r--src/util/scheduler.c50
2 files changed, 104 insertions, 77 deletions
diff --git a/src/util/connection.c b/src/util/connection.c
index e1aa07c1d..fa367faf9 100644
--- a/src/util/connection.c
+++ b/src/util/connection.c
@@ -388,11 +388,6 @@ GNUNET_CONNECTION_create_from_accept (struct GNUNET_SCHEDULER_Handle
388 GNUNET_free (uaddr); 388 GNUNET_free (uaddr);
389 return NULL; 389 return NULL;
390 } 390 }
391#if DEBUG_CONNECTION
392 GNUNET_log (GNUNET_ERROR_TYPE_INFO,
393 _("Accepting connection from `%s'\n"),
394 GNUNET_a2s(uaddr, addrlen));
395#endif
396 ret = GNUNET_malloc (sizeof (struct GNUNET_CONNECTION_Handle) + maxbuf); 391 ret = GNUNET_malloc (sizeof (struct GNUNET_CONNECTION_Handle) + maxbuf);
397 ret->write_buffer = (char *) &ret[1]; 392 ret->write_buffer = (char *) &ret[1];
398 ret->write_buffer_size = maxbuf; 393 ret->write_buffer_size = maxbuf;
@@ -400,6 +395,12 @@ GNUNET_CONNECTION_create_from_accept (struct GNUNET_SCHEDULER_Handle
400 ret->addrlen = addrlen; 395 ret->addrlen = addrlen;
401 ret->sock = sock; 396 ret->sock = sock;
402 ret->sched = sched; 397 ret->sched = sched;
398#if DEBUG_CONNECTION
399 GNUNET_log (GNUNET_ERROR_TYPE_INFO,
400 _("Accepting connection from `%s': %p\n"),
401 GNUNET_a2s(uaddr, addrlen),
402 ret);
403#endif
403 return ret; 404 return ret;
404} 405}
405 406
@@ -472,7 +473,8 @@ destroy_continuation (void *cls,
472 { 473 {
473#if DEBUG_CONNECTION 474#if DEBUG_CONNECTION
474 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 475 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
475 "Destroy waits for CCS-TR to be done\n"); 476 "Destroy waits for CCS-TR to be done (%p)\n",
477 sock);
476#endif 478#endif
477 sock->ccs |= COCO_DESTROY_CONTINUATION; 479 sock->ccs |= COCO_DESTROY_CONTINUATION;
478 return; 480 return;
@@ -481,7 +483,8 @@ destroy_continuation (void *cls,
481 { 483 {
482#if DEBUG_CONNECTION 484#if DEBUG_CONNECTION
483 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 485 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
484 "Destroy waits for write_task to be done\n"); 486 "Destroy waits for write_task to be done (%p)\n",
487 sock);
485#endif 488#endif
486 GNUNET_SCHEDULER_add_after (sock->sched, 489 GNUNET_SCHEDULER_add_after (sock->sched,
487 GNUNET_YES, 490 GNUNET_YES,
@@ -498,7 +501,9 @@ destroy_continuation (void *cls,
498 if (sock->sock != NULL) 501 if (sock->sock != NULL)
499 { 502 {
500#if DEBUG_CONNECTION 503#if DEBUG_CONNECTION
501 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Shutting down socket.\n"); 504 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
505 "Shutting down socket (%p)\n",
506 sock);
502#endif 507#endif
503 GNUNET_NETWORK_socket_shutdown (sock->sock, SHUT_RDWR); 508 GNUNET_NETWORK_socket_shutdown (sock->sock, SHUT_RDWR);
504 } 509 }
@@ -513,7 +518,8 @@ destroy_continuation (void *cls,
513 } 518 }
514#if DEBUG_CONNECTION 519#if DEBUG_CONNECTION
515 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 520 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
516 "Destroy actually runs!\n"); 521 "Destroy actually runs (%p)!\n",
522 sock);
517#endif 523#endif
518 GNUNET_assert (sock->nth.timeout_task == GNUNET_SCHEDULER_NO_TASK); 524 GNUNET_assert (sock->nth.timeout_task == GNUNET_SCHEDULER_NO_TASK);
519 GNUNET_assert (sock->ccs == COCO_NONE); 525 GNUNET_assert (sock->ccs == COCO_NONE);
@@ -553,9 +559,10 @@ connect_fail_continuation (struct GNUNET_CONNECTION_Handle *h)
553{ 559{
554#if DEBUG_CONNECTION 560#if DEBUG_CONNECTION
555 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 561 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
556 "Failed to establish TCP connection to `%s:%u', no further addresses to try.\n", 562 "Failed to establish TCP connection to `%s:%u', no further addresses to try (%p).\n",
557 h->hostname, 563 h->hostname,
558 h->port); 564 h->port,
565 h);
559#endif 566#endif
560 /* connect failed / timed out */ 567 /* connect failed / timed out */
561 GNUNET_break (h->ap_head == NULL); 568 GNUNET_break (h->ap_head == NULL);
@@ -569,7 +576,8 @@ connect_fail_continuation (struct GNUNET_CONNECTION_Handle *h)
569 { 576 {
570#if DEBUG_CONNECTION 577#if DEBUG_CONNECTION
571 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 578 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
572 "connect_timeout_continuation triggers receive_again\n"); 579 "connect_timeout_continuation triggers receive_again (%p)\n",
580 h);
573#endif 581#endif
574 h->ccs -= COCO_RECEIVE_AGAIN; 582 h->ccs -= COCO_RECEIVE_AGAIN;
575 h->read_task = GNUNET_SCHEDULER_add_after (h->sched, 583 h->read_task = GNUNET_SCHEDULER_add_after (h->sched,
@@ -583,7 +591,8 @@ connect_fail_continuation (struct GNUNET_CONNECTION_Handle *h)
583 { 591 {
584#if DEBUG_CONNECTION 592#if DEBUG_CONNECTION
585 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 593 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
586 "connect_timeout_continuation cancels timeout_task, triggers transmit_ready\n"); 594 "connect_timeout_continuation cancels timeout_task, triggers transmit_ready (%p)\n",
595 h);
587#endif 596#endif
588 GNUNET_assert (h->nth.timeout_task != GNUNET_SCHEDULER_NO_TASK); 597 GNUNET_assert (h->nth.timeout_task != GNUNET_SCHEDULER_NO_TASK);
589 GNUNET_SCHEDULER_cancel (h->sched, h->nth.timeout_task); 598 GNUNET_SCHEDULER_cancel (h->sched, h->nth.timeout_task);
@@ -600,7 +609,8 @@ connect_fail_continuation (struct GNUNET_CONNECTION_Handle *h)
600 { 609 {
601#if DEBUG_CONNECTION 610#if DEBUG_CONNECTION
602 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 611 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
603 "connect_timeout_continuation runs destroy_continuation\n"); 612 "connect_timeout_continuation runs destroy_continuation (%p)\n",
613 h);
604#endif 614#endif
605 h->ccs -= COCO_DESTROY_CONTINUATION; 615 h->ccs -= COCO_DESTROY_CONTINUATION;
606 GNUNET_SCHEDULER_add_continuation (h->sched, 616 GNUNET_SCHEDULER_add_continuation (h->sched,
@@ -622,15 +632,17 @@ connect_success_continuation (struct GNUNET_CONNECTION_Handle *h)
622{ 632{
623#if DEBUG_CONNECTION 633#if DEBUG_CONNECTION
624 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 634 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
625 "Connection to `%s' succeeded!\n", 635 "Connection to `%s' succeeded! (%p)\n",
626 GNUNET_a2s(h->addr, h->addrlen)); 636 GNUNET_a2s(h->addr, h->addrlen),
637 h);
627#endif 638#endif
628 /* trigger jobs that waited for the connection */ 639 /* trigger jobs that waited for the connection */
629 if (0 != (h->ccs & COCO_RECEIVE_AGAIN)) 640 if (0 != (h->ccs & COCO_RECEIVE_AGAIN))
630 { 641 {
631#if DEBUG_CONNECTION 642#if DEBUG_CONNECTION
632 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 643 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
633 "connect_success_continuation runs receive_again\n"); 644 "connect_success_continuation runs receive_again (%p)\n",
645 h);
634#endif 646#endif
635 h->ccs -= COCO_RECEIVE_AGAIN; 647 h->ccs -= COCO_RECEIVE_AGAIN;
636 h->read_task = GNUNET_SCHEDULER_add_after (h->sched, 648 h->read_task = GNUNET_SCHEDULER_add_after (h->sched,
@@ -644,7 +656,8 @@ connect_success_continuation (struct GNUNET_CONNECTION_Handle *h)
644 { 656 {
645#if DEBUG_CONNECTION 657#if DEBUG_CONNECTION
646 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 658 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
647 "connect_success_continuation runs transmit_ready, cancels timeout_task\n"); 659 "connect_success_continuation runs transmit_ready, cancels timeout_task (%p)\n",
660 h);
648#endif 661#endif
649 GNUNET_assert (h->nth.timeout_task != GNUNET_SCHEDULER_NO_TASK); 662 GNUNET_assert (h->nth.timeout_task != GNUNET_SCHEDULER_NO_TASK);
650 GNUNET_SCHEDULER_cancel (h->sched, h->nth.timeout_task); 663 GNUNET_SCHEDULER_cancel (h->sched, h->nth.timeout_task);
@@ -662,7 +675,8 @@ connect_success_continuation (struct GNUNET_CONNECTION_Handle *h)
662 { 675 {
663#if DEBUG_CONNECTION 676#if DEBUG_CONNECTION
664 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 677 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
665 "connect_success_continuation runs destroy_continuation\n"); 678 "connect_success_continuation runs destroy_continuation (%p)\n",
679 h);
666#endif 680#endif
667 h->ccs -= COCO_DESTROY_CONTINUATION; 681 h->ccs -= COCO_DESTROY_CONTINUATION;
668 GNUNET_SCHEDULER_add_continuation (h->sched, 682 GNUNET_SCHEDULER_add_continuation (h->sched,
@@ -804,9 +818,10 @@ try_connect_using_address (void *cls,
804 } 818 }
805#if DEBUG_CONNECTION 819#if DEBUG_CONNECTION
806 GNUNET_log (GNUNET_ERROR_TYPE_INFO, 820 GNUNET_log (GNUNET_ERROR_TYPE_INFO,
807 _("Trying to connect to `%s'\n"), 821 _("Trying to connect to `%s' (%p)\n"),
808 GNUNET_a2s(ap->addr, 822 GNUNET_a2s(ap->addr,
809 ap->addrlen)); 823 ap->addrlen),
824 h);
810#endif 825#endif
811 if ( (GNUNET_OK != GNUNET_NETWORK_socket_connect (ap->sock, 826 if ( (GNUNET_OK != GNUNET_NETWORK_socket_connect (ap->sock,
812 ap->addr, 827 ap->addr,
@@ -938,11 +953,6 @@ GNUNET_CONNECTION_create_from_sockaddr (struct GNUNET_SCHEDULER_Handle
938 GNUNET_break (GNUNET_OK == GNUNET_NETWORK_socket_close (s)); 953 GNUNET_break (GNUNET_OK == GNUNET_NETWORK_socket_close (s));
939 return NULL; 954 return NULL;
940 } 955 }
941#if DEBUG_CONNECTION
942 GNUNET_log (GNUNET_ERROR_TYPE_INFO,
943 _("Trying to connect to `%s'\n"),
944 GNUNET_a2s(serv_addr, addrlen));
945#endif
946 if ((GNUNET_OK != GNUNET_NETWORK_socket_connect (s, serv_addr, addrlen)) && (errno != EINPROGRESS)) 956 if ((GNUNET_OK != GNUNET_NETWORK_socket_connect (s, serv_addr, addrlen)) && (errno != EINPROGRESS))
947 { 957 {
948 /* maybe refused / unsupported address, try next */ 958 /* maybe refused / unsupported address, try next */
@@ -954,6 +964,12 @@ GNUNET_CONNECTION_create_from_sockaddr (struct GNUNET_SCHEDULER_Handle
954 ret->addr = GNUNET_malloc (addrlen); 964 ret->addr = GNUNET_malloc (addrlen);
955 memcpy (ret->addr, serv_addr, addrlen); 965 memcpy (ret->addr, serv_addr, addrlen);
956 ret->addrlen = addrlen; 966 ret->addrlen = addrlen;
967#if DEBUG_CONNECTION
968 GNUNET_log (GNUNET_ERROR_TYPE_INFO,
969 _("Trying to connect to `%s' (%p)\n"),
970 GNUNET_a2s(serv_addr, addrlen),
971 ret);
972#endif
957 return ret; 973 return ret;
958} 974}
959 975
@@ -1012,7 +1028,8 @@ signal_timeout (struct GNUNET_CONNECTION_Handle *sh)
1012 1028
1013#if DEBUG_CONNECTION 1029#if DEBUG_CONNECTION
1014 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1030 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1015 "Network signals time out to receiver!\n"); 1031 "Network signals time out to receiver (%p)!\n",
1032 sh);
1016#endif 1033#endif
1017 GNUNET_assert (NULL != (receiver = sh->receiver)); 1034 GNUNET_assert (NULL != (receiver = sh->receiver));
1018 sh->receiver = NULL; 1035 sh->receiver = NULL;
@@ -1055,9 +1072,10 @@ receive_ready (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
1055#if DEBUG_CONNECTION 1072#if DEBUG_CONNECTION
1056 if (0 == (tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN)) 1073 if (0 == (tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN))
1057 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1074 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1058 "Receive from `%s' encounters error: time out by %llums...\n", 1075 "Receive from `%s' encounters error: time out by %llums... (%p)\n",
1059 GNUNET_a2s (sh->addr, sh->addrlen), 1076 GNUNET_a2s (sh->addr, sh->addrlen),
1060 GNUNET_TIME_absolute_get_duration (sh->receive_timeout).value); 1077 GNUNET_TIME_absolute_get_duration (sh->receive_timeout).value,
1078 sh);
1061#endif 1079#endif
1062 signal_timeout (sh); 1080 signal_timeout (sh);
1063 return; 1081 return;
@@ -1067,7 +1085,8 @@ receive_ready (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
1067 /* connect failed for good */ 1085 /* connect failed for good */
1068#if DEBUG_CONNECTION 1086#if DEBUG_CONNECTION
1069 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1087 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1070 "Receive encounters error, socket closed...\n"); 1088 "Receive encounters error, socket closed... (%p)\n",
1089 sh);
1071#endif 1090#endif
1072 signal_error (sh, ECONNREFUSED); 1091 signal_error (sh, ECONNREFUSED);
1073 return; 1092 return;
@@ -1088,17 +1107,19 @@ RETRY:
1088 goto RETRY; 1107 goto RETRY;
1089#if DEBUG_CONNECTION 1108#if DEBUG_CONNECTION
1090 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1109 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1091 "Error receiving: %s\n", STRERROR (errno)); 1110 "Error receiving: %s\n",
1111 STRERROR (errno));
1092#endif 1112#endif
1093 signal_error (sh, errno); 1113 signal_error (sh, errno);
1094 return; 1114 return;
1095 } 1115 }
1096#if DEBUG_CONNECTION 1116#if DEBUG_CONNECTION
1097 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1117 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1098 "receive_ready read %u/%u bytes from `%s'!\n", 1118 "receive_ready read %u/%u bytes from `%s' (%p)!\n",
1099 (unsigned int) ret, 1119 (unsigned int) ret,
1100 sh->max, 1120 sh->max,
1101 GNUNET_a2s(sh->addr, sh->addrlen)); 1121 GNUNET_a2s(sh->addr, sh->addrlen),
1122 sh);
1102#endif 1123#endif
1103 GNUNET_assert (NULL != (receiver = sh->receiver)); 1124 GNUNET_assert (NULL != (receiver = sh->receiver));
1104 sh->receiver = NULL; 1125 sh->receiver = NULL;
@@ -1128,7 +1149,8 @@ receive_again (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
1128 /* not connected and no longer trying */ 1149 /* not connected and no longer trying */
1129#if DEBUG_CONNECTION 1150#if DEBUG_CONNECTION
1130 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1151 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1131 "Receive encounters error, socket closed...\n"); 1152 "Receive encounters error, socket closed (%p)...\n",
1153 sh);
1132#endif 1154#endif
1133 signal_error (sh, ECONNREFUSED); 1155 signal_error (sh, ECONNREFUSED);
1134 return; 1156 return;
@@ -1139,7 +1161,8 @@ receive_again (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
1139 { 1161 {
1140#if DEBUG_CONNECTION 1162#if DEBUG_CONNECTION
1141 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1163 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1142 "Receive encounters error: time out...\n"); 1164 "Receive encounters error: time out (%p)...\n",
1165 sh);
1143#endif 1166#endif
1144 signal_timeout (sh); 1167 signal_timeout (sh);
1145 return; 1168 return;
@@ -1290,15 +1313,17 @@ transmit_timeout (void *cls,
1290 1313
1291#if DEBUG_CONNECTION 1314#if DEBUG_CONNECTION
1292 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1315 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1293 "transmit_timeout running\n"); 1316 "transmit_timeout running (%p)\n",
1317 sock);
1294#endif 1318#endif
1295 sock->nth.timeout_task = GNUNET_SCHEDULER_NO_TASK; 1319 sock->nth.timeout_task = GNUNET_SCHEDULER_NO_TASK;
1296#if DEBUG_CONNECTION 1320#if DEBUG_CONNECTION
1297 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1321 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1298 "Transmit to `%s:%u/%s' fails, time out reached.\n", 1322 "Transmit to `%s:%u/%s' fails, time out reached (%p).\n",
1299 sock->hostname, 1323 sock->hostname,
1300 sock->port, 1324 sock->port,
1301 GNUNET_a2s (sock->addr, sock->addrlen)); 1325 GNUNET_a2s (sock->addr, sock->addrlen),
1326 sock);
1302#endif 1327#endif
1303 GNUNET_assert (0 != (sock->ccs & COCO_TRANSMIT_READY)); 1328 GNUNET_assert (0 != (sock->ccs & COCO_TRANSMIT_READY));
1304 sock->ccs -= COCO_TRANSMIT_READY; /* remove request */ 1329 sock->ccs -= COCO_TRANSMIT_READY; /* remove request */
@@ -1339,7 +1364,8 @@ transmit_ready (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
1339 1364
1340#if DEBUG_CONNECTION 1365#if DEBUG_CONNECTION
1341 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1366 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1342 "transmit_ready running.\n"); 1367 "transmit_ready running (%p).\n",
1368 sock);
1343#endif 1369#endif
1344 GNUNET_assert (sock->write_task != GNUNET_SCHEDULER_NO_TASK); 1370 GNUNET_assert (sock->write_task != GNUNET_SCHEDULER_NO_TASK);
1345 sock->write_task = GNUNET_SCHEDULER_NO_TASK; 1371 sock->write_task = GNUNET_SCHEDULER_NO_TASK;
@@ -1348,8 +1374,9 @@ transmit_ready (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
1348 { 1374 {
1349#if DEBUG_CONNECTION 1375#if DEBUG_CONNECTION
1350 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1376 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1351 "Transmit to `%s' fails, time out reached.\n", 1377 "Transmit to `%s' fails, time out reached (%p).\n",
1352 GNUNET_a2s (sock->addr, sock->addrlen)); 1378 GNUNET_a2s (sock->addr, sock->addrlen),
1379 sock);
1353#endif 1380#endif
1354 notify = sock->nth.notify_ready; 1381 notify = sock->nth.notify_ready;
1355 sock->nth.notify_ready = NULL; 1382 sock->nth.notify_ready = NULL;
@@ -1362,7 +1389,8 @@ transmit_ready (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
1362 { 1389 {
1363#if DEBUG_CONNECTION 1390#if DEBUG_CONNECTION
1364 GNUNET_log (GNUNET_ERROR_TYPE_INFO, 1391 GNUNET_log (GNUNET_ERROR_TYPE_INFO,
1365 _("Could not satisfy pending transmission request, socket closed or connect failed.\n")); 1392 _("Could not satisfy pending transmission request, socket closed or connect failed (%p).\n"),
1393 sock);
1366#endif 1394#endif
1367 if (NULL != sock->sock) 1395 if (NULL != sock->sock)
1368 { 1396 {
@@ -1414,10 +1442,11 @@ RETRY:
1414 } 1442 }
1415#if DEBUG_CONNECTION 1443#if DEBUG_CONNECTION
1416 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1444 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1417 "transmit_ready transmitted %u/%u bytes to `%s'\n", 1445 "transmit_ready transmitted %u/%u bytes to `%s' (%p)\n",
1418 (unsigned int) ret, 1446 (unsigned int) ret,
1419 have, 1447 have,
1420 GNUNET_a2s(sock->addr, sock->addrlen)); 1448 GNUNET_a2s(sock->addr, sock->addrlen),
1449 sock);
1421#endif 1450#endif
1422 sock->write_buffer_pos += ret; 1451 sock->write_buffer_pos += ret;
1423 if (sock->write_buffer_pos == sock->write_buffer_off) 1452 if (sock->write_buffer_pos == sock->write_buffer_off)
@@ -1433,7 +1462,8 @@ RETRY:
1433SCHEDULE_WRITE: 1462SCHEDULE_WRITE:
1434#if DEBUG_CONNECTION 1463#if DEBUG_CONNECTION
1435 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1464 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1436 "Re-scheduling transmit_ready (more to do).\n"); 1465 "Re-scheduling transmit_ready (more to do) (%p).\n",
1466 sock);
1437#endif 1467#endif
1438 if (sock->write_task == GNUNET_SCHEDULER_NO_TASK) 1468 if (sock->write_task == GNUNET_SCHEDULER_NO_TASK)
1439 sock->write_task = 1469 sock->write_task =
@@ -1479,8 +1509,9 @@ GNUNET_CONNECTION_notify_transmit_ready (struct GNUNET_CONNECTION_Handle
1479 { 1509 {
1480#if DEBUG_CONNECTION 1510#if DEBUG_CONNECTION
1481 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1511 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1482 "Transmission request of size %u fails, connection failed.\n", 1512 "Transmission request of size %u fails, connection failed (%p).\n",
1483 size); 1513 size,
1514 sock);
1484#endif 1515#endif
1485 notify (notify_cls, 0, NULL); 1516 notify (notify_cls, 0, NULL);
1486 return &sock->nth; 1517 return &sock->nth;
@@ -1499,7 +1530,8 @@ GNUNET_CONNECTION_notify_transmit_ready (struct GNUNET_CONNECTION_Handle
1499 { 1530 {
1500#if DEBUG_CONNECTION 1531#if DEBUG_CONNECTION
1501 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1532 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1502 "Scheduling transmit_ready.\n"); 1533 "Scheduling transmit_ready (%p).\n",
1534 sock);
1503#endif 1535#endif
1504 sock->write_task = GNUNET_SCHEDULER_add_write_net (sock->sched, 1536 sock->write_task = GNUNET_SCHEDULER_add_write_net (sock->sched,
1505 GNUNET_NO, 1537 GNUNET_NO,
@@ -1513,7 +1545,8 @@ GNUNET_CONNECTION_notify_transmit_ready (struct GNUNET_CONNECTION_Handle
1513 { 1545 {
1514#if DEBUG_CONNECTION 1546#if DEBUG_CONNECTION
1515 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1547 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
1516 "CCS-Scheduling transmit_ready, adding timeout task.\n"); 1548 "CCS-Scheduling transmit_ready, adding timeout task (%p).\n",
1549 sock);
1517#endif 1550#endif
1518 sock->ccs |= COCO_TRANSMIT_READY; 1551 sock->ccs |= COCO_TRANSMIT_READY;
1519 sock->nth.timeout_task = GNUNET_SCHEDULER_add_delayed (sock->sched, 1552 sock->nth.timeout_task = GNUNET_SCHEDULER_add_delayed (sock->sched,
diff --git a/src/util/scheduler.c b/src/util/scheduler.c
index f7f5759b7..08bba2ed8 100644
--- a/src/util/scheduler.c
+++ b/src/util/scheduler.c
@@ -374,9 +374,10 @@ check_ready (struct GNUNET_SCHEDULER_Handle *handle,
374 while (pos != NULL) 374 while (pos != NULL)
375 { 375 {
376#if DEBUG_TASKS 376#if DEBUG_TASKS
377 fprintf (stderr, 377 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
378 "Checking readyness of task: %llu\n", 378 "Checking readyness of task: %llu / %p\n",
379 pos->id); 379 pos->id,
380 pos->callback_cls);
380#endif 381#endif
381 next = pos->next; 382 next = pos->next;
382 if (GNUNET_YES == is_ready (handle, pos, now, rs, ws)) 383 if (GNUNET_YES == is_ready (handle, pos, now, rs, ws))
@@ -450,9 +451,10 @@ run_ready (struct GNUNET_SCHEDULER_Handle *sched)
450 tc.write_ready = pos->write_set; 451 tc.write_ready = pos->write_set;
451 pos->callback (pos->callback_cls, &tc); 452 pos->callback (pos->callback_cls, &tc);
452#if DEBUG_TASKS 453#if DEBUG_TASKS
453 fprintf (stderr, 454 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
454 "Running task: %llu\n", 455 "Running task: %llu / %p\n",
455 pos->id); 456 pos->id,
457 pos->callback_cls);
456#endif 458#endif
457 destroy_task (pos); 459 destroy_task (pos);
458 sched->tasks_run++; 460 sched->tasks_run++;
@@ -648,11 +650,6 @@ GNUNET_SCHEDULER_cancel (struct GNUNET_SCHEDULER_Handle *sched,
648 enum GNUNET_SCHEDULER_Priority p; 650 enum GNUNET_SCHEDULER_Priority p;
649 void *ret; 651 void *ret;
650 652
651#if DEBUG_TASKS
652 fprintf (stderr,
653 "Canceling task: %llu\n",
654 task);
655#endif
656 prev = NULL; 653 prev = NULL;
657 t = sched->pending; 654 t = sched->pending;
658 while (t != NULL) 655 while (t != NULL)
@@ -690,13 +687,16 @@ GNUNET_SCHEDULER_cancel (struct GNUNET_SCHEDULER_Handle *sched,
690 else 687 else
691 prev->next = t->next; 688 prev->next = t->next;
692 ret = t->callback_cls; 689 ret = t->callback_cls;
690#if DEBUG_TASKS
691 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
692 "Canceling task: %llu / %p\n",
693 task,
694 t->callback_cls);
695#endif
693 destroy_task (t); 696 destroy_task (t);
694 return ret; 697 return ret;
695} 698}
696 699
697#if DEBUG_TASKS
698#include <execinfo.h>
699#endif
700 700
701/** 701/**
702 * Continue the current execution with the given function. This is 702 * Continue the current execution with the given function. This is
@@ -726,13 +726,10 @@ GNUNET_SCHEDULER_add_continuation (struct GNUNET_SCHEDULER_Handle *sched,
726 task->priority = sched->current_priority; 726 task->priority = sched->current_priority;
727 task->run_on_shutdown = run_on_shutdown; 727 task->run_on_shutdown = run_on_shutdown;
728#if DEBUG_TASKS 728#if DEBUG_TASKS
729 { 729 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
730 void *ptrs[20]; 730 "Adding continuation task: %llu / %p\n",
731 fprintf (stderr, 731 task->id,
732 "Adding continuation task: %llu\n", 732 task->callback_cls);
733 task->id);
734 backtrace_symbols_fd (ptrs, backtrace (ptrs, 20), 2);
735 }
736#endif 733#endif
737 queue_ready_task (sched, task); 734 queue_ready_task (sched, task);
738} 735}
@@ -971,13 +968,10 @@ GNUNET_SCHEDULER_add_select (struct GNUNET_SCHEDULER_Handle * sched,
971 task->next = sched->pending; 968 task->next = sched->pending;
972 sched->pending = task; 969 sched->pending = task;
973#if DEBUG_TASKS 970#if DEBUG_TASKS
974 { 971 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
975 void *ptrs[20]; 972 "Adding task: %llu / %p\n",
976 fprintf (stderr, 973 task->id,
977 "Adding task: %llu\n", 974 task->callback_cls);
978 task->id);
979 backtrace_symbols_fd (ptrs, backtrace (ptrs, 20), 2);
980 }
981#endif 975#endif
982 return task->id; 976 return task->id;
983} 977}