aboutsummaryrefslogtreecommitdiff
path: root/src/transport/test_transport_blacklisting.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/transport/test_transport_blacklisting.c')
-rw-r--r--src/transport/test_transport_blacklisting.c208
1 files changed, 125 insertions, 83 deletions
diff --git a/src/transport/test_transport_blacklisting.c b/src/transport/test_transport_blacklisting.c
index 6cb598f2f..3696dc71a 100644
--- a/src/transport/test_transport_blacklisting.c
+++ b/src/transport/test_transport_blacklisting.c
@@ -54,13 +54,13 @@
54 54
55char *test_name; 55char *test_name;
56 56
57struct PeerContext *p1; 57struct GNUNET_TRANSPORT_TESTING_PeerContext *p1;
58 58
59struct PeerContext *p2; 59struct GNUNET_TRANSPORT_TESTING_PeerContext *p2;
60 60
61static struct GNUNET_TRANSPORT_TESTING_ConnectRequest * cc; 61static struct GNUNET_TRANSPORT_TESTING_ConnectRequest * cc;
62 62
63struct GNUNET_TRANSPORT_TESTING_handle *tth; 63struct GNUNET_TRANSPORT_TESTING_Handle *tth;
64 64
65/** 65/**
66 * How long until we give up on transmitting the message? 66 * How long until we give up on transmitting the message?
@@ -115,18 +115,18 @@ end (void *cls)
115 115
116 if (cc != NULL ) 116 if (cc != NULL )
117 { 117 {
118 GNUNET_TRANSPORT_TESTING_connect_peers_cancel (tth, cc); 118 GNUNET_TRANSPORT_TESTING_connect_peers_cancel (cc);
119 cc = NULL; 119 cc = NULL;
120 } 120 }
121 121
122 if (p1 != NULL ) 122 if (p1 != NULL )
123 { 123 {
124 GNUNET_TRANSPORT_TESTING_stop_peer (tth, p1); 124 GNUNET_TRANSPORT_TESTING_stop_peer (p1);
125 p1 = NULL; 125 p1 = NULL;
126 } 126 }
127 if (p2 != NULL ) 127 if (p2 != NULL )
128 { 128 {
129 GNUNET_TRANSPORT_TESTING_stop_peer (tth, p2); 129 GNUNET_TRANSPORT_TESTING_stop_peer (p2);
130 p2 = NULL; 130 p2 = NULL;
131 } 131 }
132} 132}
@@ -151,19 +151,19 @@ end_badly (void *cls)
151 151
152 if (cc != NULL ) 152 if (cc != NULL )
153 { 153 {
154 GNUNET_TRANSPORT_TESTING_connect_peers_cancel (tth, cc); 154 GNUNET_TRANSPORT_TESTING_connect_peers_cancel (cc);
155 cc = NULL; 155 cc = NULL;
156 } 156 }
157 if (p1 != NULL ) 157 if (p1 != NULL )
158 GNUNET_TRANSPORT_TESTING_stop_peer (tth, p1); 158 GNUNET_TRANSPORT_TESTING_stop_peer (p1);
159 if (p2 != NULL ) 159 if (p2 != NULL )
160 GNUNET_TRANSPORT_TESTING_stop_peer (tth, p2); 160 GNUNET_TRANSPORT_TESTING_stop_peer (p2);
161 161
162 ok = GNUNET_SYSERR; 162 ok = GNUNET_SYSERR;
163} 163}
164 164
165static void 165static void
166testing_connect_cb(struct PeerContext *p1, struct PeerContext *p2, void *cls) 166testing_connect_cb (void *cls)
167{ 167{
168 cc = NULL; 168 cc = NULL;
169 char *p1_c = GNUNET_strdup (GNUNET_i2s (&p1->id)); 169 char *p1_c = GNUNET_strdup (GNUNET_i2s (&p1->id));
@@ -189,7 +189,7 @@ static int started;
189 189
190 190
191static void 191static void
192start_cb(struct PeerContext *p, void *cls) 192start_cb(struct GNUNET_TRANSPORT_TESTING_PeerContext *p, void *cls)
193{ 193{
194 194
195 started++; 195 started++;
@@ -206,13 +206,17 @@ start_cb(struct PeerContext *p, void *cls)
206 sender_c, p2->no, GNUNET_i2s (&p2->id)); 206 sender_c, p2->no, GNUNET_i2s (&p2->id));
207 GNUNET_free(sender_c); 207 GNUNET_free(sender_c);
208 208
209 cc = GNUNET_TRANSPORT_TESTING_connect_peers (tth, p1, p2, &testing_connect_cb, 209 cc = GNUNET_TRANSPORT_TESTING_connect_peers (p1,
210 NULL ); 210 p2,
211 &testing_connect_cb,
212 NULL);
211 213
212} 214}
213 215
214static int check_blacklist_config (char *cfg_file, 216static int
215 struct GNUNET_PeerIdentity *peer, struct GNUNET_PeerIdentity *bl_peer) 217check_blacklist_config (const char *cfg_file,
218 struct GNUNET_PeerIdentity *peer,
219 struct GNUNET_PeerIdentity *bl_peer)
216{ 220{
217 struct GNUNET_CONFIGURATION_Handle *cfg; 221 struct GNUNET_CONFIGURATION_Handle *cfg;
218 char *section; 222 char *section;
@@ -267,32 +271,47 @@ run_stage (void *cls)
267 { 271 {
268 /* Try to connect peers successfully */ 272 /* Try to connect peers successfully */
269 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 273 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
270 "test_transport_blacklisting_cfg_peer1.conf", 1, NULL, NULL, NULL, 274 "test_transport_blacklisting_cfg_peer1.conf",
271 &start_cb, NULL ); 275 1,
276 NULL,
277 NULL,
278 NULL,
279 &start_cb,
280 NULL);
272 281
273 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 282 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
274 "test_transport_blacklisting_cfg_peer2.conf", 2, NULL, NULL, NULL, 283 "test_transport_blacklisting_cfg_peer2.conf",
275 &start_cb, NULL ); 284 2,
285 NULL,
286 NULL,
287 NULL,
288 &start_cb,
289 NULL);
276 } 290 }
277 else if (0 291 else if (0 == strcmp (test_name,
278 == strcmp (test_name, "test_transport_blacklisting_outbound_bl_full")) 292 "test_transport_blacklisting_outbound_bl_full"))
279 { 293 {
280 char * cfg_p1 = "test_transport_blacklisting_cfg_blp_peer1_full.conf"; 294 const char *cfg_p1 = "test_transport_blacklisting_cfg_blp_peer1_full.conf";
281 char * cfg_p2 = "test_transport_blacklisting_cfg_blp_peer2_full.conf"; 295 const char *cfg_p2 = "test_transport_blacklisting_cfg_blp_peer2_full.conf";
282 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
283 cfg_p1 , 1, NULL, NULL, NULL, &start_cb, NULL );
284 296
297 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
298 cfg_p1,
299 1, NULL, NULL, NULL,
300 &start_cb, NULL);
285 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 301 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
286 cfg_p2, 2, NULL, NULL, NULL, 302 cfg_p2, 2,
287 &start_cb, NULL ); 303 NULL, NULL, NULL,
304 &start_cb, NULL);
288 305
289 /* check if configuration contain correct blacklist entries */ 306 /* check if configuration contain correct blacklist entries */
290 if ((GNUNET_SYSERR == check_blacklist_config (cfg_p1, &p1->id, &p2->id)) || 307 if ( (GNUNET_SYSERR ==
291 (GNUNET_SYSERR == check_blacklist_config (cfg_p2, &p2->id, &p1->id)) ) 308 check_blacklist_config (cfg_p1, &p1->id, &p2->id)) ||
309 (GNUNET_SYSERR ==
310 check_blacklist_config (cfg_p2, &p2->id, &p1->id)) )
292 { 311 {
293 GNUNET_TRANSPORT_TESTING_stop_peer(tth, p1); 312 GNUNET_TRANSPORT_TESTING_stop_peer (p1);
294 p1 = NULL; 313 p1 = NULL;
295 GNUNET_TRANSPORT_TESTING_stop_peer(tth, p2); 314 GNUNET_TRANSPORT_TESTING_stop_peer (p2);
296 p2 = NULL; 315 p2 = NULL;
297 ok = 1; 316 ok = 1;
298 GNUNET_SCHEDULER_add_now (&end, NULL ); 317 GNUNET_SCHEDULER_add_now (&end, NULL );
@@ -302,139 +321,162 @@ run_stage (void *cls)
302 else if (0 321 else if (0
303 == strcmp (test_name, "test_transport_blacklisting_outbound_bl_plugin")) 322 == strcmp (test_name, "test_transport_blacklisting_outbound_bl_plugin"))
304 { 323 {
305 char * cfg_p1 = "test_transport_blacklisting_cfg_blp_peer1_plugin.conf"; 324 const char *cfg_p1 = "test_transport_blacklisting_cfg_blp_peer1_plugin.conf";
306 char * cfg_p2 = "test_transport_blacklisting_cfg_blp_peer2_plugin.conf"; 325 const char *cfg_p2 = "test_transport_blacklisting_cfg_blp_peer2_plugin.conf";
307 326
308 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 327 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
309 cfg_p1, 1, NULL, 328 cfg_p1,
310 NULL, NULL, &start_cb, NULL ); 329 1,
330 NULL,
331 NULL,
332 NULL,
333 &start_cb,
334 NULL);
311 335
312 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 336 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
313 cfg_p2, 2, NULL, NULL, NULL, 337 cfg_p2, 2,
314 &start_cb, NULL ); 338 NULL,
339 NULL,
340 NULL,
341 &start_cb,
342 NULL);
315 343
316 /* check if configuration contain correct blacklist entries */ 344 /* check if configuration contain correct blacklist entries */
317 if ((GNUNET_SYSERR == check_blacklist_config (cfg_p1, &p1->id, &p2->id)) || 345 if ( (GNUNET_SYSERR ==
318 (GNUNET_SYSERR == check_blacklist_config (cfg_p2, &p2->id, &p1->id)) ) 346 check_blacklist_config (cfg_p1, &p1->id, &p2->id)) ||
347 (GNUNET_SYSERR ==
348 check_blacklist_config (cfg_p2, &p2->id, &p1->id)) )
319 { 349 {
320 GNUNET_TRANSPORT_TESTING_stop_peer(tth, p1); 350 GNUNET_TRANSPORT_TESTING_stop_peer (p1);
321 p1 = NULL; 351 p1 = NULL;
322 GNUNET_TRANSPORT_TESTING_stop_peer(tth, p2); 352 GNUNET_TRANSPORT_TESTING_stop_peer (p2);
323 p2 = NULL; 353 p2 = NULL;
324 ok = 1; 354 ok = 1;
325 GNUNET_SCHEDULER_add_now (&end, NULL ); 355 GNUNET_SCHEDULER_add_now (&end, NULL );
326 } 356 }
327 } 357 }
328 else if (0 358 else if (0 == strcmp (test_name,
329 == strcmp (test_name, "test_transport_blacklisting_inbound_bl_full")) 359 "test_transport_blacklisting_inbound_bl_full"))
330 { 360 {
331 char * cfg_p1 = "test_transport_blacklisting_cfg_peer1.conf"; 361 const char *cfg_p1 = "test_transport_blacklisting_cfg_peer1.conf";
332 char * cfg_p2 = "test_transport_blacklisting_cfg_blp_peer2_full.conf"; 362 const char *cfg_p2 = "test_transport_blacklisting_cfg_blp_peer2_full.conf";
333 363
334 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 364 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
335 cfg_p1, 1, NULL, NULL, NULL, 365 cfg_p1, 1,
336 &start_cb, NULL ); 366 NULL, NULL, NULL,
367 &start_cb, NULL);
337 368
338 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 369 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
339 cfg_p2, 2, NULL, NULL, 370 cfg_p2, 2,
340 NULL, &start_cb, NULL ); 371 NULL, NULL, NULL,
372 &start_cb, NULL);
341 373
342 /* check if configuration contain correct blacklist entries */ 374 /* check if configuration contain correct blacklist entries */
343 if ((GNUNET_SYSERR == check_blacklist_config (cfg_p2, &p2->id, &p1->id)) ) 375 if ( (GNUNET_SYSERR ==
376 check_blacklist_config (cfg_p2, &p2->id, &p1->id)) )
344 { 377 {
345 GNUNET_TRANSPORT_TESTING_stop_peer(tth, p1); 378 GNUNET_TRANSPORT_TESTING_stop_peer (p1);
346 p1 = NULL; 379 p1 = NULL;
347 GNUNET_TRANSPORT_TESTING_stop_peer(tth, p2); 380 GNUNET_TRANSPORT_TESTING_stop_peer (p2);
348 p2 = NULL; 381 p2 = NULL;
349 ok = 1; 382 ok = 1;
350 GNUNET_SCHEDULER_add_now (&end, NULL ); 383 GNUNET_SCHEDULER_add_now (&end, NULL );
351 } 384 }
352 } 385 }
353 else if (0 386 else if (0 == strcmp (test_name,
354 == strcmp (test_name, "test_transport_blacklisting_inbound_bl_plugin")) 387 "test_transport_blacklisting_inbound_bl_plugin"))
355 { 388 {
356 char * cfg_p1 = "test_transport_blacklisting_cfg_peer1.conf"; 389 const char *cfg_p1 = "test_transport_blacklisting_cfg_peer1.conf";
357 char * cfg_p2 = "test_transport_blacklisting_cfg_blp_peer2_plugin.conf"; 390 const char *cfg_p2 = "test_transport_blacklisting_cfg_blp_peer2_plugin.conf";
358 391
359 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 392 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
360 cfg_p1, 1, NULL, NULL, NULL, 393 cfg_p1, 1,
361 &start_cb, NULL ); 394 NULL, NULL, NULL,
395 &start_cb, NULL);
362 396
363 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 397 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
364 cfg_p2, 2, NULL, NULL, 398 cfg_p2, 2,
365 NULL, &start_cb, NULL ); 399 NULL, NULL,
400 NULL,
401 &start_cb, NULL);
366 402
367 /* check if configuration contain correct blacklist entries */ 403 /* check if configuration contain correct blacklist entries */
368 if ((GNUNET_SYSERR == check_blacklist_config (cfg_p2, &p2->id, &p1->id)) ) 404 if ( (GNUNET_SYSERR ==
405 check_blacklist_config (cfg_p2, &p2->id, &p1->id)) )
369 { 406 {
370 GNUNET_TRANSPORT_TESTING_stop_peer(tth, p1); 407 GNUNET_TRANSPORT_TESTING_stop_peer (p1);
371 p1 = NULL; 408 p1 = NULL;
372 GNUNET_TRANSPORT_TESTING_stop_peer(tth, p2); 409 GNUNET_TRANSPORT_TESTING_stop_peer (p2);
373 p2 = NULL; 410 p2 = NULL;
374 ok = 1; 411 ok = 1;
375 GNUNET_SCHEDULER_add_now (&end, NULL ); 412 GNUNET_SCHEDULER_add_now (&end, NULL );
376 } 413 }
377 414
378 } 415 }
379 else if (0 416 else if (0 == strcmp (test_name,
380 == strcmp (test_name, "test_transport_blacklisting_multiple_plugins")) 417 "test_transport_blacklisting_multiple_plugins"))
381 { 418 {
382 char * cfg_p1 = "test_transport_blacklisting_cfg_blp_peer1_multiple_plugins.conf"; 419 const char * cfg_p1 = "test_transport_blacklisting_cfg_blp_peer1_multiple_plugins.conf";
383 char * cfg_p2 = "test_transport_blacklisting_cfg_blp_peer2_multiple_plugins.conf"; 420 const char * cfg_p2 = "test_transport_blacklisting_cfg_blp_peer2_multiple_plugins.conf";
384 421
385 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 422 p1 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
386 cfg_p1, 1, 423 cfg_p1, 1,
387 NULL, NULL, NULL, &start_cb, NULL ); 424 NULL, NULL, NULL,
425 &start_cb, NULL);
388 426
389 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth, 427 p2 = GNUNET_TRANSPORT_TESTING_start_peer (tth,
390 cfg_p2, 2, 428 cfg_p2, 2,
391 NULL, NULL, NULL, &start_cb, NULL ); 429 NULL, NULL, NULL,
430 &start_cb, NULL);
392 431
393 /* check if configuration contain correct blacklist entries */ 432 /* check if configuration contain correct blacklist entries */
394 if ((GNUNET_SYSERR == check_blacklist_config (cfg_p1, &p1->id, &p2->id)) || 433 if ( (GNUNET_SYSERR ==
395 (GNUNET_SYSERR == check_blacklist_config (cfg_p2, &p2->id, &p1->id))) 434 check_blacklist_config (cfg_p1, &p1->id, &p2->id)) ||
435 (GNUNET_SYSERR ==
436 check_blacklist_config (cfg_p2, &p2->id, &p1->id)))
396 { 437 {
397 GNUNET_TRANSPORT_TESTING_stop_peer(tth, p1); 438 GNUNET_TRANSPORT_TESTING_stop_peer (p1);
398 p1 = NULL; 439 p1 = NULL;
399 GNUNET_TRANSPORT_TESTING_stop_peer(tth, p2); 440 GNUNET_TRANSPORT_TESTING_stop_peer (p2);
400 p2 = NULL; 441 p2 = NULL;
401 ok = 1; 442 ok = 1;
402 GNUNET_SCHEDULER_add_now (&end, NULL ); 443 GNUNET_SCHEDULER_add_now (&end, NULL);
403 } 444 }
404 } 445 }
405 else 446 else
406 { 447 {
407 GNUNET_break (0); 448 GNUNET_break (0);
408 GNUNET_SCHEDULER_add_now (&end, NULL ); 449 GNUNET_SCHEDULER_add_now (&end, NULL);
409 } 450 }
410 451
411 if ((NULL == p1) || (NULL == p2)) 452 if ((NULL == p1) || (NULL == p2))
412 { 453 {
413 GNUNET_log(GNUNET_ERROR_TYPE_ERROR, "Failed to start peers\n"); 454 GNUNET_log(GNUNET_ERROR_TYPE_ERROR, "Failed to start peers\n");
414 ok = 1; 455 ok = 1;
415 GNUNET_SCHEDULER_add_now (&end, NULL ); 456 GNUNET_SCHEDULER_add_now (&end, NULL);
416 } 457 }
417 458
418 timeout_task = GNUNET_SCHEDULER_add_delayed (CONNECT_TIMEOUT, 459 timeout_task = GNUNET_SCHEDULER_add_delayed (CONNECT_TIMEOUT,
419 &connect_timeout, NULL ); 460 &connect_timeout,
461 NULL);
420 stage++; 462 stage++;
421 return; 463 return;
422 } 464 }
423 465
424 if (cc != NULL ) 466 if (cc != NULL )
425 { 467 {
426 GNUNET_TRANSPORT_TESTING_connect_peers_cancel (tth, cc); 468 GNUNET_TRANSPORT_TESTING_connect_peers_cancel (cc);
427 cc = NULL; 469 cc = NULL;
428 } 470 }
429 471
430 if (p1 != NULL ) 472 if (p1 != NULL )
431 { 473 {
432 GNUNET_TRANSPORT_TESTING_stop_peer (tth, p1); 474 GNUNET_TRANSPORT_TESTING_stop_peer (p1);
433 p1 = NULL; 475 p1 = NULL;
434 } 476 }
435 if (p2 != NULL ) 477 if (p2 != NULL )
436 { 478 {
437 GNUNET_TRANSPORT_TESTING_stop_peer (tth, p2); 479 GNUNET_TRANSPORT_TESTING_stop_peer (p2);
438 p2 = NULL; 480 p2 = NULL;
439 } 481 }
440 482
@@ -480,7 +522,7 @@ main(int argc, char *argv0[])
480{ 522{
481 ok = 1; 523 ok = 1;
482 524
483 GNUNET_TRANSPORT_TESTING_get_test_name (argv0[0], &test_name); 525 test_name = GNUNET_TRANSPORT_TESTING_get_test_name (argv0[0]);
484 526
485 GNUNET_log_setup ("test-transport-api-blacklisting", "WARNING", NULL ); 527 GNUNET_log_setup ("test-transport-api-blacklisting", "WARNING", NULL );
486 528