diff options
author | Bart Polot <bart@net.in.tum.de> | 2015-06-26 10:07:06 +0000 |
---|---|---|
committer | Bart Polot <bart@net.in.tum.de> | 2015-06-26 10:07:06 +0000 |
commit | 4c6c3ef78b6e5875b15d9b0258508ca4f0263835 (patch) | |
tree | 7f025113e6f11a858769f3a743aaf797be84d606 /src/cadet/gnunet-service-cadet_peer.c | |
parent | d798c4ecba17799aa2c7cc85034626c592c8b0bd (diff) | |
download | gnunet-4c6c3ef78b6e5875b15d9b0258508ca4f0263835.tar.gz gnunet-4c6c3ef78b6e5875b15d9b0258508ca4f0263835.zip |
- try to retransmit in case of core error
Diffstat (limited to 'src/cadet/gnunet-service-cadet_peer.c')
-rw-r--r-- | src/cadet/gnunet-service-cadet_peer.c | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/src/cadet/gnunet-service-cadet_peer.c b/src/cadet/gnunet-service-cadet_peer.c index 8003c05cd..f99ce482f 100644 --- a/src/cadet/gnunet-service-cadet_peer.c +++ b/src/cadet/gnunet-service-cadet_peer.c | |||
@@ -754,7 +754,7 @@ peer_destroy (struct CadetPeer *peer) | |||
754 | 754 | ||
755 | 755 | ||
756 | /** | 756 | /** |
757 | * Iterator over peer hash map entries to destroy the peer during shutdown. | 757 | * Iterator over peer hash map entries to destroy the peer during in_shutdown. |
758 | * | 758 | * |
759 | * @param cls closure | 759 | * @param cls closure |
760 | * @param key current key code | 760 | * @param key current key code |
@@ -1155,8 +1155,26 @@ queue_send (void *cls, size_t size, void *buf) | |||
1155 | /* Sanity checking */ | 1155 | /* Sanity checking */ |
1156 | if (NULL == buf || 0 == size) | 1156 | if (NULL == buf || 0 == size) |
1157 | { | 1157 | { |
1158 | peer->tmt_time.abs_value_us = 0; | 1158 | LOG (GNUNET_ERROR_TYPE_DEBUG, " not allowed/\n"); |
1159 | peer->core_transmit = NULL; | 1159 | if (GNUNET_NO == in_shutdown) |
1160 | { | ||
1161 | queue = peer_get_first_message (peer); | ||
1162 | dst_id = GNUNET_PEER_resolve2 (peer->id); | ||
1163 | peer->core_transmit = | ||
1164 | GNUNET_CORE_notify_transmit_ready (core_handle, | ||
1165 | GNUNET_NO, get_priority (queue), | ||
1166 | GNUNET_TIME_UNIT_FOREVER_REL, | ||
1167 | dst_id, | ||
1168 | get_core_size (queue->size), | ||
1169 | &queue_send, | ||
1170 | peer); | ||
1171 | peer->tmt_time = GNUNET_TIME_absolute_get (); | ||
1172 | } | ||
1173 | else | ||
1174 | { | ||
1175 | peer->core_transmit = NULL; | ||
1176 | peer->tmt_time.abs_value_us = 0; | ||
1177 | } | ||
1160 | return 0; | 1178 | return 0; |
1161 | } | 1179 | } |
1162 | 1180 | ||