[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r25902 - gnunet/src/testbed
From: |
gnunet |
Subject: |
[GNUnet-SVN] r25902 - gnunet/src/testbed |
Date: |
Fri, 25 Jan 2013 16:11:47 +0100 |
Author: harsha
Date: 2013-01-25 16:11:47 +0100 (Fri, 25 Jan 2013)
New Revision: 25902
Modified:
gnunet/src/testbed/gnunet-service-testbed.c
gnunet/src/testbed/gnunet-service-testbed.h
gnunet/src/testbed/gnunet-service-testbed_oc.c
Log:
- towards operation queues for open file descriptors
Modified: gnunet/src/testbed/gnunet-service-testbed.c
===================================================================
--- gnunet/src/testbed/gnunet-service-testbed.c 2013-01-25 14:40:32 UTC (rev
25901)
+++ gnunet/src/testbed/gnunet-service-testbed.c 2013-01-25 15:11:47 UTC (rev
25902)
@@ -69,6 +69,11 @@
struct ForwardedOperationContext *fopcq_tail;
/**
+ * Operation queue for open file descriptors
+ */
+struct OperationQueue *GST_opq_openfds;
+
+/**
* The size of the host list
*/
unsigned int GST_host_list_size;
@@ -2113,6 +2118,8 @@
GNUNET_CONFIGURATION_destroy (our_config);
/* Free hello cache */
GST_cache_clear ();
+ GNUNET_TESTBED_operation_queue_destroy_ (GST_opq_openfds);
+ GST_opq_openfds = NULL;
}
@@ -2197,6 +2204,7 @@
GNUNET_SERVER_add_handlers (server, message_handlers);
GNUNET_SERVER_disconnect_notify (server, &client_disconnect_cb, NULL);
ss_map = GNUNET_CONTAINER_multihashmap_create (5, GNUNET_NO);
+ GST_opq_openfds = GNUNET_TESTBED_operation_queue_create_ (GST_QLEN_OPENFDS);
shutdown_task_id =
GNUNET_SCHEDULER_add_delayed_with_priority (GNUNET_TIME_UNIT_FOREVER_REL,
GNUNET_SCHEDULER_PRIORITY_IDLE,
Modified: gnunet/src/testbed/gnunet-service-testbed.h
===================================================================
--- gnunet/src/testbed/gnunet-service-testbed.h 2013-01-25 14:40:32 UTC (rev
25901)
+++ gnunet/src/testbed/gnunet-service-testbed.h 2013-01-25 15:11:47 UTC (rev
25902)
@@ -55,6 +55,11 @@
#define LIST_GROW_STEP 10
/**
+ * How long should the operation queue for open file descriptors be?
+ */
+#define GST_QLEN_OPENFDS 512
+
+/**
* Default timeout for operations which may take some time
*/
#define TIMEOUT GNUNET_TIME_relative_multiply(GNUNET_TIME_UNIT_SECONDS, 15)
@@ -606,6 +611,11 @@
extern struct Slave **GST_slave_list;
/**
+ * Operation queue for open file descriptors
+ */
+extern struct OperationQueue *GST_opq_openfds;
+
+/**
* The size of the peer list
*/
extern unsigned int GST_peer_list_size;
Modified: gnunet/src/testbed/gnunet-service-testbed_oc.c
===================================================================
--- gnunet/src/testbed/gnunet-service-testbed_oc.c 2013-01-25 14:40:32 UTC
(rev 25901)
+++ gnunet/src/testbed/gnunet-service-testbed_oc.c 2013-01-25 15:11:47 UTC
(rev 25902)
@@ -1006,13 +1006,24 @@
uint32_t p2;
uint32_t peer2_host_id;
+ if (sizeof (struct GNUNET_TESTBED_OverlayConnectMessage)
+ != ntohs (message->size))
+ {
+ GNUNET_break (0);
+ GNUNET_SERVER_receive_done (client, GNUNET_SYSERR);
+ return;
+ }
msg = (const struct GNUNET_TESTBED_OverlayConnectMessage *) message;
p1 = ntohl (msg->peer1);
p2 = ntohl (msg->peer2);
+ if ((p1 >= GST_peer_list_size) || (NULL == GST_peer_list[p1]))
+ {
+ GNUNET_break (0);
+ GNUNET_SERVER_receive_done (client, GNUNET_SYSERR);
+ return;
+ }
+ peer = GST_peer_list[p1];
peer2_host_id = ntohl (msg->peer2_host_id);
- GNUNET_assert (p1 < GST_peer_list_size);
- GNUNET_assert (NULL != GST_peer_list[p1]);
- peer = GST_peer_list[p1];
operation_id = GNUNET_ntohll (msg->operation_id);
LOG_DEBUG ("Received overlay connect for peers %u and %u with op id:
0x%llx\n",
p1, p2, operation_id);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r25902 - gnunet/src/testbed,
gnunet <=