diff options
author | Sree Harsha Totakura <totakura@in.tum.de> | 2012-08-31 10:36:28 +0000 |
---|---|---|
committer | Sree Harsha Totakura <totakura@in.tum.de> | 2012-08-31 10:36:28 +0000 |
commit | a94a1861d123fe850d2ab5ae74cbb59b132a15ea (patch) | |
tree | a16d2518067d13f2463e83cd9dc66bdd6b733621 /src/testbed/test_testbed_api.c | |
parent | d0c55c3ee57913977b1497ea0e6f20573820b206 (diff) | |
download | gnunet-a94a1861d123fe850d2ab5ae74cbb59b132a15ea.tar.gz gnunet-a94a1861d123fe850d2ab5ae74cbb59b132a15ea.zip |
adhering to indentation standard
Diffstat (limited to 'src/testbed/test_testbed_api.c')
-rw-r--r-- | src/testbed/test_testbed_api.c | 117 |
1 files changed, 60 insertions, 57 deletions
diff --git a/src/testbed/test_testbed_api.c b/src/testbed/test_testbed_api.c index 32f65542c..caa3d09fd 100644 --- a/src/testbed/test_testbed_api.c +++ b/src/testbed/test_testbed_api.c | |||
@@ -102,27 +102,27 @@ static int result; | |||
102 | * Enumeration of sub testcases | 102 | * Enumeration of sub testcases |
103 | */ | 103 | */ |
104 | enum Test | 104 | enum Test |
105 | { | 105 | { |
106 | /** | 106 | /** |
107 | * Test cases which are not covered by the below ones | 107 | * Test cases which are not covered by the below ones |
108 | */ | 108 | */ |
109 | OTHER, | 109 | OTHER, |
110 | 110 | ||
111 | /** | 111 | /** |
112 | * Test where we get a peer config from controller | 112 | * Test where we get a peer config from controller |
113 | */ | 113 | */ |
114 | PEER_GETCONFIG, | 114 | PEER_GETCONFIG, |
115 | 115 | ||
116 | /** | 116 | /** |
117 | * Test where we connect to a service running on the peer | 117 | * Test where we connect to a service running on the peer |
118 | */ | 118 | */ |
119 | PEER_SERVICE_CONNECT, | 119 | PEER_SERVICE_CONNECT, |
120 | 120 | ||
121 | /** | 121 | /** |
122 | * Test where we get a peer's identity from controller | 122 | * Test where we get a peer's identity from controller |
123 | */ | 123 | */ |
124 | PEER_DESTROY, | 124 | PEER_DESTROY, |
125 | }; | 125 | }; |
126 | 126 | ||
127 | /** | 127 | /** |
128 | * Testing status | 128 | * Testing status |
@@ -170,7 +170,7 @@ do_abort (void *cls, const const struct GNUNET_SCHEDULER_TaskContext *tc) | |||
170 | /** | 170 | /** |
171 | * Adapter function called to establish a connection to | 171 | * Adapter function called to establish a connection to |
172 | * a service. | 172 | * a service. |
173 | * | 173 | * |
174 | * @param cls closure | 174 | * @param cls closure |
175 | * @param cfg configuration of the peer to connect to; will be available until | 175 | * @param cfg configuration of the peer to connect to; will be available until |
176 | * GNUNET_TESTBED_operation_done() is called on the operation returned | 176 | * GNUNET_TESTBED_operation_done() is called on the operation returned |
@@ -178,8 +178,7 @@ do_abort (void *cls, const const struct GNUNET_SCHEDULER_TaskContext *tc) | |||
178 | * @return service handle to return in 'op_result', NULL on error | 178 | * @return service handle to return in 'op_result', NULL on error |
179 | */ | 179 | */ |
180 | static void * | 180 | static void * |
181 | dht_connect_adapter (void *cls, | 181 | dht_connect_adapter (void *cls, const struct GNUNET_CONFIGURATION_Handle *cfg) |
182 | const struct GNUNET_CONFIGURATION_Handle *cfg) | ||
183 | { | 182 | { |
184 | GNUNET_assert (NULL == cls); | 183 | GNUNET_assert (NULL == cls); |
185 | GNUNET_assert (OTHER == sub_test); | 184 | GNUNET_assert (OTHER == sub_test); |
@@ -192,13 +191,12 @@ dht_connect_adapter (void *cls, | |||
192 | /** | 191 | /** |
193 | * Adapter function called to destroy a connection to | 192 | * Adapter function called to destroy a connection to |
194 | * a service. | 193 | * a service. |
195 | * | 194 | * |
196 | * @param cls closure | 195 | * @param cls closure |
197 | * @param op_result service handle returned from the connect adapter | 196 | * @param op_result service handle returned from the connect adapter |
198 | */ | 197 | */ |
199 | static void | 198 | static void |
200 | dht_disconnect_adapter (void *cls, | 199 | dht_disconnect_adapter (void *cls, void *op_result) |
201 | void *op_result) | ||
202 | { | 200 | { |
203 | if (NULL != op_result) | 201 | if (NULL != op_result) |
204 | GNUNET_DHT_disconnect (op_result); | 202 | GNUNET_DHT_disconnect (op_result); |
@@ -217,20 +215,20 @@ dht_disconnect_adapter (void *cls, | |||
217 | * @param cls closure | 215 | * @param cls closure |
218 | * @param event information about the event | 216 | * @param event information about the event |
219 | */ | 217 | */ |
220 | static void | 218 | static void |
221 | controller_cb(void *cls, const struct GNUNET_TESTBED_EventInformation *event) | 219 | controller_cb (void *cls, const struct GNUNET_TESTBED_EventInformation *event) |
222 | { | 220 | { |
223 | switch (event->type) | 221 | switch (event->type) |
224 | { | 222 | { |
225 | case GNUNET_TESTBED_ET_OPERATION_FINISHED: | 223 | case GNUNET_TESTBED_ET_OPERATION_FINISHED: |
226 | switch(sub_test) | 224 | switch (sub_test) |
227 | { | 225 | { |
228 | case PEER_GETCONFIG: | 226 | case PEER_GETCONFIG: |
229 | GNUNET_assert (event->details.operation_finished.operation == operation); | 227 | GNUNET_assert (event->details.operation_finished.operation == operation); |
230 | GNUNET_assert (NULL == event->details.operation_finished.op_cls); | 228 | GNUNET_assert (NULL == event->details.operation_finished.op_cls); |
231 | GNUNET_assert (NULL == event->details.operation_finished.emsg); | 229 | GNUNET_assert (NULL == event->details.operation_finished.emsg); |
232 | GNUNET_assert (GNUNET_TESTBED_PIT_CONFIGURATION == | 230 | GNUNET_assert (GNUNET_TESTBED_PIT_CONFIGURATION == |
233 | event->details.operation_finished.pit); | 231 | event->details.operation_finished.pit); |
234 | GNUNET_assert (NULL != event->details.operation_finished.op_result.cfg); | 232 | GNUNET_assert (NULL != event->details.operation_finished.op_result.cfg); |
235 | sub_test = PEER_DESTROY; | 233 | sub_test = PEER_DESTROY; |
236 | GNUNET_TESTBED_operation_done (operation); | 234 | GNUNET_TESTBED_operation_done (operation); |
@@ -241,9 +239,9 @@ controller_cb(void *cls, const struct GNUNET_TESTBED_EventInformation *event) | |||
241 | GNUNET_assert (NULL == event->details.operation_finished.op_cls); | 239 | GNUNET_assert (NULL == event->details.operation_finished.op_cls); |
242 | GNUNET_assert (NULL == event->details.operation_finished.emsg); | 240 | GNUNET_assert (NULL == event->details.operation_finished.emsg); |
243 | GNUNET_assert (GNUNET_TESTBED_PIT_GENERIC == | 241 | GNUNET_assert (GNUNET_TESTBED_PIT_GENERIC == |
244 | event->details.operation_finished.pit); | 242 | event->details.operation_finished.pit); |
245 | GNUNET_assert (NULL == | 243 | GNUNET_assert (NULL == |
246 | event->details.operation_finished.op_result.generic); | 244 | event->details.operation_finished.op_result.generic); |
247 | GNUNET_TESTBED_operation_done (operation); | 245 | GNUNET_TESTBED_operation_done (operation); |
248 | GNUNET_SCHEDULER_add_now (&do_shutdown, NULL); | 246 | GNUNET_SCHEDULER_add_now (&do_shutdown, NULL); |
249 | break; | 247 | break; |
@@ -252,27 +250,26 @@ controller_cb(void *cls, const struct GNUNET_TESTBED_EventInformation *event) | |||
252 | GNUNET_assert (NULL == event->details.operation_finished.op_cls); | 250 | GNUNET_assert (NULL == event->details.operation_finished.op_cls); |
253 | GNUNET_assert (NULL == event->details.operation_finished.emsg); | 251 | GNUNET_assert (NULL == event->details.operation_finished.emsg); |
254 | GNUNET_assert (GNUNET_TESTBED_PIT_GENERIC == | 252 | GNUNET_assert (GNUNET_TESTBED_PIT_GENERIC == |
255 | event->details.operation_finished.pit); | 253 | event->details.operation_finished.pit); |
256 | GNUNET_assert (NULL != dht_handle); | 254 | GNUNET_assert (NULL != dht_handle); |
257 | GNUNET_assert (event->details.operation_finished.op_result.generic | 255 | GNUNET_assert (event->details.operation_finished.op_result.generic == |
258 | == dht_handle); | 256 | dht_handle); |
259 | GNUNET_TESTBED_operation_done (operation); /* This results in call to | 257 | GNUNET_TESTBED_operation_done (operation); /* This results in call to |
260 | * disconnect adapter */ | 258 | * disconnect adapter */ |
261 | break; | 259 | break; |
262 | case OTHER: | 260 | case OTHER: |
263 | GNUNET_assert (0); | 261 | GNUNET_assert (0); |
264 | break; | 262 | break; |
265 | } | 263 | } |
266 | break; | 264 | break; |
267 | case GNUNET_TESTBED_ET_PEER_START: | 265 | case GNUNET_TESTBED_ET_PEER_START: |
268 | GNUNET_assert (event->details.peer_start.host == host); | 266 | GNUNET_assert (event->details.peer_start.host == host); |
269 | GNUNET_assert (event->details.peer_start.peer == peer); | 267 | GNUNET_assert (event->details.peer_start.peer == peer); |
270 | GNUNET_assert (OTHER == sub_test); | 268 | GNUNET_assert (OTHER == sub_test); |
271 | GNUNET_TESTBED_operation_done (operation); | 269 | GNUNET_TESTBED_operation_done (operation); |
272 | operation = GNUNET_TESTBED_service_connect (NULL, peer, "dht", | 270 | operation = |
273 | &dht_connect_adapter, | 271 | GNUNET_TESTBED_service_connect (NULL, peer, "dht", &dht_connect_adapter, |
274 | &dht_disconnect_adapter, | 272 | &dht_disconnect_adapter, NULL); |
275 | NULL); | ||
276 | GNUNET_assert (NULL != operation); | 273 | GNUNET_assert (NULL != operation); |
277 | break; | 274 | break; |
278 | case GNUNET_TESTBED_ET_PEER_STOP: | 275 | case GNUNET_TESTBED_ET_PEER_STOP: |
@@ -281,12 +278,12 @@ controller_cb(void *cls, const struct GNUNET_TESTBED_EventInformation *event) | |||
281 | result = GNUNET_YES; | 278 | result = GNUNET_YES; |
282 | sub_test = PEER_GETCONFIG; | 279 | sub_test = PEER_GETCONFIG; |
283 | GNUNET_TESTBED_operation_done (operation); | 280 | GNUNET_TESTBED_operation_done (operation); |
284 | operation = | 281 | operation = |
285 | GNUNET_TESTBED_peer_get_information (peer, | 282 | GNUNET_TESTBED_peer_get_information (peer, |
286 | GNUNET_TESTBED_PIT_CONFIGURATION); | 283 | GNUNET_TESTBED_PIT_CONFIGURATION); |
287 | break; | 284 | break; |
288 | default: | 285 | default: |
289 | GNUNET_assert (0); /* We should never reach this state */ | 286 | GNUNET_assert (0); /* We should never reach this state */ |
290 | } | 287 | } |
291 | } | 288 | } |
292 | 289 | ||
@@ -301,11 +298,10 @@ controller_cb(void *cls, const struct GNUNET_TESTBED_EventInformation *event) | |||
301 | * @param emsg NULL if peer is not NULL; else MAY contain the error description | 298 | * @param emsg NULL if peer is not NULL; else MAY contain the error description |
302 | */ | 299 | */ |
303 | static void | 300 | static void |
304 | peer_create_cb (void *cls, | 301 | peer_create_cb (void *cls, struct GNUNET_TESTBED_Peer *peer, const char *emsg) |
305 | struct GNUNET_TESTBED_Peer *peer, const char *emsg) | ||
306 | { | 302 | { |
307 | struct GNUNET_TESTBED_Peer **peer_ptr; | 303 | struct GNUNET_TESTBED_Peer **peer_ptr; |
308 | 304 | ||
309 | peer_ptr = cls; | 305 | peer_ptr = cls; |
310 | GNUNET_assert (NULL != peer); | 306 | GNUNET_assert (NULL != peer); |
311 | GNUNET_assert (NULL != peer_ptr); | 307 | GNUNET_assert (NULL != peer_ptr); |
@@ -322,12 +318,14 @@ peer_create_cb (void *cls, | |||
322 | * @param cls the host which has been registered | 318 | * @param cls the host which has been registered |
323 | * @param emsg the error message; NULL if host registration is successful | 319 | * @param emsg the error message; NULL if host registration is successful |
324 | */ | 320 | */ |
325 | static void | 321 | static void |
326 | registration_comp (void *cls, const char *emsg) | 322 | registration_comp (void *cls, const char *emsg) |
327 | { | 323 | { |
328 | GNUNET_assert (cls == neighbour); | 324 | GNUNET_assert (cls == neighbour); |
329 | reg_handle = NULL; | 325 | reg_handle = NULL; |
330 | operation = GNUNET_TESTBED_peer_create (controller, host, cfg, &peer_create_cb, &peer); | 326 | operation = |
327 | GNUNET_TESTBED_peer_create (controller, host, cfg, &peer_create_cb, | ||
328 | &peer); | ||
331 | GNUNET_assert (NULL != operation); | 329 | GNUNET_assert (NULL != operation); |
332 | } | 330 | } |
333 | 331 | ||
@@ -341,9 +339,8 @@ registration_comp (void *cls, const char *emsg) | |||
341 | * @param status GNUNET_OK if the startup is successfull; GNUNET_SYSERR if not, | 339 | * @param status GNUNET_OK if the startup is successfull; GNUNET_SYSERR if not, |
342 | * GNUNET_TESTBED_controller_stop() shouldn't be called in this case | 340 | * GNUNET_TESTBED_controller_stop() shouldn't be called in this case |
343 | */ | 341 | */ |
344 | static void | 342 | static void |
345 | status_cb (void *cls, | 343 | status_cb (void *cls, const struct GNUNET_CONFIGURATION_Handle *cfg, int status) |
346 | const struct GNUNET_CONFIGURATION_Handle *cfg, int status) | ||
347 | { | 344 | { |
348 | uint64_t event_mask; | 345 | uint64_t event_mask; |
349 | 346 | ||
@@ -353,21 +350,22 @@ status_cb (void *cls, | |||
353 | event_mask |= (1L << GNUNET_TESTBED_ET_PEER_STOP); | 350 | event_mask |= (1L << GNUNET_TESTBED_ET_PEER_STOP); |
354 | event_mask |= (1L << GNUNET_TESTBED_ET_CONNECT); | 351 | event_mask |= (1L << GNUNET_TESTBED_ET_CONNECT); |
355 | event_mask |= (1L << GNUNET_TESTBED_ET_OPERATION_FINISHED); | 352 | event_mask |= (1L << GNUNET_TESTBED_ET_OPERATION_FINISHED); |
356 | controller = GNUNET_TESTBED_controller_connect (cfg, host, event_mask, | 353 | controller = |
357 | &controller_cb, NULL); | 354 | GNUNET_TESTBED_controller_connect (cfg, host, event_mask, &controller_cb, |
355 | NULL); | ||
358 | GNUNET_assert (NULL != controller); | 356 | GNUNET_assert (NULL != controller); |
359 | neighbour = GNUNET_TESTBED_host_create ("localhost", NULL, 0); | 357 | neighbour = GNUNET_TESTBED_host_create ("localhost", NULL, 0); |
360 | GNUNET_assert (NULL != neighbour); | 358 | GNUNET_assert (NULL != neighbour); |
361 | reg_handle = | 359 | reg_handle = |
362 | GNUNET_TESTBED_register_host (controller, neighbour, ®istration_comp, | 360 | GNUNET_TESTBED_register_host (controller, neighbour, ®istration_comp, |
363 | neighbour); | 361 | neighbour); |
364 | GNUNET_assert (NULL != reg_handle); | 362 | GNUNET_assert (NULL != reg_handle); |
365 | } | 363 | } |
366 | 364 | ||
367 | 365 | ||
368 | 366 | ||
369 | /** | 367 | /** |
370 | * Main run function. | 368 | * Main run function. |
371 | * | 369 | * |
372 | * @param cls NULL | 370 | * @param cls NULL |
373 | * @param args arguments passed to GNUNET_PROGRAM_run | 371 | * @param args arguments passed to GNUNET_PROGRAM_run |
@@ -381,30 +379,35 @@ run (void *cls, char *const *args, const char *cfgfile, | |||
381 | host = GNUNET_TESTBED_host_create (NULL, NULL, 0); | 379 | host = GNUNET_TESTBED_host_create (NULL, NULL, 0); |
382 | GNUNET_assert (NULL != host); | 380 | GNUNET_assert (NULL != host); |
383 | cfg = GNUNET_CONFIGURATION_dup (config); | 381 | cfg = GNUNET_CONFIGURATION_dup (config); |
384 | cp = GNUNET_TESTBED_controller_start ("127.0.0.1", host, cfg, status_cb, NULL); | 382 | cp = GNUNET_TESTBED_controller_start ("127.0.0.1", host, cfg, status_cb, |
385 | abort_task = GNUNET_SCHEDULER_add_delayed | 383 | NULL); |
386 | (GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_MINUTES, 5), &do_abort, NULL); | 384 | abort_task = |
385 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply | ||
386 | (GNUNET_TIME_UNIT_MINUTES, 5), &do_abort, | ||
387 | NULL); | ||
387 | } | 388 | } |
388 | 389 | ||
389 | 390 | ||
390 | /** | 391 | /** |
391 | * Main function | 392 | * Main function |
392 | */ | 393 | */ |
393 | int main (int argc, char **argv) | 394 | int |
395 | main (int argc, char **argv) | ||
394 | { | 396 | { |
395 | int ret; | 397 | int ret; |
398 | |||
396 | char *const argv2[] = { "test_testbed_api", | 399 | char *const argv2[] = { "test_testbed_api", |
397 | "-c", "test_testbed_api.conf", | 400 | "-c", "test_testbed_api.conf", |
398 | NULL | 401 | NULL |
399 | }; | 402 | }; |
400 | struct GNUNET_GETOPT_CommandLineOption options[] = { | 403 | struct GNUNET_GETOPT_CommandLineOption options[] = { |
401 | GNUNET_GETOPT_OPTION_END | 404 | GNUNET_GETOPT_OPTION_END |
402 | }; | 405 | }; |
403 | 406 | ||
404 | result = GNUNET_SYSERR; | 407 | result = GNUNET_SYSERR; |
405 | ret = GNUNET_PROGRAM_run ((sizeof (argv2) / sizeof (char *)) - 1, argv2, | 408 | ret = |
406 | "test_testbed_api", "nohelp", options, &run, | 409 | GNUNET_PROGRAM_run ((sizeof (argv2) / sizeof (char *)) - 1, argv2, |
407 | NULL); | 410 | "test_testbed_api", "nohelp", options, &run, NULL); |
408 | if ((GNUNET_OK != ret) || (GNUNET_OK != result)) | 411 | if ((GNUNET_OK != ret) || (GNUNET_OK != result)) |
409 | return 1; | 412 | return 1; |
410 | return 0; | 413 | return 0; |