diff options
author | Sree Harsha Totakura <totakura@in.tum.de> | 2012-06-21 10:47:41 +0000 |
---|---|---|
committer | Sree Harsha Totakura <totakura@in.tum.de> | 2012-06-21 10:47:41 +0000 |
commit | cbe53564d0bb4b42d5549854c6f16cc1b7781257 (patch) | |
tree | 915f2952830536de1f2c380b75a0e7d1c8a82d2c /src/stream | |
parent | 4720597f680ae81b1a7c5e43f6d05bc1fdbe183f (diff) | |
download | gnunet-cbe53564d0bb4b42d5549854c6f16cc1b7781257.tar.gz gnunet-cbe53564d0bb4b42d5549854c6f16cc1b7781257.zip |
-stream listen timeout option
Diffstat (limited to 'src/stream')
-rw-r--r-- | src/stream/stream_api.c | 11 | ||||
-rw-r--r-- | src/stream/test_stream_sequence_wraparound.c | 6 |
2 files changed, 14 insertions, 3 deletions
diff --git a/src/stream/stream_api.c b/src/stream/stream_api.c index e27f4df1f..cd89a1de3 100644 --- a/src/stream/stream_api.c +++ b/src/stream/stream_api.c | |||
@@ -2936,6 +2936,9 @@ GNUNET_STREAM_open (const struct GNUNET_CONFIGURATION_Handle *cfg, | |||
2936 | socket->testing_set_write_sequence_number_value = va_arg (vargs, | 2936 | socket->testing_set_write_sequence_number_value = va_arg (vargs, |
2937 | uint32_t); | 2937 | uint32_t); |
2938 | break; | 2938 | break; |
2939 | case GNUNET_STREAM_OPTION_LISTEN_TIMEOUT: | ||
2940 | GNUNET_break (0); /* Option irrelevant in STREAM_open */ | ||
2941 | break; | ||
2939 | case GNUNET_STREAM_OPTION_END: | 2942 | case GNUNET_STREAM_OPTION_END: |
2940 | break; | 2943 | break; |
2941 | } | 2944 | } |
@@ -3178,6 +3181,7 @@ GNUNET_STREAM_listen (const struct GNUNET_CONFIGURATION_Handle *cfg, | |||
3178 | { | 3181 | { |
3179 | /* FIXME: Add variable args for passing configration options? */ | 3182 | /* FIXME: Add variable args for passing configration options? */ |
3180 | struct GNUNET_STREAM_ListenSocket *lsocket; | 3183 | struct GNUNET_STREAM_ListenSocket *lsocket; |
3184 | struct GNUNET_TIME_Relative listen_timeout; | ||
3181 | enum GNUNET_STREAM_Option option; | 3185 | enum GNUNET_STREAM_Option option; |
3182 | va_list vargs; | 3186 | va_list vargs; |
3183 | 3187 | ||
@@ -3196,6 +3200,7 @@ GNUNET_STREAM_listen (const struct GNUNET_CONFIGURATION_Handle *cfg, | |||
3196 | lsocket->retransmit_timeout = | 3200 | lsocket->retransmit_timeout = |
3197 | GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, default_timeout); | 3201 | GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, default_timeout); |
3198 | lsocket->testing_active = GNUNET_NO; | 3202 | lsocket->testing_active = GNUNET_NO; |
3203 | listen_timeout = TIME_REL_SECS (60); /* A minute for listen timeout */ | ||
3199 | va_start (vargs, listen_cb_cls); | 3204 | va_start (vargs, listen_cb_cls); |
3200 | do { | 3205 | do { |
3201 | option = va_arg (vargs, enum GNUNET_STREAM_Option); | 3206 | option = va_arg (vargs, enum GNUNET_STREAM_Option); |
@@ -3210,6 +3215,10 @@ GNUNET_STREAM_listen (const struct GNUNET_CONFIGURATION_Handle *cfg, | |||
3210 | lsocket->testing_set_write_sequence_number_value = va_arg (vargs, | 3215 | lsocket->testing_set_write_sequence_number_value = va_arg (vargs, |
3211 | uint32_t); | 3216 | uint32_t); |
3212 | break; | 3217 | break; |
3218 | case GNUNET_STREAM_OPTION_LISTEN_TIMEOUT: | ||
3219 | listen_timeout = GNUNET_TIME_relative_multiply | ||
3220 | (GNUNET_TIME_UNIT_MILLISECONDS, va_arg (vargs, uint32_t)); | ||
3221 | break; | ||
3213 | case GNUNET_STREAM_OPTION_END: | 3222 | case GNUNET_STREAM_OPTION_END: |
3214 | break; | 3223 | break; |
3215 | } | 3224 | } |
@@ -3223,7 +3232,7 @@ GNUNET_STREAM_listen (const struct GNUNET_CONFIGURATION_Handle *cfg, | |||
3223 | (uint32_t) lsocket->port, | 3232 | (uint32_t) lsocket->port, |
3224 | &lock_status_change_cb, lsocket); | 3233 | &lock_status_change_cb, lsocket); |
3225 | lsocket->lockmanager_acquire_timeout_task = | 3234 | lsocket->lockmanager_acquire_timeout_task = |
3226 | GNUNET_SCHEDULER_add_delayed (TIME_REL_SECS (20), | 3235 | GNUNET_SCHEDULER_add_delayed (listen_timeout, |
3227 | &lockmanager_acquire_timeout, lsocket); | 3236 | &lockmanager_acquire_timeout, lsocket); |
3228 | return lsocket; | 3237 | return lsocket; |
3229 | } | 3238 | } |
diff --git a/src/stream/test_stream_sequence_wraparound.c b/src/stream/test_stream_sequence_wraparound.c index b00de0b1c..ffd2eb5fb 100644 --- a/src/stream/test_stream_sequence_wraparound.c +++ b/src/stream/test_stream_sequence_wraparound.c | |||
@@ -353,12 +353,14 @@ run (void *cls, | |||
353 | 10, /* App port */ | 353 | 10, /* App port */ |
354 | &stream_listen_cb, | 354 | &stream_listen_cb, |
355 | NULL, | 355 | NULL, |
356 | GNUNET_STREAM_OPTION_LISTEN_TIMEOUT, | ||
357 | 30 * 1000, | ||
356 | GNUNET_STREAM_OPTION_END); | 358 | GNUNET_STREAM_OPTION_END); |
357 | GNUNET_assert (NULL != peer2_listen_socket); | 359 | GNUNET_assert (NULL != peer2_listen_socket); |
358 | GNUNET_SCHEDULER_add_delayed (TIME_REL_SECS(2), &stream_connect, &peer1); | 360 | GNUNET_SCHEDULER_add_delayed (TIME_REL_SECS(10), &stream_connect, &peer1); |
359 | abort_task = | 361 | abort_task = |
360 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply | 362 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply |
361 | (GNUNET_TIME_UNIT_SECONDS, 60), &do_abort, | 363 | (GNUNET_TIME_UNIT_SECONDS, 100), &do_abort, |
362 | NULL); | 364 | NULL); |
363 | } | 365 | } |
364 | 366 | ||