[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r21158 - gnunet/src/util
From: |
gnunet |
Subject: |
[GNUnet-SVN] r21158 - gnunet/src/util |
Date: |
Wed, 25 Apr 2012 17:21:53 +0200 |
Author: grothoff
Date: 2012-04-25 17:21:53 +0200 (Wed, 25 Apr 2012)
New Revision: 21158
Modified:
gnunet/src/util/server.c
gnunet/src/util/service.c
gnunet/src/util/test_service.c
Log:
-fixes
Modified: gnunet/src/util/server.c
===================================================================
--- gnunet/src/util/server.c 2012-04-25 14:54:46 UTC (rev 21157)
+++ gnunet/src/util/server.c 2012-04-25 15:21:53 UTC (rev 21158)
@@ -554,13 +554,14 @@
while (NULL != serverAddr[i])
{
seen = 0;
- for (k=0;k<i-1;k++)
- if ( (socklen[k] == socklen[i]) &&
- (0 == memcmp (serverAddr[k], serverAddr[i], socklen[i])) )
- {
- seen = 1;
- break;
- }
+ if (i > 0)
+ for (k=0;k<i-1;k++)
+ if ( (socklen[k] == socklen[i]) &&
+ (0 == memcmp (serverAddr[k], serverAddr[i], socklen[i])) )
+ {
+ seen = 1;
+ break;
+ }
if (0 != seen)
{
/* duplicate address, skip */
Modified: gnunet/src/util/service.c
===================================================================
--- gnunet/src/util/service.c 2012-04-25 14:54:46 UTC (rev 21157)
+++ gnunet/src/util/service.c 2012-04-25 15:21:53 UTC (rev 21158)
@@ -487,6 +487,11 @@
struct GNUNET_NETWORK_Handle **lsocks;
/**
+ * Task ID of the shutdown task.
+ */
+ GNUNET_SCHEDULER_TaskIdentifier shutdown_task;
+
+ /**
* Idle timeout for server.
*/
struct GNUNET_TIME_Relative timeout;
@@ -1454,6 +1459,7 @@
struct GNUNET_SERVICE_Context *service = cls;
struct GNUNET_SERVER_Handle *server = service->server;
+ service->shutdown_task = GNUNET_SCHEDULER_NO_TASK;
if (0 != (service->options & GNUNET_SERVICE_OPTION_SOFT_SHUTDOWN))
GNUNET_SERVER_stop_listening (server);
else
@@ -1501,8 +1507,8 @@
{
/* install a task that will kill the server
* process if the scheduler ever gets a shutdown signal */
- GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_FOREVER_REL, &shutdown_task,
- sctx);
+ sctx->shutdown_task = GNUNET_SCHEDULER_add_delayed
(GNUNET_TIME_UNIT_FOREVER_REL, &shutdown_task,
+ sctx);
}
sctx->my_handlers = GNUNET_malloc (sizeof (defhandlers));
memcpy (sctx->my_handlers, defhandlers, sizeof (defhandlers));
@@ -1876,6 +1882,11 @@
{
unsigned int i;
+ if (GNUNET_SCHEDULER_NO_TASK != sctx->shutdown_task)
+ {
+ GNUNET_SCHEDULER_cancel (sctx->shutdown_task);
+ sctx->shutdown_task = GNUNET_SCHEDULER_NO_TASK;
+ }
if (NULL != sctx->server)
GNUNET_SERVER_destroy (sctx->server);
GNUNET_free_non_null (sctx->my_handlers);
Modified: gnunet/src/util/test_service.c
===================================================================
--- gnunet/src/util/test_service.c 2012-04-25 14:54:46 UTC (rev 21157)
+++ gnunet/src/util/test_service.c 2012-04-25 15:21:53 UTC (rev 21158)
@@ -31,7 +31,7 @@
#include "gnunet_time_lib.h"
-#define VERBOSE GNUNET_NO
+#define VERBOSE GNUNET_YES
#define PORT 12435
@@ -59,6 +59,10 @@
GNUNET_SERVICE_stop (sctx);
sctx = NULL;
}
+ else
+ {
+ GNUNET_SCHEDULER_shutdown ();
+ }
}
@@ -70,6 +74,7 @@
if (size < sizeof (struct GNUNET_MessageHeader))
{
/* timeout */
+ GNUNET_break (0);
GNUNET_SCHEDULER_add_now (&do_stop, NULL);
ok = 1;
return 0;
@@ -273,7 +278,6 @@
NULL);
ret += check ();
ret += check ();
-
// FIXME
#ifndef MINGW
s = GNUNET_NETWORK_socket_create (PF_INET6, SOCK_STREAM, 0);
@@ -296,7 +300,6 @@
ret += check6 ();
}
ret += check_start_stop ();
-
return ret;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r21158 - gnunet/src/util,
gnunet <=