summaryrefslogtreecommitdiff
path: root/src/nat/test_nat_test.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nat/test_nat_test.c')
-rw-r--r--src/nat/test_nat_test.c105
1 files changed, 53 insertions, 52 deletions
diff --git a/src/nat/test_nat_test.c b/src/nat/test_nat_test.c
index e217c1d29..1eabab50c 100644
--- a/src/nat/test_nat_test.c
+++ b/src/nat/test_nat_test.c
@@ -29,43 +29,43 @@
29/** 29/**
30 * Time to wait before stopping NAT test, in seconds 30 * Time to wait before stopping NAT test, in seconds
31 */ 31 */
32#define TIMEOUT GNUNET_TIME_relative_multiply(GNUNET_TIME_UNIT_SECONDS, 15) 32#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 15)
33 33
34 34
35static int ret = 1; 35static int ret = 1;
36 36
37static struct GNUNET_NAT_Test *tst; 37static struct GNUNET_NAT_Test *tst;
38 38
39static struct GNUNET_SCHEDULER_Task * tsk; 39static struct GNUNET_SCHEDULER_Task *tsk;
40 40
41 41
42static void 42static void
43report_result(void *cls, 43report_result (void *cls,
44 enum GNUNET_NAT_StatusCode aret) 44 enum GNUNET_NAT_StatusCode aret)
45{ 45{
46 if (GNUNET_NAT_ERROR_TIMEOUT == aret) 46 if (GNUNET_NAT_ERROR_TIMEOUT == aret)
47 fprintf(stderr, 47 fprintf (stderr,
48 "NAT test timed out\n"); 48 "NAT test timed out\n");
49 else if (GNUNET_NAT_ERROR_SUCCESS != aret) 49 else if (GNUNET_NAT_ERROR_SUCCESS != aret)
50 fprintf(stderr, 50 fprintf (stderr,
51 "NAT test reported error %d\n", aret); 51 "NAT test reported error %d\n", aret);
52 else 52 else
53 ret = 0; 53 ret = 0;
54 GNUNET_NAT_test_stop(tst); 54 GNUNET_NAT_test_stop (tst);
55 tst = NULL; 55 tst = NULL;
56 GNUNET_SCHEDULER_cancel(tsk); 56 GNUNET_SCHEDULER_cancel (tsk);
57 tsk = NULL; 57 tsk = NULL;
58} 58}
59 59
60 60
61static void 61static void
62failed_timeout(void *cls) 62failed_timeout (void *cls)
63{ 63{
64 tsk = NULL; 64 tsk = NULL;
65 fprintf(stderr, 65 fprintf (stderr,
66 "NAT test failed to terminate on timeout\n"); 66 "NAT test failed to terminate on timeout\n");
67 ret = 2; 67 ret = 2;
68 GNUNET_NAT_test_stop(tst); 68 GNUNET_NAT_test_stop (tst);
69 tst = NULL; 69 tst = NULL;
70} 70}
71 71
@@ -74,22 +74,22 @@ failed_timeout(void *cls)
74 * Main function run with scheduler. 74 * Main function run with scheduler.
75 */ 75 */
76static void 76static void
77run(void *cls, char *const *args, const char *cfgfile, 77run (void *cls, char *const *args, const char *cfgfile,
78 const struct GNUNET_CONFIGURATION_Handle *cfg) 78 const struct GNUNET_CONFIGURATION_Handle *cfg)
79{ 79{
80 tst = 80 tst =
81 GNUNET_NAT_test_start(cfg, GNUNET_YES, 1285, 1285, TIMEOUT, 81 GNUNET_NAT_test_start (cfg, GNUNET_YES, 1285, 1285, TIMEOUT,
82 &report_result, 82 &report_result,
83 NULL); 83 NULL);
84 tsk = GNUNET_SCHEDULER_add_delayed(GNUNET_TIME_relative_multiply(TIMEOUT, 84 tsk = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply (TIMEOUT,
85 2), 85 2),
86 &failed_timeout, 86 &failed_timeout,
87 NULL); 87 NULL);
88} 88}
89 89
90 90
91int 91int
92main(int argc, char *const argv[]) 92main (int argc, char *const argv[])
93{ 93{
94 struct GNUNET_GETOPT_CommandLineOption options[] = { 94 struct GNUNET_GETOPT_CommandLineOption options[] = {
95 GNUNET_GETOPT_OPTION_END 95 GNUNET_GETOPT_OPTION_END
@@ -103,37 +103,38 @@ main(int argc, char *const argv[])
103 NULL 103 NULL
104 }; 104 };
105 105
106 GNUNET_log_setup("test-nat-test", 106 GNUNET_log_setup ("test-nat-test",
107 "WARNING", 107 "WARNING",
108 NULL); 108 NULL);
109 109
110 nat_res = GNUNET_OS_check_helper_binary("gnunet-nat-server", GNUNET_NO, NULL); 110 nat_res = GNUNET_OS_check_helper_binary ("gnunet-nat-server", GNUNET_NO,
111 NULL);
111 if (GNUNET_SYSERR == nat_res) 112 if (GNUNET_SYSERR == nat_res)
112 { 113 {
113 GNUNET_log(GNUNET_ERROR_TYPE_WARNING, 114 GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
114 "Cannot run NAT test: `%s' file not found\n", 115 "Cannot run NAT test: `%s' file not found\n",
115 "gnunet-nat-server"); 116 "gnunet-nat-server");
116 return 0; 117 return 0;
117 } 118 }
118 119
119 gns = GNUNET_OS_start_process(GNUNET_YES, 120 gns = GNUNET_OS_start_process (GNUNET_YES,
120 GNUNET_OS_INHERIT_STD_OUT_AND_ERR, 121 GNUNET_OS_INHERIT_STD_OUT_AND_ERR,
121 NULL, NULL, NULL, 122 NULL, NULL, NULL,
122 "gnunet-nat-server", 123 "gnunet-nat-server",
123 "gnunet-nat-server", 124 "gnunet-nat-server",
124 "-c", "test_nat_test_data.conf", 125 "-c", "test_nat_test_data.conf",
125 "12345", NULL); 126 "12345", NULL);
126 GNUNET_assert(NULL != gns); 127 GNUNET_assert (NULL != gns);
127 GNUNET_PROGRAM_run(3, argv_prog, 128 GNUNET_PROGRAM_run (3, argv_prog,
128 "test-nat-test", "nohelp", 129 "test-nat-test", "nohelp",
129 options, &run, 130 options, &run,
130 NULL); 131 NULL);
131 GNUNET_break(0 == GNUNET_OS_process_kill(gns, GNUNET_TERM_SIG)); 132 GNUNET_break (0 == GNUNET_OS_process_kill (gns, GNUNET_TERM_SIG));
132 GNUNET_break(GNUNET_OK == GNUNET_OS_process_wait(gns)); 133 GNUNET_break (GNUNET_OK == GNUNET_OS_process_wait (gns));
133 GNUNET_OS_process_destroy(gns); 134 GNUNET_OS_process_destroy (gns);
134 if (0 != ret) 135 if (0 != ret)
135 fprintf(stderr, 136 fprintf (stderr,
136 "NAT test failed to report success\n"); 137 "NAT test failed to report success\n");
137 return ret; 138 return ret;
138} 139}
139 140