diff options
author | Sree Harsha Totakura <totakura@in.tum.de> | 2012-06-12 20:23:00 +0000 |
---|---|---|
committer | Sree Harsha Totakura <totakura@in.tum.de> | 2012-06-12 20:23:00 +0000 |
commit | b1a71d135c08eac25e42f53a6ede7e9b518c3eaa (patch) | |
tree | 91fcf06f4a457a06a79c9483351e7e64dace05a4 | |
parent | 4d36032c24e603ac8e5c2591526148ea89ddc90c (diff) | |
download | gnunet-b1a71d135c08eac25e42f53a6ede7e9b518c3eaa.tar.gz gnunet-b1a71d135c08eac25e42f53a6ede7e9b518c3eaa.zip |
testbed service build system
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | src/testbed/Makefile.am | 12 | ||||
-rw-r--r-- | src/testbed/gnunet-service-testbed.c | 122 | ||||
-rw-r--r-- | src/testbed/testbed.conf | 0 | ||||
-rw-r--r-- | src/testbed/testbed.conf.in | 12 | ||||
-rw-r--r-- | src/testbed/testbed.h | 4 |
6 files changed, 149 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac index de4817a0c..ececc8e71 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -1091,6 +1091,7 @@ src/statistics/statistics.conf | |||
1091 | src/stream/Makefile | 1091 | src/stream/Makefile |
1092 | src/template/Makefile | 1092 | src/template/Makefile |
1093 | src/testbed/Makefile | 1093 | src/testbed/Makefile |
1094 | src/testbed/testbed.conf | ||
1094 | src/testing/Makefile | 1095 | src/testing/Makefile |
1095 | src/testing_old/Makefile | 1096 | src/testing_old/Makefile |
1096 | src/topology/Makefile | 1097 | src/topology/Makefile |
diff --git a/src/testbed/Makefile.am b/src/testbed/Makefile.am index a1b290e1b..3f613b0d6 100644 --- a/src/testbed/Makefile.am +++ b/src/testbed/Makefile.am | |||
@@ -11,6 +11,18 @@ endif | |||
11 | 11 | ||
12 | pkgcfgdir= $(pkgdatadir)/config.d/ | 12 | pkgcfgdir= $(pkgdatadir)/config.d/ |
13 | 13 | ||
14 | pkgcfg_DATA = \ | ||
15 | testbed.conf | ||
16 | |||
17 | bin_PROGRAMS = \ | ||
18 | gnunet-service-testbed | ||
19 | |||
20 | gnunet_service_testbed_SOURCES = \ | ||
21 | gnunet-service-testbed.c | ||
22 | gnunet_service_testbed_LDADD = $(XLIB) \ | ||
23 | $(top_builddir)/src/util/libgnunetutil.la \ | ||
24 | $(LTLIBINTL) | ||
25 | |||
14 | dist_pkgcfg_DATA = \ | 26 | dist_pkgcfg_DATA = \ |
15 | testbed.conf | 27 | testbed.conf |
16 | 28 | ||
diff --git a/src/testbed/gnunet-service-testbed.c b/src/testbed/gnunet-service-testbed.c new file mode 100644 index 000000000..58639384e --- /dev/null +++ b/src/testbed/gnunet-service-testbed.c | |||
@@ -0,0 +1,122 @@ | |||
1 | /* | ||
2 | This file is part of GNUnet. | ||
3 | (C) 2012 Christian Grothoff (and other contributing authors) | ||
4 | |||
5 | GNUnet is free software; you can redistribute it and/or modify | ||
6 | it under the terms of the GNU General Public License as published | ||
7 | by the Free Software Foundation; either version 2, or (at your | ||
8 | option) any later version. | ||
9 | |||
10 | GNUnet is distributed in the hope that it will be useful, but | ||
11 | WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
13 | General Public License for more details. | ||
14 | |||
15 | You should have received a copy of the GNU General Public License | ||
16 | along with GNUnet; see the file COPYING. If not, write to the | ||
17 | Free Software Foundation, Inc., 59 Temple Place - Suite 330, | ||
18 | Boston, MA 02111-1307, USA. | ||
19 | */ | ||
20 | |||
21 | /** | ||
22 | * @file testbed/gnunet-service-testbed.c | ||
23 | * @brief implementation of the TESTBED service | ||
24 | * @author Sree Harsha Totakura | ||
25 | */ | ||
26 | |||
27 | #include "platform.h" | ||
28 | #include "gnunet_service_lib.h" | ||
29 | #include "gnunet_server_lib.h" | ||
30 | |||
31 | #include "testbed.h" | ||
32 | |||
33 | |||
34 | #define LOG(kind,...) \ | ||
35 | GNUNET_log (kind, __VA_ARGS__) | ||
36 | |||
37 | |||
38 | /** | ||
39 | * Message handler for GNUNET_MESSAGE_TYPE_TESTBED_INIT messages | ||
40 | * | ||
41 | * @param cls NULL | ||
42 | * @param client identification of the client | ||
43 | * @param message the actual message | ||
44 | */ | ||
45 | static void | ||
46 | handle_init (void *cls, | ||
47 | struct GNUNET_SERVER_Client *client, | ||
48 | const struct GNUNET_MessageHeader *message) | ||
49 | { | ||
50 | GNUNET_break (0); | ||
51 | } | ||
52 | |||
53 | |||
54 | /** | ||
55 | * Callback for client disconnect | ||
56 | * | ||
57 | * @param cls NULL | ||
58 | * @param client the client which has disconnected | ||
59 | */ | ||
60 | static void | ||
61 | client_disconnect_cb (void *cls, struct GNUNET_SERVER_Client *client) | ||
62 | { | ||
63 | GNUNET_break (0); | ||
64 | } | ||
65 | |||
66 | |||
67 | /** | ||
68 | * Task to clean up and shutdown nicely | ||
69 | * | ||
70 | * @param cls NULL | ||
71 | * @param tc the TaskContext from scheduler | ||
72 | */ | ||
73 | static void | ||
74 | shutdown_task (void *cls, | ||
75 | const struct GNUNET_SCHEDULER_TaskContext *tc) | ||
76 | { | ||
77 | GNUNET_break (0); | ||
78 | } | ||
79 | |||
80 | |||
81 | /** | ||
82 | * Testbed setup | ||
83 | * | ||
84 | * @param cls closure | ||
85 | * @param server the initialized server | ||
86 | * @param cfg configuration to use | ||
87 | */ | ||
88 | static void | ||
89 | testbed_run (void *cls, | ||
90 | struct GNUNET_SERVER_Handle * server, | ||
91 | const struct GNUNET_CONFIGURATION_Handle *cfg) | ||
92 | { | ||
93 | static const struct GNUNET_SERVER_MessageHandler message_handlers[] = | ||
94 | { | ||
95 | {&handle_init, NULL, GNUNET_MESSAGE_TYPE_TESTBED_INIT, 0}, | ||
96 | {NULL} | ||
97 | }; | ||
98 | GNUNET_SERVER_add_handlers (server, | ||
99 | message_handlers); | ||
100 | GNUNET_SERVER_disconnect_notify (server, | ||
101 | &client_disconnect_cb, | ||
102 | NULL); | ||
103 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_FOREVER_REL, | ||
104 | &shutdown_task, | ||
105 | NULL); | ||
106 | } | ||
107 | |||
108 | |||
109 | /** | ||
110 | * The starting point of execution | ||
111 | */ | ||
112 | int main (int argc, char *const *argv) | ||
113 | { | ||
114 | return | ||
115 | (GNUNET_OK == | ||
116 | GNUNET_SERVICE_run (argc, | ||
117 | argv, | ||
118 | "testbed", | ||
119 | GNUNET_SERVICE_OPTION_NONE, | ||
120 | &testbed_run, | ||
121 | NULL)) ? 0 : 1; | ||
122 | } | ||
diff --git a/src/testbed/testbed.conf b/src/testbed/testbed.conf deleted file mode 100644 index e69de29bb..000000000 --- a/src/testbed/testbed.conf +++ /dev/null | |||
diff --git a/src/testbed/testbed.conf.in b/src/testbed/testbed.conf.in new file mode 100644 index 000000000..2f658fddd --- /dev/null +++ b/src/testbed/testbed.conf.in | |||
@@ -0,0 +1,12 @@ | |||
1 | [testbed] | ||
2 | AUTOSTART = NO | ||
3 | @UNIXONLY@ PORT = 2101 | ||
4 | HOSTNAME = localhost | ||
5 | HOME = $SERVICEHOME | ||
6 | CONFIG = $DEFAULTCONFIG | ||
7 | BINARY = gnunet-service-testbed | ||
8 | ACCEPT_FROM = 127.0.0.1; | ||
9 | ACCEPT_FROM6 = ::1; | ||
10 | UNIXPATH = /tmp/gnunet-service-testbed.sock | ||
11 | UNIX_MATCH_UID = YES | ||
12 | UNIX_MATCH_GID = YES | ||
diff --git a/src/testbed/testbed.h b/src/testbed/testbed.h index 703ca0308..3c096399a 100644 --- a/src/testbed/testbed.h +++ b/src/testbed/testbed.h | |||
@@ -566,9 +566,9 @@ struct GNUNET_TESTBED_PeerConfigurationInformationMessage | |||
566 | struct GNUNET_MessageHeader header; | 566 | struct GNUNET_MessageHeader header; |
567 | 567 | ||
568 | /** | 568 | /** |
569 | * Peer identity of the peer that was created. | 569 | * Peer number of the peer that was created. |
570 | */ | 570 | */ |
571 | uint32_t peer_id GNUNET_PACKED; | 571 | uint32_t peer_number GNUNET_PACKED; |
572 | 572 | ||
573 | /** | 573 | /** |
574 | * Operation ID of the operation that created this event. | 574 | * Operation ID of the operation that created this event. |