diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/cadet/gnunet-service-cadet_peer.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/cadet/gnunet-service-cadet_peer.c b/src/cadet/gnunet-service-cadet_peer.c index a312adc04..8003c05cd 100644 --- a/src/cadet/gnunet-service-cadet_peer.c +++ b/src/cadet/gnunet-service-cadet_peer.c | |||
@@ -236,6 +236,11 @@ static struct GNUNET_CORE_Handle *core_handle; | |||
236 | */ | 236 | */ |
237 | static struct GNUNET_TRANSPORT_Handle *transport_handle; | 237 | static struct GNUNET_TRANSPORT_Handle *transport_handle; |
238 | 238 | ||
239 | /** | ||
240 | * Shutdown falg. | ||
241 | */ | ||
242 | static int in_shutdown; | ||
243 | |||
239 | 244 | ||
240 | /******************************************************************************/ | 245 | /******************************************************************************/ |
241 | /***************************** DEBUG *********************************/ | 246 | /***************************** DEBUG *********************************/ |
@@ -460,7 +465,7 @@ core_disconnect (void *cls, | |||
460 | p = GNUNET_CONTAINER_multipeermap_get (peers, peer); | 465 | p = GNUNET_CONTAINER_multipeermap_get (peers, peer); |
461 | if (NULL == p) | 466 | if (NULL == p) |
462 | { | 467 | { |
463 | GNUNET_break (0); | 468 | GNUNET_break (GNUNET_YES == in_shutdown); |
464 | return; | 469 | return; |
465 | } | 470 | } |
466 | if (myid == p->id) | 471 | if (myid == p->id) |
@@ -1150,8 +1155,6 @@ queue_send (void *cls, size_t size, void *buf) | |||
1150 | /* Sanity checking */ | 1155 | /* Sanity checking */ |
1151 | if (NULL == buf || 0 == size) | 1156 | if (NULL == buf || 0 == size) |
1152 | { | 1157 | { |
1153 | GNUNET_break (0); | ||
1154 | LOG (GNUNET_ERROR_TYPE_INFO, "CORE gave buffer size 0.\n"); | ||
1155 | peer->tmt_time.abs_value_us = 0; | 1158 | peer->tmt_time.abs_value_us = 0; |
1156 | peer->core_transmit = NULL; | 1159 | peer->core_transmit = NULL; |
1157 | return 0; | 1160 | return 0; |
@@ -1671,6 +1674,7 @@ GCP_init (const struct GNUNET_CONFIGURATION_Handle *c) | |||
1671 | { | 1674 | { |
1672 | LOG (GNUNET_ERROR_TYPE_DEBUG, | 1675 | LOG (GNUNET_ERROR_TYPE_DEBUG, |
1673 | "GCP_init\n"); | 1676 | "GCP_init\n"); |
1677 | in_shutdown = GNUNET_NO; | ||
1674 | peers = GNUNET_CONTAINER_multipeermap_create (128, GNUNET_NO); | 1678 | peers = GNUNET_CONTAINER_multipeermap_create (128, GNUNET_NO); |
1675 | if (GNUNET_OK != | 1679 | if (GNUNET_OK != |
1676 | GNUNET_CONFIGURATION_get_value_number (c, "CADET", "MAX_PEERS", | 1680 | GNUNET_CONFIGURATION_get_value_number (c, "CADET", "MAX_PEERS", |
@@ -1740,6 +1744,7 @@ GCP_init (const struct GNUNET_CONFIGURATION_Handle *c) | |||
1740 | void | 1744 | void |
1741 | GCP_shutdown (void) | 1745 | GCP_shutdown (void) |
1742 | { | 1746 | { |
1747 | in_shutdown = GNUNET_YES; | ||
1743 | GNUNET_CONTAINER_multipeermap_iterate (peers, | 1748 | GNUNET_CONTAINER_multipeermap_iterate (peers, |
1744 | &shutdown_peer, | 1749 | &shutdown_peer, |
1745 | NULL); | 1750 | NULL); |