diff options
author | Matthias Wachs <wachs@net.in.tum.de> | 2012-06-29 09:26:40 +0000 |
---|---|---|
committer | Matthias Wachs <wachs@net.in.tum.de> | 2012-06-29 09:26:40 +0000 |
commit | 2265f50f2fa412d412fe239f44c0264b99d494d6 (patch) | |
tree | 4abf177ae7d3d006329da61cbc98d4553631c436 /src/transport/plugin_transport_udp.c | |
parent | 65bd2954fccfb94b0ccc91eba559d73c2852f803 (diff) | |
download | gnunet-2265f50f2fa412d412fe239f44c0264b99d494d6.tar.gz gnunet-2265f50f2fa412d412fe239f44c0264b99d494d6.zip |
- fixed session code
Diffstat (limited to 'src/transport/plugin_transport_udp.c')
-rw-r--r-- | src/transport/plugin_transport_udp.c | 39 |
1 files changed, 18 insertions, 21 deletions
diff --git a/src/transport/plugin_transport_udp.c b/src/transport/plugin_transport_udp.c index 5773614d7..5a1257845 100644 --- a/src/transport/plugin_transport_udp.c +++ b/src/transport/plugin_transport_udp.c | |||
@@ -704,7 +704,7 @@ disconnect_session (struct Session *s) | |||
704 | s, | 704 | s, |
705 | GNUNET_i2s (&s->target), | 705 | GNUNET_i2s (&s->target), |
706 | GNUNET_a2s (s->sock_addr, s->addrlen)); | 706 | GNUNET_a2s (s->sock_addr, s->addrlen)); |
707 | stop_session_timeout(s); | 707 | stop_session_timeout (s); |
708 | next = plugin->ipv4_queue_head; | 708 | next = plugin->ipv4_queue_head; |
709 | while (NULL != (udpw = next)) | 709 | while (NULL != (udpw = next)) |
710 | { | 710 | { |
@@ -2192,15 +2192,14 @@ session_timeout (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) | |||
2192 | struct Session *s = cls; | 2192 | struct Session *s = cls; |
2193 | 2193 | ||
2194 | s->timeout_task = GNUNET_SCHEDULER_NO_TASK; | 2194 | s->timeout_task = GNUNET_SCHEDULER_NO_TASK; |
2195 | 2195 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | |
2196 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Session %p was idle for %llu, disconnecting\n", | 2196 | "Session %p was idle for %llu ms, disconnecting\n", |
2197 | s, GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT.rel_value); | 2197 | s, (unsigned long long) GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT.rel_value); |
2198 | |||
2199 | /* call session destroy function */ | 2198 | /* call session destroy function */ |
2200 | disconnect_session(s); | 2199 | disconnect_session(s); |
2201 | |||
2202 | } | 2200 | } |
2203 | 2201 | ||
2202 | |||
2204 | /** | 2203 | /** |
2205 | * Start session timeout | 2204 | * Start session timeout |
2206 | */ | 2205 | */ |
@@ -2209,15 +2208,15 @@ start_session_timeout (struct Session *s) | |||
2209 | { | 2208 | { |
2210 | GNUNET_assert (NULL != s); | 2209 | GNUNET_assert (NULL != s); |
2211 | GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == s->timeout_task); | 2210 | GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == s->timeout_task); |
2212 | |||
2213 | s->timeout_task = GNUNET_SCHEDULER_add_delayed (GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT, | 2211 | s->timeout_task = GNUNET_SCHEDULER_add_delayed (GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT, |
2214 | &session_timeout, | 2212 | &session_timeout, |
2215 | s); | 2213 | s); |
2216 | 2214 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | |
2217 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Timeout for session %p set to %llu\n", | 2215 | "Timeout for session %p set to %llu ms\n", |
2218 | s, GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT.rel_value); | 2216 | s, (unsigned long long) GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT.rel_value); |
2219 | } | 2217 | } |
2220 | 2218 | ||
2219 | |||
2221 | /** | 2220 | /** |
2222 | * Increment session timeout due to activity | 2221 | * Increment session timeout due to activity |
2223 | */ | 2222 | */ |
@@ -2231,11 +2230,12 @@ reschedule_session_timeout (struct Session *s) | |||
2231 | s->timeout_task = GNUNET_SCHEDULER_add_delayed (GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT, | 2230 | s->timeout_task = GNUNET_SCHEDULER_add_delayed (GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT, |
2232 | &session_timeout, | 2231 | &session_timeout, |
2233 | s); | 2232 | s); |
2234 | 2233 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | |
2235 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Timeout rescheduled for session %p set to %llu\n", | 2234 | "Timeout rescheduled for session %p set to %llu ms\n", |
2236 | s, GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT.rel_value); | 2235 | s, (unsigned long long) GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT.rel_value); |
2237 | } | 2236 | } |
2238 | 2237 | ||
2238 | |||
2239 | /** | 2239 | /** |
2240 | * Cancel timeout | 2240 | * Cancel timeout |
2241 | */ | 2241 | */ |
@@ -2248,17 +2248,14 @@ stop_session_timeout (struct Session *s) | |||
2248 | { | 2248 | { |
2249 | GNUNET_SCHEDULER_cancel (s->timeout_task); | 2249 | GNUNET_SCHEDULER_cancel (s->timeout_task); |
2250 | s->timeout_task = GNUNET_SCHEDULER_NO_TASK; | 2250 | s->timeout_task = GNUNET_SCHEDULER_NO_TASK; |
2251 | 2251 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | |
2252 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Timeout rescheduled for session %p canceled\n", | 2252 | "Timeout stopped for session %p canceled\n", |
2253 | s, GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT.rel_value); | 2253 | s, (unsigned long long) GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT.rel_value); |
2254 | } | ||
2255 | else | ||
2256 | { | ||
2257 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Timeout for session %p was not active\n", | ||
2258 | s); | ||
2259 | } | 2254 | } |
2260 | } | 2255 | } |
2261 | 2256 | ||
2257 | |||
2258 | |||
2262 | /** | 2259 | /** |
2263 | * The exported method. Makes the core api available via a global and | 2260 | * The exported method. Makes the core api available via a global and |
2264 | * returns the udp transport API. | 2261 | * returns the udp transport API. |