diff options
author | xrs <xrs@mail36.net> | 2018-06-25 16:53:01 +0200 |
---|---|---|
committer | xrs <xrs@mail36.net> | 2018-06-25 16:53:01 +0200 |
commit | b96052f1d3b8bb05f1868bd809fcb6e4f6569a4c (patch) | |
tree | d70c5939cc99d43e29ce63a4faa9ef334de0c81d | |
parent | 8405df1e1968b92d38e8bcebeee1471444410d97 (diff) | |
parent | 1c9e2fc460acce152ab6374b14b1e231ac455f57 (diff) | |
download | gnunet-b96052f1d3b8bb05f1868bd809fcb6e4f6569a4c.tar.gz gnunet-b96052f1d3b8bb05f1868bd809fcb6e4f6569a4c.zip |
Merge branch 'master' of ssh://gnunet.org/gnunet
71 files changed, 1923 insertions, 295 deletions
diff --git a/.gitignore b/.gitignore index 46dc14a98..0959a9597 100644 --- a/.gitignore +++ b/.gitignore | |||
@@ -41,7 +41,6 @@ INSTALL | |||
41 | confdefs.h | 41 | confdefs.h |
42 | confdefs.c | 42 | confdefs.c |
43 | confdefs.err | 43 | confdefs.err |
44 | guix-env-gillmann.scm | ||
45 | src/namestore/test_namestore_api_zone_to_name | 44 | src/namestore/test_namestore_api_zone_to_name |
46 | src/credential/gnunet-credential | 45 | src/credential/gnunet-credential |
47 | src/credential/gnunet-service-credential | 46 | src/credential/gnunet-service-credential |
diff --git a/configure.ac b/configure.ac index 204859556..c8e316416 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -58,7 +58,7 @@ fi | |||
58 | # Use Linux interface name unless the OS has a different preference | 58 | # Use Linux interface name unless the OS has a different preference |
59 | DEFAULT_INTERFACE="\"eth0\"" | 59 | DEFAULT_INTERFACE="\"eth0\"" |
60 | 60 | ||
61 | funcstocheck="getnameinfo gethostname gethostbyname gethostbyaddr getaddrinfo" | 61 | funcstocheck="getnameinfo gethostname gethostbyname gethostbyaddr getaddrinfo getaddrinfo_a" |
62 | 62 | ||
63 | # Srcdir in a form that native compiler understands (i.e. DOS path on W32) | 63 | # Srcdir in a form that native compiler understands (i.e. DOS path on W32) |
64 | native_srcdir=$srcdir | 64 | native_srcdir=$srcdir |
@@ -213,10 +213,19 @@ else | |||
213 | AC_MSG_WARN([warning: 'iptables' not found.]) | 213 | AC_MSG_WARN([warning: 'iptables' not found.]) |
214 | fi | 214 | fi |
215 | 215 | ||
216 | |||
217 | AC_CHECK_PROG(VAR_IFCONFIG_BINARY, ifconfig, true, false) | 216 | AC_CHECK_PROG(VAR_IFCONFIG_BINARY, ifconfig, true, false) |
218 | AC_MSG_WARN([warning: 'ifconfig' not found.]) | 217 | AC_MSG_WARN([warning: 'ifconfig' not found.]) |
219 | 218 | ||
219 | # miniupnpc / upnpc binary is a soft runtime requirement | ||
220 | AC_PATH_TARGET_TOOL(VAR_UPNPC_BINARY, upnpc, false) | ||
221 | |||
222 | if test x"$VAR_UPNPC_BINARY" != x"false" | ||
223 | then | ||
224 | AC_DEFINE_UNQUOTED([UPNPC], "$VAR_UPNPC_BINARY", [Path to upnpc binary]) | ||
225 | else | ||
226 | AC_MSG_WARN([warning: 'upnpc' binary not found.]) | ||
227 | fi | ||
228 | |||
220 | AC_CHECK_MEMBER(struct tm.tm_gmtoff, | 229 | AC_CHECK_MEMBER(struct tm.tm_gmtoff, |
221 | [AC_DEFINE(HAVE_TM_GMTOFF, 1, | 230 | [AC_DEFINE(HAVE_TM_GMTOFF, 1, |
222 | [Define if struct tm has the tm_gmtoff member.])], | 231 | [Define if struct tm has the tm_gmtoff member.])], |
@@ -230,6 +239,10 @@ AC_CHECK_DECLS([_stati64]) | |||
230 | # will be more selective! | 239 | # will be more selective! |
231 | SAVE_LIBS=$LIBS | 240 | SAVE_LIBS=$LIBS |
232 | 241 | ||
242 | have_addrinfo_a=0 | ||
243 | AC_CHECK_LIB(anl, getaddrinfo_a, [have_addrinfo_a=1 AC_DEFINE(HAVE_GETADDRINFO_A,1,[getaddrinfo_a supported])]) | ||
244 | AM_CONDITIONAL(HAVE_GETADDRINFO_A, [test "$have_addrinfo_a" = 1]) | ||
245 | |||
233 | # tests only run on Windows | 246 | # tests only run on Windows |
234 | if test "x$build_target" = "xmingw" | 247 | if test "x$build_target" = "xmingw" |
235 | then | 248 | then |
@@ -409,7 +422,32 @@ fi | |||
409 | 422 | ||
410 | # check for jansson library | 423 | # check for jansson library |
411 | jansson=0 | 424 | jansson=0 |
412 | AC_CHECK_HEADER([jansson.h],jansson=1) | 425 | AC_MSG_CHECKING(for libjansson) |
426 | AC_ARG_WITH(jansson, | ||
427 | [ --with-jansson=PFX base of libjansson installation], | ||
428 | [AC_MSG_RESULT([$with_jansson]) | ||
429 | case $with_jansson in | ||
430 | no) | ||
431 | ;; | ||
432 | yes) | ||
433 | AC_CHECK_HEADERS(jansson.h, | ||
434 | AC_CHECK_LIB([jansson], [json_loads], | ||
435 | jansson=1)) | ||
436 | ;; | ||
437 | *) | ||
438 | LDFLAGS="-L$with_jansson/lib $LDFLAGS" | ||
439 | CPPFLAGS="-I$with_jansson/include $CPPFLAGS" | ||
440 | AC_CHECK_HEADERS(jansson.h, | ||
441 | AC_CHECK_LIB([jansson], [json_loads], | ||
442 | EXT_LIB_PATH="-L$with_jansson/lib $EXT_LIB_PATH" | ||
443 | jansson=1)) | ||
444 | ;; | ||
445 | esac | ||
446 | ], | ||
447 | [AC_MSG_RESULT([--with-jansson not specified]) | ||
448 | AC_CHECK_HEADERS(jansson.h, | ||
449 | AC_CHECK_LIB([jansson], [json_loads], | ||
450 | jansson=1))]) | ||
413 | AM_CONDITIONAL(HAVE_JANSSON, [test "$jansson" = 1]) | 451 | AM_CONDITIONAL(HAVE_JANSSON, [test "$jansson" = 1]) |
414 | if test "x$jansson" = x1 | 452 | if test "x$jansson" = x1 |
415 | then | 453 | then |
@@ -418,6 +456,7 @@ else | |||
418 | AC_DEFINE([HAVE_JANSSON],[0],[Lacking jansson library]) | 456 | AC_DEFINE([HAVE_JANSSON],[0],[Lacking jansson library]) |
419 | fi | 457 | fi |
420 | 458 | ||
459 | |||
421 | # check for libpulse(audio) library | 460 | # check for libpulse(audio) library |
422 | pulse=0 | 461 | pulse=0 |
423 | AC_CHECK_LIB(pulse,pa_stream_peek, | 462 | AC_CHECK_LIB(pulse,pa_stream_peek, |
@@ -1511,7 +1550,7 @@ AC_LINK_IFELSE( | |||
1511 | ],[ | 1550 | ],[ |
1512 | AC_DEFINE_UNQUOTED([HAVE_GETADDRINFO],1,[Define this if getaddrinfo() is available]) | 1551 | AC_DEFINE_UNQUOTED([HAVE_GETADDRINFO],1,[Define this if getaddrinfo() is available]) |
1513 | ],[ | 1552 | ],[ |
1514 | AC_DEFINE_UNQUOTED([HAVE_GETADDRINFO],1,[Define this if getaddrinfo() is available]) | 1553 | AC_DEFINE_UNQUOTED([HAVE_GETADDRINFO],0,[Define this if getaddrinfo() is available]) |
1515 | ]) | 1554 | ]) |
1516 | 1555 | ||
1517 | else | 1556 | else |
@@ -1781,6 +1820,10 @@ then | |||
1781 | AC_MSG_NOTICE([WARNING: jansson library not found. json support will not be compiled.]) | 1820 | AC_MSG_NOTICE([WARNING: jansson library not found. json support will not be compiled.]) |
1782 | fi | 1821 | fi |
1783 | 1822 | ||
1823 | # | ||
1824 | # FIXME: `some modules' -> be more specific which exact modules. | ||
1825 | # | ||
1826 | |||
1784 | # warn user if iptables is not found | 1827 | # warn user if iptables is not found |
1785 | if test "$VAR_IPTABLES_BINARY" = "false" | 1828 | if test "$VAR_IPTABLES_BINARY" = "false" |
1786 | then | 1829 | then |
@@ -1793,6 +1836,12 @@ then | |||
1793 | AC_MSG_NOTICE([WARNING: ifconfig not found. some modules may not have full functionality.]) | 1836 | AC_MSG_NOTICE([WARNING: ifconfig not found. some modules may not have full functionality.]) |
1794 | fi | 1837 | fi |
1795 | 1838 | ||
1839 | # warn user if upnpc binary is not found | ||
1840 | if test "$VAR_UPNPC_BINARY" = "false" | ||
1841 | then | ||
1842 | AC_MSG_NOTICE([WARNING: upnpc binary not found. some modules may not have full functionality.]) | ||
1843 | fi | ||
1844 | |||
1796 | #gnutls | 1845 | #gnutls |
1797 | if test x$gnutls != xtrue | 1846 | if test x$gnutls != xtrue |
1798 | then | 1847 | then |
diff --git a/contrib/branding/logo/lynXified-amirouche-anonymous-v3.png b/contrib/branding/logo/lynXified-amirouche-anonymous-v3.png new file mode 100644 index 000000000..52d7b24fd --- /dev/null +++ b/contrib/branding/logo/lynXified-amirouche-anonymous-v3.png | |||
Binary files differ | |||
diff --git a/contrib/branding/logo/lynXified-amirouche-v3.svg b/contrib/branding/logo/lynXified-amirouche-v3.svg new file mode 100644 index 000000000..b8dd1ac67 --- /dev/null +++ b/contrib/branding/logo/lynXified-amirouche-v3.svg | |||
@@ -0,0 +1,918 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||
2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> | ||
3 | |||
4 | <svg | ||
5 | xmlns:dc="http://purl.org/dc/elements/1.1/" | ||
6 | xmlns:cc="http://creativecommons.org/ns#" | ||
7 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | ||
8 | xmlns:svg="http://www.w3.org/2000/svg" | ||
9 | xmlns="http://www.w3.org/2000/svg" | ||
10 | xmlns:xlink="http://www.w3.org/1999/xlink" | ||
11 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" | ||
12 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" | ||
13 | width="400" | ||
14 | height="300" | ||
15 | id="svg2" | ||
16 | version="1.1" | ||
17 | inkscape:version="0.92.2 5c3e80d, 2017-08-06" | ||
18 | sodipodi:docname="lynXified-amirouche-v3.svg" | ||
19 | inkscape:export-filename="lynXified-amirouche-anonymous-v3.png" | ||
20 | inkscape:export-xdpi="192" | ||
21 | inkscape:export-ydpi="192"> | ||
22 | <title | ||
23 | id="title3310">Guix System Distribution (Logo)</title> | ||
24 | <defs | ||
25 | id="defs4"> | ||
26 | <linearGradient | ||
27 | id="gnunet"> | ||
28 | <stop | ||
29 | id="stop9516" | ||
30 | offset="0" | ||
31 | style="stop-color:#ff0000;stop-opacity:0.58431375;" /> | ||
32 | <stop | ||
33 | id="stop9518" | ||
34 | offset="1" | ||
35 | style="stop-color:#ffcc00;stop-opacity:1;" /> | ||
36 | </linearGradient> | ||
37 | <inkscape:path-effect | ||
38 | effect="vonkoch" | ||
39 | id="path-effect8912" | ||
40 | is_visible="true" | ||
41 | ref_path="m 386.97986,1494.3277 h 79.02013" | ||
42 | generator="m 386.97986,1552.8408 h 26.34004 m 26.34005,0 h 26.34004" | ||
43 | similar_only="false" | ||
44 | nbgenerations="1" | ||
45 | drawall="true" | ||
46 | maxComplexity="1000" /> | ||
47 | <linearGradient | ||
48 | id="linearGradient4094"> | ||
49 | <stop | ||
50 | id="stop4096" | ||
51 | offset="0" | ||
52 | style="stop-color:#232323;stop-opacity:1;" /> | ||
53 | <stop | ||
54 | id="stop4098" | ||
55 | offset="1" | ||
56 | style="stop-color:#4d4d4d;stop-opacity:1;" /> | ||
57 | </linearGradient> | ||
58 | <linearGradient | ||
59 | id="linearGradient4014"> | ||
60 | <stop | ||
61 | id="stop4016" | ||
62 | offset="0" | ||
63 | style="stop-color:#a0a0a0;stop-opacity:1;" /> | ||
64 | <stop | ||
65 | id="stop4018" | ||
66 | offset="1" | ||
67 | style="stop-color:#ffffff;stop-opacity:1;" /> | ||
68 | </linearGradient> | ||
69 | <linearGradient | ||
70 | id="linearGradient4678"> | ||
71 | <stop | ||
72 | id="stop4680" | ||
73 | offset="0" | ||
74 | style="stop-color:#e5e5e5;stop-opacity:1;" /> | ||
75 | <stop | ||
76 | id="stop4682" | ||
77 | offset="1" | ||
78 | style="stop-color:#d3cdcd;stop-opacity:1;" /> | ||
79 | </linearGradient> | ||
80 | <linearGradient | ||
81 | id="linearGradient4341"> | ||
82 | <stop | ||
83 | style="stop-color:#333333;stop-opacity:1;" | ||
84 | offset="0" | ||
85 | id="stop4343" /> | ||
86 | <stop | ||
87 | style="stop-color:#484848;stop-opacity:1;" | ||
88 | offset="1" | ||
89 | id="stop4345" /> | ||
90 | </linearGradient> | ||
91 | <linearGradient | ||
92 | id="linearGradient4696-5"> | ||
93 | <stop | ||
94 | style="stop-color:#ffb638;stop-opacity:1;" | ||
95 | offset="0" | ||
96 | id="stop4698-6" /> | ||
97 | <stop | ||
98 | style="stop-color:#f0ae26;stop-opacity:1;" | ||
99 | offset="1" | ||
100 | id="stop4700-2" /> | ||
101 | </linearGradient> | ||
102 | <linearGradient | ||
103 | id="linearGradient4702-3-6"> | ||
104 | <stop | ||
105 | style="stop-color:#ff0000;stop-opacity:0.58431375;" | ||
106 | offset="0" | ||
107 | id="stop4704-1" /> | ||
108 | <stop | ||
109 | style="stop-color:#ffcc00;stop-opacity:1;" | ||
110 | offset="1" | ||
111 | id="stop4706-8" /> | ||
112 | </linearGradient> | ||
113 | <color-profile | ||
114 | id="color-profile26" | ||
115 | xlink:href="/usr/share/color/icc/ghostscript/ps_cmyk.icc" | ||
116 | name="Artifex-PS-CMYK-Profile" /> | ||
117 | <linearGradient | ||
118 | inkscape:collect="always" | ||
119 | xlink:href="#linearGradient4702-3-6" | ||
120 | id="linearGradient3138" | ||
121 | gradientUnits="userSpaceOnUse" | ||
122 | gradientTransform="matrix(-0.88803314,0,0,0.88803314,595.57001,1106.9291)" | ||
123 | x1="142.96875" | ||
124 | y1="63.65625" | ||
125 | x2="177.04297" | ||
126 | y2="69.791016" /> | ||
127 | <linearGradient | ||
128 | inkscape:collect="always" | ||
129 | xlink:href="#linearGradient4696-5" | ||
130 | id="linearGradient3141" | ||
131 | gradientUnits="userSpaceOnUse" | ||
132 | gradientTransform="matrix(-0.49726789,0,0,0.49726789,555.31016,722.70088)" | ||
133 | x1="108.08774" | ||
134 | y1="1025.709" | ||
135 | x2="80.655251" | ||
136 | y2="1043.709" /> | ||
137 | <linearGradient | ||
138 | inkscape:collect="always" | ||
139 | xlink:href="#linearGradient4702-3-6" | ||
140 | id="linearGradient3144" | ||
141 | gradientUnits="userSpaceOnUse" | ||
142 | gradientTransform="matrix(0.88803314,0,0,0.88803314,415.18739,350.00262)" | ||
143 | x1="113.5146" | ||
144 | y1="1004.8033" | ||
145 | x2="78.000107" | ||
146 | y2="922.07178" /> | ||
147 | <linearGradient | ||
148 | inkscape:collect="always" | ||
149 | xlink:href="#linearGradient4702-3-6" | ||
150 | id="linearGradient3148" | ||
151 | gradientUnits="userSpaceOnUse" | ||
152 | gradientTransform="matrix(0.88803314,0,0,0.88803314,415.2161,1106.9294)" | ||
153 | x1="142.96875" | ||
154 | y1="63.65625" | ||
155 | x2="176.60477" | ||
156 | y2="70.667412" /> | ||
157 | <linearGradient | ||
158 | inkscape:collect="always" | ||
159 | xlink:href="#linearGradient4702-3-6" | ||
160 | id="linearGradient3780" | ||
161 | gradientUnits="userSpaceOnUse" | ||
162 | gradientTransform="matrix(0.88803314,0,0,0.88803314,415.2161,1106.9294)" | ||
163 | x1="142.96875" | ||
164 | y1="63.65625" | ||
165 | x2="176.60477" | ||
166 | y2="70.667412" /> | ||
167 | <linearGradient | ||
168 | inkscape:collect="always" | ||
169 | xlink:href="#linearGradient4702-3-6" | ||
170 | id="linearGradient3782" | ||
171 | gradientUnits="userSpaceOnUse" | ||
172 | gradientTransform="matrix(0.88803314,0,0,0.88803314,415.18739,350.00262)" | ||
173 | x1="113.5146" | ||
174 | y1="1004.8033" | ||
175 | x2="78.000107" | ||
176 | y2="922.07178" /> | ||
177 | <linearGradient | ||
178 | inkscape:collect="always" | ||
179 | xlink:href="#linearGradient4696-5" | ||
180 | id="linearGradient3784" | ||
181 | gradientUnits="userSpaceOnUse" | ||
182 | gradientTransform="matrix(-0.49726789,0,0,0.49726789,555.31016,722.70088)" | ||
183 | x1="108.08774" | ||
184 | y1="1025.709" | ||
185 | x2="80.655251" | ||
186 | y2="1043.709" /> | ||
187 | <linearGradient | ||
188 | inkscape:collect="always" | ||
189 | xlink:href="#linearGradient4702-3-6" | ||
190 | id="linearGradient3786" | ||
191 | gradientUnits="userSpaceOnUse" | ||
192 | gradientTransform="matrix(-0.88803314,0,0,0.88803314,595.57001,1106.9291)" | ||
193 | x1="142.96875" | ||
194 | y1="63.65625" | ||
195 | x2="177.04297" | ||
196 | y2="69.791016" /> | ||
197 | <filter | ||
198 | style="color-interpolation-filters:sRGB" | ||
199 | inkscape:label="Cross Blur" | ||
200 | id="filter9204"> | ||
201 | <feColorMatrix | ||
202 | in="SourceGraphic" | ||
203 | values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 -0.2125 -0.7154 -0.0721 1 0 " | ||
204 | result="colormatrix" | ||
205 | id="feColorMatrix9194" /> | ||
206 | <feComposite | ||
207 | in="SourceGraphic" | ||
208 | in2="colormatrix" | ||
209 | operator="arithmetic" | ||
210 | k2="1" | ||
211 | k3="0" | ||
212 | k4="0" | ||
213 | result="composite" | ||
214 | id="feComposite9196" | ||
215 | k1="0" /> | ||
216 | <feGaussianBlur | ||
217 | stdDeviation="5 0.01" | ||
218 | result="blur1" | ||
219 | id="feGaussianBlur9198" /> | ||
220 | <feGaussianBlur | ||
221 | in="composite" | ||
222 | stdDeviation="0.01 5" | ||
223 | result="blur2" | ||
224 | id="feGaussianBlur9200" /> | ||
225 | <feBlend | ||
226 | in="blur2" | ||
227 | in2="blur1" | ||
228 | mode="darken" | ||
229 | result="blend" | ||
230 | id="feBlend9202" /> | ||
231 | </filter> | ||
232 | <filter | ||
233 | style="color-interpolation-filters:sRGB" | ||
234 | inkscape:label="Blur" | ||
235 | id="filter9330"> | ||
236 | <feGaussianBlur | ||
237 | stdDeviation="2 2" | ||
238 | result="blur" | ||
239 | id="feGaussianBlur9328" /> | ||
240 | </filter> | ||
241 | </defs> | ||
242 | <sodipodi:namedview | ||
243 | id="base" | ||
244 | pagecolor="#ffffff" | ||
245 | bordercolor="#e73520" | ||
246 | borderopacity="1" | ||
247 | inkscape:pageopacity="0.0" | ||
248 | inkscape:pageshadow="2" | ||
249 | inkscape:zoom="2" | ||
250 | inkscape:cx="185.65271" | ||
251 | inkscape:cy="142.71577" | ||
252 | inkscape:document-units="px" | ||
253 | inkscape:current-layer="g950" | ||
254 | showgrid="true" | ||
255 | inkscape:window-width="1600" | ||
256 | inkscape:window-height="835" | ||
257 | inkscape:window-x="0" | ||
258 | inkscape:window-y="0" | ||
259 | inkscape:window-maximized="1" | ||
260 | inkscape:showpageshadow="false" | ||
261 | showborder="true" | ||
262 | borderlayer="true" | ||
263 | inkscape:object-nodes="true" | ||
264 | inkscape:snap-global="true" | ||
265 | showguides="true" | ||
266 | inkscape:guide-bbox="true" | ||
267 | objecttolerance="20" | ||
268 | inkscape:snap-tangential="true" | ||
269 | inkscape:snap-perpendicular="true" | ||
270 | inkscape:pagecheckerboard="true" | ||
271 | fit-margin-top="10" | ||
272 | fit-margin-left="10" | ||
273 | fit-margin-right="10" | ||
274 | fit-margin-bottom="10" | ||
275 | inkscape:snap-path-clip="true" | ||
276 | inkscape:snap-path-mask="true"> | ||
277 | <sodipodi:guide | ||
278 | position="-307.43549,820.27825" | ||
279 | orientation="1,0" | ||
280 | id="guide5092" | ||
281 | inkscape:locked="false" /> | ||
282 | <inkscape:grid | ||
283 | type="xygrid" | ||
284 | id="grid8783" | ||
285 | originx="0" | ||
286 | originy="0" | ||
287 | spacingx="5" | ||
288 | spacingy="5" /> | ||
289 | <sodipodi:guide | ||
290 | position="-280.81043,809.79316" | ||
291 | orientation="0,1" | ||
292 | id="guide8844" | ||
293 | inkscape:locked="false" /> | ||
294 | <sodipodi:guide | ||
295 | position="-297.44255,799.75126" | ||
296 | orientation="1,0" | ||
297 | id="guide8846" | ||
298 | inkscape:locked="false" /> | ||
299 | <sodipodi:guide | ||
300 | position="-286.44639,799.75126" | ||
301 | orientation="0,1" | ||
302 | id="guide8864" | ||
303 | inkscape:locked="false" /> | ||
304 | <sodipodi:guide | ||
305 | position="-227.46698,708.44981" | ||
306 | orientation="1,0" | ||
307 | id="guide8874" | ||
308 | inkscape:locked="false" /> | ||
309 | <sodipodi:guide | ||
310 | position="-217.47047,677.79384" | ||
311 | orientation="1,0" | ||
312 | id="guide8876" | ||
313 | inkscape:locked="false" /> | ||
314 | <sodipodi:guide | ||
315 | position="-219.46978,729.7757" | ||
316 | orientation="0,1" | ||
317 | id="guide8878" | ||
318 | inkscape:locked="false" /> | ||
319 | <sodipodi:guide | ||
320 | position="-158.75928,719.78633" | ||
321 | orientation="0,1" | ||
322 | id="guide8896" | ||
323 | inkscape:locked="false" /> | ||
324 | <sodipodi:guide | ||
325 | position="-147.49491,703.61816" | ||
326 | orientation="1,0" | ||
327 | id="guide8922" | ||
328 | inkscape:locked="false" /> | ||
329 | <sodipodi:guide | ||
330 | position="-213.42311,880.00792" | ||
331 | orientation="0,1" | ||
332 | id="guide8924" | ||
333 | inkscape:locked="false" /> | ||
334 | <sodipodi:guide | ||
335 | position="-357.88081,649.83162" | ||
336 | orientation="0,1" | ||
337 | id="guide8926" | ||
338 | inkscape:locked="false" /> | ||
339 | <sodipodi:guide | ||
340 | position="-137.55348,605.74624" | ||
341 | orientation="1,0" | ||
342 | id="guide8991" | ||
343 | inkscape:locked="false" /> | ||
344 | <sodipodi:guide | ||
345 | position="-231.80147,639.67552" | ||
346 | orientation="0,1" | ||
347 | id="guide8993" | ||
348 | inkscape:locked="false" /> | ||
349 | <sodipodi:guide | ||
350 | position="-285.31397,844.81632" | ||
351 | orientation="0,1" | ||
352 | id="guide9013" | ||
353 | inkscape:locked="false" /> | ||
354 | <sodipodi:guide | ||
355 | position="200,352" | ||
356 | orientation="1,0" | ||
357 | id="guide5070" | ||
358 | inkscape:locked="false" /> | ||
359 | <sodipodi:guide | ||
360 | position="50,215" | ||
361 | orientation="1,0" | ||
362 | id="guide5335" | ||
363 | inkscape:locked="false" /> | ||
364 | <sodipodi:guide | ||
365 | position="350,137" | ||
366 | orientation="1,0" | ||
367 | id="guide5337" | ||
368 | inkscape:locked="false" /> | ||
369 | <sodipodi:guide | ||
370 | position="10,275.5" | ||
371 | orientation="1,0" | ||
372 | id="guide5354" | ||
373 | inkscape:locked="false" /> | ||
374 | <sodipodi:guide | ||
375 | position="203.46998,66.733203" | ||
376 | orientation="0,1" | ||
377 | id="guide5358" | ||
378 | inkscape:locked="false" /> | ||
379 | </sodipodi:namedview> | ||
380 | <metadata | ||
381 | id="metadata7"> | ||
382 | <rdf:RDF> | ||
383 | <cc:Work | ||
384 | rdf:about=""> | ||
385 | <dc:format>image/svg+xml</dc:format> | ||
386 | <dc:type | ||
387 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> | ||
388 | <dc:title>Guix System Distribution (Logo)</dc:title> | ||
389 | <dc:date>2015-02-07</dc:date> | ||
390 | <dc:creator> | ||
391 | <cc:Agent> | ||
392 | <dc:title>Luis Felipe López Acevedo</dc:title> | ||
393 | </cc:Agent> | ||
394 | </dc:creator> | ||
395 | <dc:rights> | ||
396 | <cc:Agent> | ||
397 | <dc:title>Luis Felipe López Acevedo</dc:title> | ||
398 | </cc:Agent> | ||
399 | </dc:rights> | ||
400 | <cc:license | ||
401 | rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" /> | ||
402 | <dc:description /> | ||
403 | </cc:Work> | ||
404 | <cc:License | ||
405 | rdf:about="http://creativecommons.org/licenses/by-sa/4.0/"> | ||
406 | <cc:permits | ||
407 | rdf:resource="http://creativecommons.org/ns#Reproduction" /> | ||
408 | <cc:permits | ||
409 | rdf:resource="http://creativecommons.org/ns#Distribution" /> | ||
410 | <cc:requires | ||
411 | rdf:resource="http://creativecommons.org/ns#Notice" /> | ||
412 | <cc:requires | ||
413 | rdf:resource="http://creativecommons.org/ns#Attribution" /> | ||
414 | <cc:permits | ||
415 | rdf:resource="http://creativecommons.org/ns#DerivativeWorks" /> | ||
416 | <cc:requires | ||
417 | rdf:resource="http://creativecommons.org/ns#ShareAlike" /> | ||
418 | </cc:License> | ||
419 | </rdf:RDF> | ||
420 | </metadata> | ||
421 | <g | ||
422 | inkscape:groupmode="layer" | ||
423 | id="layer5" | ||
424 | inkscape:label="ramen" | ||
425 | sodipodi:insensitive="true"> | ||
426 | <rect | ||
427 | style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.45544064;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
428 | id="rect942" | ||
429 | width="400" | ||
430 | height="300" | ||
431 | x="-3.7303494e-14" | ||
432 | y="1.7330311e-15" /> | ||
433 | </g> | ||
434 | <g | ||
435 | inkscape:groupmode="layer" | ||
436 | id="layer4" | ||
437 | inkscape:label="bg" | ||
438 | style="display:inline" | ||
439 | transform="translate(0,-47.278107)" | ||
440 | sodipodi:insensitive="true"> | ||
441 | <rect | ||
442 | style="display:inline;opacity:1;vector-effect:none;fill:#421111;fill-opacity:1;stroke:none;stroke-width:1.47144902;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
443 | id="rect12062" | ||
444 | width="380" | ||
445 | height="279.99997" | ||
446 | x="10" | ||
447 | y="57.278107" /> | ||
448 | </g> | ||
449 | <g | ||
450 | inkscape:groupmode="layer" | ||
451 | id="layer1" | ||
452 | inkscape:label="head" | ||
453 | style="display:none;opacity:1" | ||
454 | transform="translate(0,-47.278107)" | ||
455 | sodipodi:insensitive="true"> | ||
456 | <g | ||
457 | transform="matrix(0.40699717,0,0,0.40699717,31.535627,27.300788)" | ||
458 | id="layer1-6" | ||
459 | inkscape:label="Layer 1" | ||
460 | style="fill:#ff0000"> | ||
461 | <g | ||
462 | transform="translate(126.95974,19.57999)" | ||
463 | id="Layer_1" | ||
464 | style="fill:#ff0000"> | ||
465 | <g | ||
466 | id="g2490" | ||
467 | style="fill:#ff0000"> | ||
468 | <path | ||
469 | style="fill:#ff0000;fill-rule:evenodd" | ||
470 | d="m 112.993,304.372 c -3.634,0.247 -8.365,1.875 -11.539,7.564 -2.591,4.646 -8.661,5.387 -11.495,4.451 -4.721,-1.56 -10.755,-2.642 -16.6,1.523 -5.845,4.164 -12.157,1.015 -11.05,-6.576 1.107,-7.59 3.849,-14.351 11.127,-18.538 15.895,-9.144 4.848,-15.508 13.572,-24.685 8.741,-9.195 6.81,-12.009 6.52,-24.497 C 63.985,239.176 47.241,230.661 28.544,207.301 9.847,183.94 2.599,164.711 0.661,135.423 -1.277,106.135 0.403,87.154 13.057,62.843 25.711,38.532 39.034,26.829 62.122,14.69 85.21,2.553 107.832,-0.354 128.742,0 c 20.91,0.353 34.843,1.885 46.658,8.626 11.814,6.741 22.622,15.224 29.512,15.285 6.891,0.061 11.582,-1.744 14.931,-4.31 0.894,22.703 -19.539,24.675 -37.819,25.155 -18.281,0.479 -29.514,-7.083 -46.351,-4.27 -16.837,2.813 -44.404,10.475 -57.833,33.85 -13.429,23.375 -13.887,31.638 -12.771,51.24 1.116,19.603 17.988,34.228 27.512,34.387 9.523,0.159 11.649,-2.599 19.985,-8.036 8.337,-5.438 50.896,-58.122 65.418,-69.956 14.523,-11.834 28.854,-15.488 44.328,-15.678 15.474,-0.19 19.428,0.335 31.908,5.45 12.48,5.114 20.149,14.533 30.211,20.291 5.143,-3.027 8.338,-7.547 13.057,-10.996 16.877,-12.335 25.646,-15.659 45.705,-13.707 11.529,1.122 26.066,7.708 34.74,15.25 15.445,13.429 28.205,32.125 38.516,46.328 8.029,11.061 17.477,24.295 30.965,28.432 14.727,4.515 25.809,-14.559 27.436,-25.139 0.922,-5.995 2.125,-11.249 2.135,-17.847 0.01,-6.599 -0.664,-14.607 -2.566,-21.484 -1.902,-6.877 -5.16,-13.72 -8.688,-19.394 -5.742,-9.235 -15.137,-18.899 -24.912,-23.871 -5.486,-2.79 -18.393,-7.863 -26.529,-8.041 -9.969,-0.216 -17.564,3.133 -26.781,3.761 -11.156,0.761 -31.084,3.269 -39.83,-5.35 -5.566,-5.485 -6.266,-9.144 -7.217,-16.296 2.459,2.026 5.898,3.358 8.959,3.617 6.986,0.59 13.527,-5.114 19.166,-8.419 4.645,-2.723 11.223,-7.589 17.324,-10.048 15.676,-6.32 34.932,-6.138 51.48,-4.445 13.264,1.356 30.461,7.257 42.094,13.84 11.688,6.612 22.951,17.761 31.201,28.271 10.379,13.224 16.053,24.57 19.812,41.063 4.805,21.062 6.137,52.702 0.328,73.469 -4.578,16.365 -19.779,41.504 -32.719,53.827 -12.762,12.155 -27.498,18.022 -44.256,21.231 0.656,3.382 0.764,6.536 1.631,9.309 1.232,3.936 3.588,8.324 8.428,6.936 1.93,-0.553 2.963,-1.032 5.508,1.194 2.543,2.226 1.219,10.825 -5.938,14.684 -3.629,1.957 -7.459,2.382 -13.271,2.498 -5.812,0.116 -14.883,0.141 -21.193,-0.964 -6.309,-1.104 -10.078,-6.111 -17.066,-6.895 -10.799,-1.208 -19.068,-9.01 -27.727,-14.59 -3.613,-2.329 -4.832,-2.353 -6.914,-3.53 1.125,3.444 2.625,7.021 3.373,10.332 0.75,3.311 0.43,6.378 0.828,9.028 0.396,2.648 1.131,4.707 1.559,6.855 1.73,1.547 2.283,3.9 5.189,4.64 2.908,0.739 7.461,-0.412 10.436,-0.812 2.975,-0.4 4.969,-2.021 7.303,-1.577 2.336,0.443 4.549,2.115 6.506,3.682 1.957,1.567 3.639,1.796 5.223,5.706 1.584,3.91 3.037,11.917 3.254,17.269 0.217,5.352 -0.383,10.183 -1.969,14.43 -1.586,4.247 -2.98,6.13 -7.275,10.336 -4.295,4.207 -11.289,10.38 -18.268,14.68 1.285,1.903 1.855,3.645 3.859,5.71 2.004,2.066 6.182,4.381 8.041,6.56 1.857,2.179 2.799,3.742 2.826,6.186 0.029,2.443 -0.09,5.619 -2.074,8.283 -4.941,6.633 -10.785,7.821 -17.891,10.941 1.195,7.462 2.17,12.793 0.443,20.244 -0.705,3.036 -2.271,9.92 -6.016,11.686 -3.746,1.766 -10.969,0.911 -15.541,1.637 -4.572,0.727 -7.131,1.417 -10.695,2.125 -2.166,3.131 -5.391,6.586 -6.496,9.392 -1.107,2.807 -0.773,3.813 0.156,6.679 0.929,2.866 4.092,7.039 4.988,10.395 0.896,3.356 1.07,6.969 0.234,10.334 -0.838,3.365 -2.271,5.807 -5.139,8.795 -2.867,2.989 -8.508,5.336 -11.318,7.758 -2.812,2.423 -5.611,2.714 -4.844,6.723 1.055,5.506 9.1,14.436 14.92,16.562 3.488,1.275 8.17,0.873 12.406,-0.915 -0.287,4.703 -4.357,7.873 -7.016,10.996 7.201,-2.059 14.184,-6.001 19.014,-11.226 -1.498,4.538 -6.652,11.823 -14.361,18.22 -7.709,6.397 -7.662,5.088 -11.494,7.633 6.992,1.405 13.494,1.025 18.91,0.052 -2.969,1.637 -7.836,3.939 -14.283,4.616 -6.447,0.676 -10.422,0.198 -16.232,-1.213 -5.811,-1.412 -11.115,-6.694 -18.156,-10.335 0.686,2.612 1.174,5.753 4.135,8.439 2.961,2.686 7.441,4.052 12.203,6.375 -6.062,-0.688 -12.432,-0.896 -18.389,-2.209 -4.41,-0.973 -7.373,-2.005 -10.6,-3.603 -3.225,-1.598 -5.715,-3.929 -8.572,-5.893 1.369,2.615 1.775,5.691 4.105,7.847 2.33,2.156 6.117,2.959 9.18,4.44 -3.195,-0.07 -6.268,0.623 -9.58,-0.21 -3.314,-0.833 -6.422,-2.142 -9.867,-4.68 -3.445,-2.538 -6.998,-5.663 -9.938,-8.858 -2.938,-3.195 -6.566,-7.337 -7.664,-10.283 -1.1,-2.947 0.66,-5.008 0.99,-7.509 -2.029,1.333 -4.525,2.067 -6.084,4.002 -1.559,1.935 -2.941,3.702 -2.251,7.075 0.691,3.373 3.804,7.496 6.005,11.248 -6.568,-5.371 -10.236,-7.439 -11.799,-13.918 -1.463,-6.066 2.322,-11.572 5.199,-16.159 1.429,-2.278 3.567,-4.398 4.903,-6.597 -2.967,-2.903 -6.358,-5.398 -8.901,-8.709 -2.542,-3.31 -3.61,-7.79 -6.205,-10.957 -2.596,-3.168 -6.088,-5.173 -9.129,-7.756 2.673,5.742 7.066,12.785 8.02,17.229 0.953,4.444 -1.069,7.164 -2.646,9.563 -1.578,2.399 -4.124,2.934 -6.539,4.408 -2.415,1.475 -6.171,0.312 -7.61,2.501 -1.438,2.188 -1.824,5.48 -0.449,7.648 l 5.64,8.902 c -2.078,-1.049 -5.658,-4.1 -7.272,-6.264 -1.614,-2.164 -4.09,-4.163 -4.429,-7.089 -0.339,-2.925 -0.504,-5.464 1.391,-8.07 1.896,-2.605 7.086,-3.477 9.409,-5.48 2.323,-2.003 3.626,-3.307 3.493,-5.896 -0.132,-2.589 -2.661,-4.441 -4.835,-6.073 -6.637,-4.978 -15.151,-9.565 -20.787,-15.565 -3.184,-3.39 -4.712,-6.127 -5.352,-8.466 -0.639,-2.338 0.037,-4.162 1.619,-7.038 1.582,-2.877 7.007,-6.718 7.667,-9.843 0.659,-3.124 -2.081,-3.795 -4.554,-4.897 -2.473,-1.102 -7.17,0.565 -9.464,-1.352 -2.293,-1.917 0.674,-5.945 -1.911,-8.154 -2.584,-2.209 -8.499,-0.976 -11.552,-3.352 -3.053,-2.377 -4.315,-5.327 -5.367,-8.775 -1.052,-3.448 -1.171,-7.225 -0.458,-9.722 0.713,-2.497 2.855,-2.934 4.147,-4.228 1.292,-1.294 2.413,-2.367 0.691,-4.297 -1.722,-1.929 -7.365,0.108 -10.609,-2.369 -3.244,-2.477 -1.258,-8.41 -3.552,-10.911 -2.293,-2.501 -6.409,-1.522 -8.581,-2.321 -2.171,-0.799 -3.023,2.02 -4.355,-2.438 -1.332,-4.459 -1.368,-17.75 -3.16,-22.71 -1.792,-4.96 -5.311,-0.335 -6.945,-5.265 -1.634,-4.929 -0.085,-12.812 -0.821,-20.257 l -3.335,-20.257 c -11.634,7.815 -19.314,10.269 -31.813,12.477 -1.043,30.582 -3.916,48.591 6.464,82.52 10.38,33.928 31.387,53.924 59.726,82.649 -37.395,-28.016 -55.248,-50.792 -66.422,-79.97 -11.176,-29.182 -9.03,-53.586 -7.906,-81.686 z M 311.701,292.08 c 2.877,0.129 6.373,0.859 8.393,2.171 2.021,1.312 4.166,2.384 6,4.251 4.576,4.66 8.008,10.28 9.525,16.738 0.967,4.117 1.111,9.397 1.463,14.231 -1.385,-4.468 -2.316,-9.127 -4.289,-13.13 -3.111,-6.312 -8.396,-12.473 -14.959,-15.31 -2.166,-0.938 -3.611,-0.764 -4.803,-0.598 0.533,0.895 1.426,1.645 1.465,2.956 0.039,1.311 -0.254,3.876 -2.477,4.954 -3.584,1.739 -7.568,0.516 -10.336,-1.931 -2.791,-2.466 -3.742,-6.638 -2.281,-10.223 1.741,-4.272 8.375,-4.283 12.299,-4.109 z M 275.629,286 c 0.361,-7.345 3.012,-13.539 9.594,-17.141 3.404,-1.862 8.648,-4.27 13.467,-4.836 4.629,-0.543 15.889,-0.146 22.662,2.945 5.201,2.374 8.744,6.07 13.311,8.771 4.566,2.702 7.814,4.513 12.162,7.543 6.674,4.651 10.586,9.772 15.213,12.842 2.225,1.475 5.355,1.256 8.309,2.158 -2.297,0.682 -5.299,1.434 -7.777,0.642 -3.09,-0.988 -7.41,-3.813 -9.807,-5.838 -4.236,-3.578 -6.432,-5.324 -11.055,-8.023 -2.76,-1.608 -7.305,-3.503 -10.338,-5.481 -3.035,-1.978 -8.303,-6.318 -11.219,-7.787 -3.707,-1.866 -10.381,-2.904 -14.508,-2.783 -5.686,0.166 -13.916,1.104 -18.316,5.096 -4.371,3.968 -6.031,7.459 -5.045,12.612 1.646,-1.896 2.742,-4.278 4.391,-5.688 3.416,-2.918 7.336,-3.059 11.588,-2.506 4.777,0.622 7.182,3.381 8.76,7.916 -1.062,-0.78 -3.014,-2.493 -4.555,-3.024 -3.617,-1.248 -6.352,-0.864 -9.74,0.953 -4,2.146 -2.912,5.322 -3.488,8.854 -0.264,1.629 -0.879,2.941 -1.318,4.412 -1.504,-0.398 -2.895,-1.024 -4.033,-2.152 0.047,1.65 -0.193,3.093 0.145,4.949 0.336,1.855 1.24,4.059 1.859,6.088 -2.785,-2.786 -5.635,-5.38 -7.434,-8.977 -1.801,-3.599 -3.021,-7.593 -2.828,-11.545 z m 4.82,-53.46 c 2.053,-3.047 2.654,-7.721 3.92,-11.521 -0.506,4.813 0.467,10.106 -1.883,13.592 -2.35,3.486 -6.477,2.875 -9.896,3.889 2.66,-2.028 5.805,-2.913 7.859,-5.96 z m -49.151,71.368 c 2.636,-2.134 9.75,-0.428 15.071,-0.047 -3.824,0.979 -7.648,1.959 -11.472,2.938 -0.356,1.301 -0.195,2.792 -1.068,3.901 -0.874,1.11 -2.534,1.521 -3.8,2.28 0.125,-3.418 -1.367,-6.939 1.269,-9.072 z m 37.491,-148.22 c 3.176,1.71 7.207,3.971 10.012,4.041 2.805,0.07 3.539,-1.834 5.189,-2.933 2.596,8.465 5.576,17.766 9.996,25.447 1.852,3.218 3.033,1.722 4.441,4.956 1.406,3.233 2.031,9.812 3.365,13.943 1.336,4.131 3.078,7.171 4.617,10.756 -3.908,-5.537 -8.957,-12.597 -11.135,-17.205 -2.176,-4.607 -0.783,-5.008 -2.545,-9.396 -1.762,-4.388 -5.324,-11.228 -7.986,-16.842 -1.906,0.253 -4.266,0.6 -5.715,0.153 -1.449,-0.447 -1.16,-1.988 -2.469,-2.984 -1.311,-0.996 -3.514,-0.61 -5.35,-2.2 -1.836,-1.589 -2.254,-4.85 -2.42,-7.736 z m -17.101,41.769 c 2.989,-0.262 6.701,0.539 9.5,0.38 2.799,-0.159 4.797,-0.885 7.196,-1.328 -0.445,-4.216 -0.023,-11.962 -3.915,-14.777 -2.514,-1.818 -12.839,-0.449 -15.597,0.146 -6.206,1.338 -13.433,5.042 -19.435,7.358 5.752,-4.018 10.721,-7.742 17.62,-9.816 4.147,-1.247 13.825,-2.868 18.105,-1.712 1.954,0.527 2.349,1.336 3.534,2.992 4.074,5.688 4.062,10.604 5.119,17.23 1.039,1.619 2.146,2.699 2.988,4.369 0.84,1.67 1.316,4.298 1.551,6.446 -1.066,-1.546 -0.414,-3.485 -3.367,-4.636 -2.955,-1.151 -7.479,-0.076 -11.46,0.34 2.902,2.094 4.344,4.111 4.455,8.538 0.13,5.198 -4.271,8.939 -8.866,9.295 -6.379,0.495 -9.668,-0.906 -12.248,-6.358 -1.13,-2.388 -0.311,-5.261 -0.405,-7.589 -7.665,0.533 -7.54,0.283 -13.142,4.954 3.045,4.461 4.963,7.026 9.995,9.695 2.822,1.498 6.017,2.954 9.514,3.549 3.498,0.595 9.235,1.17 12.909,0.606 3.675,-0.564 5.757,-1.613 8.481,-4.132 2.725,-2.52 2.975,-6.128 4.039,-8.98 -0.242,2.745 -0.557,6.241 -1.576,8.232 -3.1,6.053 -8.461,7.847 -14.862,7.867 -6.144,0.02 -13.744,-1.397 -19.46,-3.767 -4.57,-1.894 -12.146,-7.258 -13.944,-11.918 -1.229,-3.184 -0.256,-7.091 -0.385,-10.637 6.328,-4.208 7.894,-3.173 15.381,-4.405 3.132,-0.516 5.286,-1.679 8.275,-1.942 z m -36.861,-28.501 c 0.178,-2.521 0.457,-2.467 0.686,-3.701 -5.765,-1.542 -8.077,2.198 -11.457,9.144 -1.265,2.599 -0.013,4.146 -1.37,5.857 -1.355,1.711 -3.539,1.471 -5.74,3.114 -2.201,1.642 -4.382,4.787 -6.44,6.488 -4.223,3.491 -9.931,5.622 -14.829,7.971 3.345,-2.468 9.836,-6.211 11.936,-9.797 1.114,-1.901 0.949,-5.486 2.683,-7.195 1.733,-1.71 2.34,-2.893 4.578,-3.329 2.238,-0.436 1.338,-3.03 2.06,-5.092 0.722,-2.062 2.16,-3.526 3.69,-5.586 1.53,-2.06 3.46,-5.153 6.481,-6.276 3.021,-1.124 7.732,0.091 10.019,-0.556 2.286,-0.647 0.973,-2.309 2.634,-3.307 1.663,-0.998 4.896,-0.558 7.117,-1.625 3.937,-1.893 5.82,-5.053 8.188,-8.436 0.344,7.282 0.26,12.525 -2.357,19.376 -2.947,7.711 -5.934,12.253 -14.298,16.995 -2.882,1.633 -5.75,2.2 -8.139,3.057 1.393,-1.9 3.387,-2.725 4.18,-5.7 0.791,-2.977 0.2,-8.88 0.378,-11.402 z m 135.038,35.507 c -3.977,0.259 -4.92,-0.264 -8.102,1.98 1.725,2.684 3.449,5.368 5.172,8.052 -0.152,-5.298 0.364,-6.36 2.93,-10.032 z m -10.42,-3.85 c 5.508,-2.346 10.307,-4.244 16.299,-4.619 2.402,-0.151 6.131,0.221 8.557,0.331 2.066,-3.042 4.699,-5.441 5.664,-8.913 0.639,-2.303 0.324,-12.992 -0.807,-15.767 -3.295,-8.076 -6.498,-8.417 -11.033,-13.043 -3.291,-3.355 -3.422,-8.464 -4.406,-14.189 -0.361,-2.103 -1.393,-4.764 -1.877,-6.934 -5.928,-0.999 -12.303,-1.328 -19.123,-0.987 3.307,-3.172 6.504,-6.07 7.453,-10.832 0.947,-4.762 0.176,-10.617 -2.531,-14.887 -2.707,-4.27 -7.031,-7.99 -11,-11.469 -3.971,-3.479 -9.662,-6.351 -13.424,-9.197 4.893,-1.752 9.889,-4.326 14.682,-5.255 12.486,-2.422 23.244,1.282 35.287,8.563 7.002,4.235 12.793,8.258 20.113,15.921 7.318,7.662 16.395,21.717 23.48,30.052 7.085,8.335 12.805,14.927 18.986,19.898 6.182,4.972 11.777,6.388 17.664,9.581 l 9.176,9.744 7.426,-9.189 11.949,1.351 2.469,-13.412 10.967,-3.005 -1.789,-18.08 7.885,-5.596 -5.926,-11.249 6.021,-12.292 -7.85,-14.051 3.027,-13.529 -9.088,-7.745 -1.186,-14.377 -12.678,-4.836 -5.086,-12.508 -14.254,-0.16 -6.992,-9.285 -9.596,0.672 -10.697,-1.165 -6.049,-4.466 -8.779,5.828 -10.623,-5.539 -21.117,8.017 13.766,-11.972 14.262,-2.278 10.926,-2.785 14.756,4.846 12.988,-3.29 12.523,7.403 13.252,-0.733 6.51,11.681 13.195,1.523 7.139,12.987 8.299,4.531 2.203,16.637 7.391,7.01 -3.25,14.557 8.707,11.024 -8.164,11.812 8.73,7.383 -11.16,9.891 11.303,11.771 -13.65,4.402 8.891,12.625 -11.15,1.924 7.312,13.882 -12.566,-0.167 6.33,10.398 -13.783,-1.659 3.297,14.959 -10.416,-9.163 -3.568,18.13 -7.188,-13.018 -3.893,16.237 -8.873,-11.973 0.242,17.026 -9.807,-15.309 c 2.068,8.686 1.654,18.197 7.359,26.386 17.676,-2.392 29.229,-6.846 42.771,-19.877 12.334,-11.868 27.076,-36.613 31.068,-52.308 4.555,-17.91 4.695,-50.85 0.209,-69.084 C 522.282,71.848 516.67,63.462 506.643,49.136 497.059,38.957 487.633,28.204 475.469,20.945 457.613,10.29 434.717,7.417 414.367,7.694 c -11.268,0.154 -18.816,2.318 -25.553,4.768 -11.781,4.284 -21.203,13.629 -33.18,18.247 -3.906,1.505 -7.037,1.552 -10.113,-0.091 3.012,6.026 6.289,8.729 13.801,10.922 5.434,1.586 18.4,0.583 27.326,-0.241 9.582,-0.885 14.58,-3.734 27.621,-3.555 12.736,0.175 22.828,5.013 28.346,8.168 11.385,6.51 19.549,13.732 26.643,25.172 3.896,6.282 6.625,13.37 8.547,20.603 1.922,7.233 2.764,15.334 2.887,22.415 0.123,7.081 -0.418,13.402 -2.15,19.774 -4.051,14.918 -12.988,30.098 -31.346,27.753 -11.234,-1.436 -28.17,-22.522 -33.842,-30.258 C 401.909,115.758 390.133,98.481 375.752,85.479 366.984,77.554 354.979,72.1 343.19,71.021 c -22.117,-2.024 -28.676,2.177 -45.324,15.899 3.387,1.08 6.693,1.676 10.164,3.24 7.703,3.471 14.748,7.957 20.893,13.711 6.439,6.031 9.328,9.848 9.557,18.484 0.152,5.735 -4.566,10.333 -8.891,14.469 -2.646,2.533 -6.148,4.852 -8.291,6.818 -2.84,2.609 -6.357,5.463 -2.789,9.619 1.342,1.562 3.672,2.74 5.637,4.199 3.119,2.315 1.691,10.919 -2.418,13.201 -5.258,2.917 -11.541,2.591 -15.877,-1.314 5.473,-0.819 8.949,-1.545 8.807,-6.022 -0.082,-2.595 -3.381,-4.751 -6.619,-6.227 -7.809,-3.56 -13.707,-3.035 -21.479,-8.627 -7.85,-5.651 -8.023,-8.745 -10.145,-17.617 -3.785,0.396 -7.27,0.483 -12.331,2.159 -5.061,1.675 -10.654,5.663 -15.249,6.65 -11.572,2.49 -13.878,1.752 -20.211,0.113 -11.15,-2.886 -25.668,2.055 -40.09,6.668 -2.398,0.767 -12.097,0.026 -18.626,2.317 -10.084,3.538 -24.233,12.106 -32.405,18.988 -12.382,10.429 -28.654,41.64 -37.848,77.464 -0.966,10.89 2.131,18.227 -4.729,23.546 -6.86,5.319 -6.67,18.946 -8.996,22.768 -2.326,3.821 -5.019,2.132 -10.026,7.499 -5.007,5.367 -7.556,4.47 -7.43,14.618 4.315,-2.837 10.606,-6.135 16.13,-6.334 4.892,-0.177 4.944,6.264 17.5,-6.149 6.715,-6.641 19.616,-6.844 28.567,-9.773 8.952,-2.929 25.083,-8.965 41.239,-27.027 16.156,-18.062 23.887,-37.077 27.02,-64.567 0.499,4.874 1.365,10.371 -0.722,23.816 -2.087,13.445 -6.585,28.546 2.891,46.634 l 5.904,11.269 c -3.515,-4.797 -10.381,-12.622 -12.448,-18.198 l -4.768,-12.863 c -10.667,16.748 -13.119,19.744 -27.937,31.743 -0.59,7.444 -0.735,15.208 1.698,22.331 2.433,7.122 -1.445,15.332 0.406,20.023 1.851,4.691 6.132,2.021 7.53,6.77 1.398,4.749 -0.73,14.138 1.438,18.767 2.168,4.629 7.487,1.82 10.065,3.315 2.578,1.496 3.421,3.546 4.8,5.513 1.378,1.966 -0.539,6.614 2.265,8.123 2.803,1.51 7.176,0.231 10.093,1.68 2.917,1.449 3.36,4.932 2.661,8.053 -0.7,3.121 -3.817,4.553 -5.186,7.726 -1.368,3.174 -1.215,5.383 0.429,8.297 1.644,2.915 5.284,4.52 8.912,5.991 3.628,1.471 8.726,0.645 12.47,2.679 3.744,2.034 7.109,6.087 9.086,9.033 1.977,2.945 2.526,5.023 2.425,8.12 -0.102,3.096 -1.358,6.663 -3.011,9.654 -1.653,2.991 -5.3,6.631 0.394,12.343 5.694,5.711 5.484,3.249 8.746,6.954 -0.355,-6.409 -3.003,-11.63 -1.067,-16.455 1.937,-4.825 7.752,-5.664 10.817,-7.834 3.065,-2.171 4.83,-5.153 7.246,-7.729 -0.035,3.315 0.32,6.879 -0.057,9.375 -0.768,5.075 -2.266,9.58 5.297,10.394 3.407,0.366 6.642,-1.843 10.227,-3.169 -1.878,3.363 -5.144,6.067 -5.635,10.092 -0.491,4.023 0.099,8.443 2.885,12.436 2.787,3.991 7.599,6.955 11.125,9.301 3.525,2.347 5.414,2.535 8.123,3.804 0.133,3.956 -0.646,8.143 -0.195,11.869 0.451,3.726 1.625,7.024 3.779,10.104 2.156,3.081 5.613,4.848 8.869,7.126 -1.785,-4.157 -5.406,-8.101 -5.357,-12.471 0.049,-4.369 1.359,-7.466 5.621,-11.343 4.262,-3.878 14.24,-7.241 18.945,-11.011 4.705,-3.771 6.223,-6.081 7.912,-9.742 1.689,-3.661 1.219,-9.559 1.531,-12.85 1.549,4.61 1.77,6.043 2.273,10.866 0.506,4.824 -2.811,11.59 -4.215,15.161 5.82,-2.811 9.514,-7.304 11.379,-11.695 1.248,0.74 0.619,2.769 1.078,6.679 2.074,-2.064 4.432,-3.652 6.52,-5.6 2.09,-1.946 4.379,-3.658 5.416,-6.375 1.035,-2.717 0.611,-5.606 -0.16,-8.763 -0.771,-3.157 -4.299,-6.818 -6.199,-10.271 -1.898,-3.452 0.336,-6.841 0.207,-11.001 -3.801,-0.653 -7.029,-2.589 -11.398,-1.96 -4.371,0.628 -9.377,5.533 -13.844,5.59 -4.467,0.057 -6.975,-4.128 -10.637,-5.278 -3.662,-1.15 -7.367,-1.024 -11.049,-1.536 4.664,-4.468 22.766,-6.596 35.148,-8.615 10.895,-1.777 21.707,-2.804 32.746,-2.959 4.93,-0.07 11.266,1.558 14.689,0.574 3.426,-0.982 2.695,-3.315 3.711,-5.858 2.842,-7.108 1.441,-13.438 -0.105,-20.596 -9.91,-1.162 -20.236,-2.584 -30.221,-1.817 -9.762,0.75 -21.322,5.391 -31.391,5.705 -8.754,0.272 -21.717,-1.677 -29.234,-6.259 -9.186,-5.599 -16.293,-17.624 -18.816,-21.485 -4.109,-6.289 -9.292,-18.627 -12.446,-24.268 -3.152,-5.641 -3.847,-7.219 -6.47,-9.574 -2.623,-2.354 -6.216,-2.536 -9.323,-3.805 3.582,0.366 7.493,-0.768 10.747,1.098 4.889,2.805 10.361,14.431 13.403,19.49 3.223,-10.804 2.471,-15.052 11.797,-21.144 -7.516,8.424 -7.703,14.805 -9.535,24.723 6.25,10.258 14.939,26.598 26.309,31.132 4.107,1.639 11.16,2.667 15.6,3.216 13.818,1.711 27.146,-2.668 40.717,-6.019 9.92,-2.45 19.986,-1.463 32.051,-0.754 4.096,0.24 13.754,-2.224 15.754,-6.367 1.08,-2.235 1,-4.921 -0.551,-7.303 -1.553,-2.382 -5.689,-3.534 -7.906,-5.678 -2.217,-2.144 -3.492,-4.689 -5.238,-7.034 -9.215,1.768 -16.795,2.447 -23.635,2.633 4.906,-2.021 9.613,-3.174 14.719,-5.171 5.106,-1.997 10.904,-5.275 15.025,-7.995 4.121,-2.721 6.752,-4.299 9.734,-7.465 2.98,-3.168 6.803,-6.431 9,-10.303 2.199,-3.872 2.539,-8.203 2.662,-12.995 0.123,-4.791 -0.084,-11.514 -1.932,-15.374 -1.846,-3.859 -5.406,-5.03 -8.266,-5.943 -2.861,-0.913 -4.82,1.396 -7.795,1.708 -2.977,0.312 -5.758,2.188 -10.062,0.164 -4.304,-2.024 -9.406,-6.144 -13.758,-12.259 -4.35,-6.116 -7.461,-16.112 -11.896,-23.802 -7.645,-13.256 -17.172,-25.639 -26.283,-37.922 -0.75,-3.029 -1.877,-7.215 -2.252,-11.324 -0.654,-7.16 -0.777,-14.598 1.445,-21.578 1.703,-5.347 4.18,-10.995 9.779,-13.188 2.24,-0.878 5.074,-1.226 7.076,-0.484 2.004,0.741 3.969,3.002 3.182,5.614 -0.865,2.872 -2.855,2.95 -4.207,4.4 -2.295,2.46 -3.213,4.265 -4.08,7.332 2.48,-0.04 5.832,-0.229 7.869,0.307 2.658,0.7 5.133,2.462 6.482,6.228 -3.172,-2.813 -4.748,-4.104 -8.707,-4.204 -1.814,-0.045 -4.018,0.604 -6.025,0.906 -0.75,2.44 -1.191,5.432 -2.25,7.32 -1.059,1.888 -3.121,1.435 -3.895,3.641 -0.774,2.202 -0.819,5.788 -0.429,8.683 z m 27.715,-3.307 c 1.215,0.479 1.678,0.584 3.217,1.755 1.539,1.171 3.662,2.34 4.881,5.138 1.221,2.799 1.164,7.127 0.904,8.89 -1.07,-0.314 -2.529,-0.102 -3.639,-1.051 -1.107,-0.949 -1.768,-3.098 -3.188,-4.018 -1.422,-0.919 -2.607,-0.718 -4.178,-0.917 0.807,2.296 1.199,4.593 0.824,6.675 -0.814,4.545 -3.486,6.847 -7.812,7.391 -1.889,0.237 -4.889,-0.385 -6.533,-0.684 0.762,1.702 2.053,3.193 2.816,4.895 3.658,-0.529 6.369,-0.454 8.336,-1.374 1.967,-0.92 4.076,-2.981 6.6,-3.854 2.525,-0.873 4.777,-0.859 7.539,-1.29 -2.176,1.875 -3.604,3.751 -5.777,5.626 1.594,4.633 3.188,9.265 4.781,13.897 3.379,2.114 6.549,3.228 10.807,5.838 4.26,2.611 9.367,7.281 14.914,9.828 5.547,2.547 8.85,3.933 14.646,5.026 5.795,1.093 10.406,5.787 16.109,6.55 5.703,0.763 16.355,0.917 20.75,0.488 4.99,-0.487 11.473,-3.062 12.055,-8.533 -4.184,1.032 -10.574,0.106 -13.801,-7.767 -1.432,-3.496 -0.73,-9.925 -2.922,-14.059 -2.191,-4.135 -5.246,-5.462 -8.896,-10.556 -3.65,-5.094 -9.621,-13.129 -12.973,-19.954 -3.35,-6.824 -4.139,-14.554 -6.973,-20.669 -2.834,-6.114 -7.109,-11.053 -10.422,-15.766 -7.234,-10.3 -13.068,-17.339 -24.986,-22.535 -5.732,-2.499 -12.258,-3.165 -18.387,-4.748 -2.494,1.117 -5.914,2.351 -6.521,5.268 -0.607,2.917 0.559,7.225 2.676,9.415 3.543,3.661 8.793,7.618 10.857,13.437 1.326,3.734 1.711,16.252 0.562,19.649 -1.192,3.527 -3.963,5.66 -6.266,8.009 z m 1.154,29.629 c -1.107,0.955 -1.951,1.936 -3.732,2.729 -1.779,0.793 -4.209,0.998 -6.57,1.588 3.311,5.154 6.789,10.362 9.961,15.781 3.174,5.418 5.924,11.351 8.953,17.025 -0.143,-3.252 0.049,-6.719 -0.424,-9.758 -0.473,-3.038 -1.85,-5.697 -3.215,-10.258 -1.363,-4.561 -3.041,-10.766 -4.973,-17.107 z M 279.229,113.611 c -0.467,5.07 0.391,12.996 1.441,17.96 1.258,5.942 2.469,9.023 7.291,12.603 8.83,6.555 14.467,5.45 21.26,9.251 3.232,1.809 7.328,4.841 8.523,8.046 1.195,3.205 -0.789,6.685 -3.24,8.053 4.287,0.638 9.094,-4.195 7.088,-9.157 -0.988,-2.442 -5.691,-3.53 -7.133,-5.994 -1.439,-2.463 -1.436,-4.999 -0.758,-7.501 1.225,-4.51 10.148,-8.608 13.301,-12.173 4.852,-5.486 6.715,-10.075 3.967,-17.14 -3.859,-9.925 -18.768,-17.889 -27.691,-21.784 -4.086,-1.783 -6.377,-1.91 -9.564,-2.865 6.525,3.824 13.404,6.87 16.705,15.418 2.756,7.139 0.369,9.829 0.461,16.045 0.043,2.882 3.838,4.323 5.523,6.144 1.467,1.583 1.348,2.758 0.176,4.943 -0.129,-1.971 -0.971,-3.442 -2.484,-4.513 -2.498,-1.771 -5.189,-1.39 -6.52,-5.021 -2.02,-5.52 1.986,-10.748 -2.518,-16.946 -3.369,-4.637 -7.85,-9.827 -13.895,-9.963 -2.861,-0.065 -5.012,0.367 -8.068,1.271 l -4.074,-4.903 -0.094,-0.064 C 270.639,87.758 264.969,81.525 253.344,76.327 241.719,71.13 235.99,70.343 222.661,70.639 c -13.329,0.295 -26.557,1.41 -41.995,14.723 -15.437,13.313 -55.224,64.292 -64.873,70.744 -9.648,6.452 -11.785,8.638 -23.841,8.641 C 79.896,164.75 61.08,147.697 60.343,126.385 59.605,105.072 59.309,97.497 74.124,71.822 88.94,46.146 115.78,38.262 135.694,35.6 c 19.915,-2.662 31.882,4.352 46.613,4.385 14.73,0.034 29.288,-2.509 33.581,-14.224 -2.101,1.251 -4.916,2.661 -12.832,2.246 C 195.14,27.592 184.164,18.427 171.817,12.286 159.47,6.146 145.73,5.427 128.107,5.094 110.484,4.761 88.494,6.108 66.708,17.869 44.922,29.63 30.051,42.109 17.415,65.127 4.779,88.146 2.891,106.94 4.928,134.811 c 2.037,27.871 10.633,48.599 27.184,68.998 16.551,20.399 33.092,30.38 62.918,34.091 l 6.279,-27.696 -11.209,16.086 0.277,-17.891 -10.139,12.581 -4.447,-17.062 -8.214,13.679 -4.08,-19.05 -11.903,9.627 3.768,-15.719 -15.75,1.743 7.235,-10.926 -14.361,0.175 L 40.842,168.86 28.1,166.837 38.26,153.57 22.66,148.945 35.576,136.577 22.823,126.184 32.798,118.426 23.47,106.014 33.42,94.431 29.706,79.135 38.155,71.77 40.67,54.289 50.152,49.527 58.31,35.881 73.389,34.28 l 7.44,-12.274 15.145,0.771 14.312,-7.779 14.843,3.457 16.86,-5.092 12.487,2.926 16.296,2.395 15.733,12.58 -24.133,-8.424 -12.14,5.821 -10.035,-6.125 -6.909,4.693 -12.225,1.224 -10.963,-0.708 -7.992,9.756 -16.291,0.168 -5.811,13.143 -14.486,5.082 -1.355,15.107 -10.388,8.138 3.461,14.216 -8.971,14.765 6.882,12.915 -6.773,11.82 9.011,5.88 -2.044,18.998 12.532,3.158 2.823,14.093 13.656,-1.419 8.484,9.656 10.486,-10.239 c 19.116,-9.532 26.988,-14.864 41.886,-30.977 16.959,-18.343 26.679,-35.302 49.269,-47.861 16.202,-9.008 29.417,-12.25 47.617,-9.105 17.088,2.952 22.81,13.202 35.395,24 1.334,-2.415 1.605,-3.055 3.803,-4.833 -0.69,3.136 -1.786,6.389 -2.065,9.405 z" | ||
471 | id="path2492" | ||
472 | inkscape:connector-curvature="0" /> | ||
473 | </g> | ||
474 | </g> | ||
475 | </g> | ||
476 | </g> | ||
477 | <g | ||
478 | inkscape:label="gnu:net grunge" | ||
479 | id="g12308" | ||
480 | inkscape:groupmode="layer" | ||
481 | style="display:none" | ||
482 | transform="translate(-387.41463,-589.81931)"> | ||
483 | <text | ||
484 | xml:space="preserve" | ||
485 | style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16.53852463px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;display:inline;opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.03365779px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" | ||
486 | x="478.95114" | ||
487 | y="859.00549" | ||
488 | id="text12220"><tspan | ||
489 | sodipodi:role="line" | ||
490 | id="tspan12218" | ||
491 | x="478.95114" | ||
492 | y="859.00549" | ||
493 | style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:36px;font-family:ReservoirGrunge;-inkscape-font-specification:ReservoirGrunge;fill:#ffffff;stroke-width:1.03365779px" | ||
494 | dx="0 2.5 2.5 0 -4 2.5 2.5">gnu net</tspan></text> | ||
495 | </g> | ||
496 | <g | ||
497 | transform="translate(-387.41463,-589.81931)" | ||
498 | style="display:none" | ||
499 | inkscape:groupmode="layer" | ||
500 | id="g5346" | ||
501 | inkscape:label="gnu:net ubuntu"> | ||
502 | <text | ||
503 | id="text5344" | ||
504 | y="859.96057" | ||
505 | x="493.95291" | ||
506 | style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16.53852463px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;display:inline;opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.03365779px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" | ||
507 | xml:space="preserve"><tspan | ||
508 | dx="0 0 0" | ||
509 | style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:49.33333206px;font-family:'Ubuntu Bold';-inkscape-font-specification:'Ubuntu Bold, ';fill:#ffffff;stroke-width:1.03365779px" | ||
510 | y="859.96057" | ||
511 | x="493.95291" | ||
512 | id="tspan5342" | ||
513 | sodipodi:role="line">gnu net</tspan></text> | ||
514 | </g> | ||
515 | <g | ||
516 | inkscape:label="gnu:net anonymous" | ||
517 | id="g950" | ||
518 | inkscape:groupmode="layer" | ||
519 | style="display:inline" | ||
520 | transform="translate(-387.41463,-589.81931)"> | ||
521 | <text | ||
522 | xml:space="preserve" | ||
523 | style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16.53852463px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;display:inline;opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.03365779px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" | ||
524 | x="507.95291" | ||
525 | y="858.71057" | ||
526 | id="text948"><tspan | ||
527 | sodipodi:role="line" | ||
528 | id="tspan946" | ||
529 | x="507.95291" | ||
530 | y="858.71057" | ||
531 | style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:50.66666794px;font-family:'Anonymous Pro';-inkscape-font-specification:'Anonymous Pro Bold';fill:#ffffff;stroke-width:1.03365779px" | ||
532 | dx="0 -2.5 -3 0 -19.25 -2.5 -3">gnu net</tspan></text> | ||
533 | </g> | ||
534 | <g | ||
535 | inkscape:groupmode="layer" | ||
536 | id="layer3" | ||
537 | inkscape:label="vertices 2" | ||
538 | style="display:inline" | ||
539 | transform="translate(0,-47.278107)" | ||
540 | sodipodi:insensitive="true"> | ||
541 | <path | ||
542 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
543 | d="m 51.98603,94.74526 63.6227,34.91188 23.31802,-11.09978 -35.03955,28.74946 11.86161,-17.77468 -53.18435,-5.79678 40.95076,23.69646 25.32406,0.49689 24.19305,3.02495 v 48.02104 l 21.04995,-32.14943 -20.559,-15.87161 32.52749,48.02104 -8.06937,31.38386 -24.94907,-31.76198 24.94907,77.51429 22.25436,-36.69889 21.97354,37.07701 -43.59987,-0.37188 41.32877,-28.87448 22.05899,-21.17152 -19.90986,50.171 -3.71591,-29.60613 -8.57843,-31.7682 -9.69437,24.71516 54.37611,-52.19866 -24.96716,8.94671 -18.39175,19.15282 18.27579,-55.07718 25.20812,27.362 20.66591,-41.35238 -46.00204,14.12783 22.94304,-37.07431 23.05297,23.0777 31.8814,-26.48075 40.07874,-25.58708 -15.26372,39.20869 -24.69305,-13.74039 -55.05634,4.03119 79.62738,9.58108 -56.57441,12.73416" | ||
544 | id="path9316" | ||
545 | inkscape:connector-curvature="0" | ||
546 | sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccc" /> | ||
547 | <path | ||
548 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
549 | d="m 139.04572,118.81358 37.0456,48.02106" | ||
550 | id="path9318" | ||
551 | inkscape:connector-curvature="0" /> | ||
552 | <path | ||
553 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
554 | d="m 128.46126,147.9287 10.96248,-29.11512 12.47454,32.51819" | ||
555 | id="path12058" | ||
556 | inkscape:connector-curvature="0" /> | ||
557 | <path | ||
558 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
559 | d="m 252.31652,123.28236 54.69043,-3.64603 -31.75647,27.04795" | ||
560 | id="path12250" | ||
561 | inkscape:connector-curvature="0" | ||
562 | sodipodi:nodetypes="ccc" /> | ||
563 | <ellipse | ||
564 | ry="4.1593032" | ||
565 | rx="4.1581793" | ||
566 | cy="112.66669" | ||
567 | cx="83.343307" | ||
568 | id="ellipse12260" | ||
569 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
570 | <ellipse | ||
571 | ry="4.1593032" | ||
572 | rx="4.1581793" | ||
573 | cy="123.35095" | ||
574 | cx="63.064556" | ||
575 | id="ellipse12264" | ||
576 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
577 | <ellipse | ||
578 | ry="4.1593032" | ||
579 | rx="4.1581793" | ||
580 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
581 | id="ellipse12266" | ||
582 | cx="139.04277" | ||
583 | cy="118.93542" /> | ||
584 | <ellipse | ||
585 | ry="4.1593032" | ||
586 | rx="4.1581793" | ||
587 | inkscape:transform-center-y="-10.724852" | ||
588 | inkscape:transform-center-x="9.5305947" | ||
589 | cy="123.78851" | ||
590 | cx="252.13518" | ||
591 | id="ellipse12292" | ||
592 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
593 | <ellipse | ||
594 | ry="4.1593032" | ||
595 | rx="4.1581793" | ||
596 | inkscape:transform-center-y="-10.724835" | ||
597 | inkscape:transform-center-x="9.5305988" | ||
598 | cy="119.55022" | ||
599 | cx="307.26297" | ||
600 | id="ellipse12296" | ||
601 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
602 | <path | ||
603 | style="fill:none;stroke:#3498db;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97647059" | ||
604 | d="m 52.875,94.278107 10,29.000003 21,-10.5 v 0 0" | ||
605 | id="path5311" | ||
606 | inkscape:connector-curvature="0" /> | ||
607 | <path | ||
608 | style="fill:none;stroke:#3498db;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97647059" | ||
609 | d="m 102.875,75.278107 -39.5,48.000003 v 0 l -1,2" | ||
610 | id="path5313" | ||
611 | inkscape:connector-curvature="0" /> | ||
612 | <path | ||
613 | style="fill:none;stroke:#3498db;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
614 | d="m 229.75,196.02811 -44,2.625 25.375,17.125 v 0" | ||
615 | id="path5331" | ||
616 | inkscape:connector-curvature="0" /> | ||
617 | </g> | ||
618 | <g | ||
619 | inkscape:groupmode="layer" | ||
620 | id="layer2" | ||
621 | inkscape:label="vertices 0" | ||
622 | style="display:inline;opacity:1" | ||
623 | transform="translate(-387.41463,-589.81931)" | ||
624 | sodipodi:insensitive="true"> | ||
625 | <path | ||
626 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
627 | d="m 515.87589,689.71367 24.57107,51.42411" | ||
628 | id="path9320" | ||
629 | inkscape:connector-curvature="0" /> | ||
630 | <path | ||
631 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
632 | d="m 574.46842,741.13778 12.85257,40.08057" | ||
633 | id="path9322" | ||
634 | inkscape:connector-curvature="0" /> | ||
635 | <path | ||
636 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
637 | d="m 565.39603,772.52162 0.37803,45.75234" | ||
638 | id="path9324" | ||
639 | inkscape:connector-curvature="0" /> | ||
640 | <path | ||
641 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
642 | d="m 642.13335,732.06293 -12.09653,36.6775" | ||
643 | id="path9326" | ||
644 | inkscape:connector-curvature="0" /> | ||
645 | <path | ||
646 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
647 | d="m 515.87589,690.09178 46.98395,22.0278 10.85256,28.26194" | ||
648 | id="path12060" | ||
649 | inkscape:connector-curvature="0" | ||
650 | sodipodi:nodetypes="ccc" /> | ||
651 | <path | ||
652 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" | ||
653 | d="m 450.10106,666.64844 54.05634,6.0499" | ||
654 | id="path12214" | ||
655 | inkscape:connector-curvature="0" /> | ||
656 | <path | ||
657 | style="display:inline;fill:#729fcf;fill-rule:evenodd;stroke:#3498db;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
658 | d="m 641.75532,730.92859 -2.26809,-64.28015" | ||
659 | id="path12206" | ||
660 | inkscape:connector-curvature="0" /> | ||
661 | <path | ||
662 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" | ||
663 | d="m 629.28078,768.36231 -12.85255,-66.17074 v 36.6775 z" | ||
664 | id="path12208" | ||
665 | inkscape:connector-curvature="0" /> | ||
666 | <path | ||
667 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" | ||
668 | d="m 597.52742,757.77501 31.75336,10.5873" | ||
669 | id="path12210" | ||
670 | inkscape:connector-curvature="0" /> | ||
671 | <path | ||
672 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:1.58654225px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" | ||
673 | d="m 540.44696,693.87298 v 48.77728 l 24.57105,30.2495 23.81505,9.45293" | ||
674 | id="path12212" | ||
675 | inkscape:connector-curvature="0" /> | ||
676 | <path | ||
677 | style="display:inline;fill:none;fill-rule:evenodd;stroke:#3498db;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" | ||
678 | d="m 564.64001,819.03019 44.98392,-0.37812" | ||
679 | id="path12216" | ||
680 | inkscape:connector-curvature="0" /> | ||
681 | <ellipse | ||
682 | ry="4.1593032" | ||
683 | rx="4.1581793" | ||
684 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
685 | id="ellipse12252" | ||
686 | cx="587.39447" | ||
687 | cy="781.79773" /> | ||
688 | <ellipse | ||
689 | ry="4.1593032" | ||
690 | rx="4.1581793" | ||
691 | cy="818.74042" | ||
692 | cx="609.15759" | ||
693 | id="ellipse12254" | ||
694 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
695 | <ellipse | ||
696 | ry="4.1593032" | ||
697 | rx="4.1581793" | ||
698 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
699 | id="ellipse12256" | ||
700 | cx="565.97528" | ||
701 | cy="818.74042" /> | ||
702 | <ellipse | ||
703 | ry="4.1593032" | ||
704 | rx="4.1581793" | ||
705 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
706 | id="ellipse12262" | ||
707 | cx="490.92691" | ||
708 | cy="689.33545" /> | ||
709 | <ellipse | ||
710 | ry="4.1593032" | ||
711 | rx="4.1581793" | ||
712 | cy="690.09174" | ||
713 | cx="516.25397" | ||
714 | id="ellipse12268" | ||
715 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
716 | <ellipse | ||
717 | ry="4.1593032" | ||
718 | rx="4.1581793" | ||
719 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
720 | id="ellipse12270" | ||
721 | cx="561.66821" | ||
722 | cy="709.15314" /> | ||
723 | <ellipse | ||
724 | ry="4.1593032" | ||
725 | rx="4.1581793" | ||
726 | cy="671.6922" | ||
727 | cx="502.64844" | ||
728 | id="ellipse12272" | ||
729 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
730 | <ellipse | ||
731 | ry="4.1593032" | ||
732 | rx="4.1581793" | ||
733 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
734 | id="ellipse12274" | ||
735 | cx="540.81299" | ||
736 | cy="693.37305" /> | ||
737 | <ellipse | ||
738 | ry="4.1593032" | ||
739 | rx="4.1581793" | ||
740 | cy="741.13794" | ||
741 | cx="540.82501" | ||
742 | id="ellipse12276" | ||
743 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
744 | <ellipse | ||
745 | ry="4.1593032" | ||
746 | rx="4.1581793" | ||
747 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
748 | id="ellipse12278" | ||
749 | cx="573.51123" | ||
750 | cy="741.22632" /> | ||
751 | <ellipse | ||
752 | ry="4.1593032" | ||
753 | rx="4.1581793" | ||
754 | cy="772.52173" | ||
755 | cx="565.39612" | ||
756 | id="ellipse12280" | ||
757 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
758 | <ellipse | ||
759 | ry="4.1593032" | ||
760 | rx="4.1581793" | ||
761 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
762 | id="ellipse12282" | ||
763 | cx="606.38373" | ||
764 | cy="789.62549" | ||
765 | inkscape:transform-center-x="9.5306006" | ||
766 | inkscape:transform-center-y="-10.72485" /> | ||
767 | <ellipse | ||
768 | ry="4.1593032" | ||
769 | rx="4.1581793" | ||
770 | inkscape:transform-center-y="-10.724822" | ||
771 | inkscape:transform-center-x="9.5305654" | ||
772 | cy="730.17249" | ||
773 | cx="641.75543" | ||
774 | id="ellipse12284" | ||
775 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
776 | <ellipse | ||
777 | ry="4.1593032" | ||
778 | rx="4.1581793" | ||
779 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
780 | id="ellipse12286" | ||
781 | cx="616.8064" | ||
782 | cy="702.94794" | ||
783 | inkscape:transform-center-x="9.5305633" | ||
784 | inkscape:transform-center-y="-10.724851" /> | ||
785 | <ellipse | ||
786 | ry="4.1593032" | ||
787 | rx="4.1581793" | ||
788 | inkscape:transform-center-y="-10.724843" | ||
789 | inkscape:transform-center-x="9.5305819" | ||
790 | cy="738.49109" | ||
791 | cx="617.18439" | ||
792 | id="ellipse12288" | ||
793 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
794 | <ellipse | ||
795 | ry="4.1593032" | ||
796 | rx="4.1581793" | ||
797 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
798 | id="ellipse12290" | ||
799 | cx="629.03088" | ||
800 | cy="768.17493" | ||
801 | inkscape:transform-center-x="9.5305949" | ||
802 | inkscape:transform-center-y="-10.724827" /> | ||
803 | <ellipse | ||
804 | ry="4.1593032" | ||
805 | rx="4.1581793" | ||
806 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
807 | id="ellipse12294" | ||
808 | cx="662.54626" | ||
809 | cy="688.95752" | ||
810 | inkscape:transform-center-x="9.5306048" | ||
811 | inkscape:transform-center-y="-10.724823" /> | ||
812 | <ellipse | ||
813 | ry="4.1593032" | ||
814 | rx="4.1581793" | ||
815 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
816 | id="ellipse12298" | ||
817 | cx="719.24872" | ||
818 | cy="675.72339" | ||
819 | inkscape:transform-center-x="9.5305824" | ||
820 | inkscape:transform-center-y="-10.724798" /> | ||
821 | <ellipse | ||
822 | ry="4.1593032" | ||
823 | rx="4.1581793" | ||
824 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
825 | id="ellipse12302" | ||
826 | cx="617.18439" | ||
827 | cy="738.49109" | ||
828 | inkscape:transform-center-x="9.5305819" | ||
829 | inkscape:transform-center-y="-10.724843" /> | ||
830 | <ellipse | ||
831 | ry="4.1593032" | ||
832 | rx="4.1581793" | ||
833 | inkscape:transform-center-y="-10.724843" | ||
834 | inkscape:transform-center-x="9.5305819" | ||
835 | cy="738.49109" | ||
836 | cx="617.24689" | ||
837 | id="ellipse12304" | ||
838 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
839 | <ellipse | ||
840 | ry="4.1593032" | ||
841 | rx="4.1581793" | ||
842 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
843 | id="ellipse12306" | ||
844 | cx="598.0033" | ||
845 | cy="758.21582" | ||
846 | inkscape:transform-center-x="9.5306167" | ||
847 | inkscape:transform-center-y="-10.724797" /> | ||
848 | <ellipse | ||
849 | ry="4.1593032" | ||
850 | rx="4.1581793" | ||
851 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
852 | id="ellipse12258" | ||
853 | cx="440.27264" | ||
854 | cy="636.84271" /> | ||
855 | <ellipse | ||
856 | ry="4.1593032" | ||
857 | rx="4.1581793" | ||
858 | inkscape:transform-center-y="-10.724829" | ||
859 | inkscape:transform-center-x="9.5306165" | ||
860 | cy="636.8053" | ||
861 | cx="734.7594" | ||
862 | id="ellipse12300" | ||
863 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" /> | ||
864 | <ellipse | ||
865 | ry="4.1593032" | ||
866 | rx="4.1581793" | ||
867 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
868 | id="ellipse12258-3" | ||
869 | cx="490.28964" | ||
870 | cy="617.81934" /> | ||
871 | <ellipse | ||
872 | ry="4.1593032" | ||
873 | rx="4.1581793" | ||
874 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
875 | id="ellipse12258-3-0" | ||
876 | cx="689.78961" | ||
877 | cy="617.81934" /> | ||
878 | <path | ||
879 | style="display:inline;fill:none;fill-opacity:1;stroke:#3498db;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97647059" | ||
880 | d="m 439.28963,637.81931 50.5,-19.5 -14.05,28.1 0.925,-1.725 -5.875,11.75 -0.25,-0.75" | ||
881 | id="path5161" | ||
882 | inkscape:connector-curvature="0" | ||
883 | sodipodi:nodetypes="cccccc" /> | ||
884 | <path | ||
885 | style="display:inline;fill:none;stroke:#3498db;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97647059" | ||
886 | d="m 734.78963,636.81931 -40.285,-17.00922 -4.715,-1.99078 29,57.5 v -0.5 0 h 0.5 v 0" | ||
887 | id="path5163" | ||
888 | inkscape:connector-curvature="0" | ||
889 | sodipodi:nodetypes="cccccccc" /> | ||
890 | </g> | ||
891 | <g | ||
892 | inkscape:groupmode="layer" | ||
893 | id="layer6" | ||
894 | inkscape:label="no:des" | ||
895 | style="display:inline" | ||
896 | sodipodi:insensitive="true"> | ||
897 | <ellipse | ||
898 | transform="translate(-387.41463,-589.81931)" | ||
899 | ry="4.1593032" | ||
900 | rx="4.1581793" | ||
901 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
902 | id="ellipse12282-8-9-0" | ||
903 | cx="587.3924" | ||
904 | cy="855.64899" | ||
905 | inkscape:transform-center-x="9.5306006" | ||
906 | inkscape:transform-center-y="-10.72485" /> | ||
907 | <ellipse | ||
908 | transform="translate(-387.41463,-589.81931)" | ||
909 | ry="4.1593032" | ||
910 | rx="4.1581793" | ||
911 | style="display:inline;opacity:1;fill:#3498db;fill-opacity:1;stroke:#3498db;stroke-width:0.39663559;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.97635139" | ||
912 | id="ellipse12282-8-9" | ||
913 | cx="587.3924" | ||
914 | cy="839.31183" | ||
915 | inkscape:transform-center-x="9.5306006" | ||
916 | inkscape:transform-center-y="-10.72485" /> | ||
917 | </g> | ||
918 | </svg> | ||
diff --git a/contrib/packages/guix/guix-env-gillmann.scm b/contrib/packages/guix/guix-env-gillmann.scm new file mode 100644 index 000000000..4b977c1bb --- /dev/null +++ b/contrib/packages/guix/guix-env-gillmann.scm | |||
@@ -0,0 +1,151 @@ | |||
1 | ;;; This file is part of GNUnet. | ||
2 | ;;; Copyright (C) 2016, 2017, 2018 GNUnet e.V. | ||
3 | ;;; | ||
4 | ;;; GNUnet is free software; you can redistribute it and/or modify | ||
5 | ;;; it under the terms of the GNU General Public License as published | ||
6 | ;;; by the Free Software Foundation; either version 3, or (at your | ||
7 | ;;; option) any later version. | ||
8 | ;;; | ||
9 | ;;; GNUnet is distributed in the hope that it will be useful, but | ||
10 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
12 | ;;; General Public License for more details. | ||
13 | ;;; | ||
14 | ;;; You should have received a copy of the GNU General Public License | ||
15 | ;;; along with GNUnet; see the file COPYING. If not, write to the | ||
16 | ;;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
17 | ;;; Boston, MA 02110-1301, USA. | ||
18 | |||
19 | (use-modules | ||
20 | (ice-9 popen) | ||
21 | (ice-9 match) | ||
22 | (ice-9 rdelim) | ||
23 | (guix packages) | ||
24 | (guix build-system gnu) | ||
25 | (guix gexp) | ||
26 | ((guix build utils) #:select (with-directory-excursion)) | ||
27 | (guix git-download) | ||
28 | (guix utils) ; current-source-directory | ||
29 | (gnu packages) | ||
30 | (gnu packages aidc) | ||
31 | (gnu packages autotools) | ||
32 | (gnu packages backup) | ||
33 | (gnu packages base) | ||
34 | (gnu packages compression) | ||
35 | (gnu packages curl) | ||
36 | (gnu packages databases) | ||
37 | (gnu packages file) | ||
38 | (gnu packages gettext) | ||
39 | (gnu packages glib) | ||
40 | (gnu packages gnome) | ||
41 | (gnu packages gnunet) | ||
42 | (gnu packages gnupg) | ||
43 | (gnu packages gnuzilla) | ||
44 | (gnu packages groff) | ||
45 | (gnu packages gstreamer) | ||
46 | (gnu packages gtk) | ||
47 | (gnu packages guile) | ||
48 | (gnu packages image) | ||
49 | (gnu packages image-viewers) | ||
50 | (gnu packages libidn) | ||
51 | (gnu packages libunistring) | ||
52 | (gnu packages linux) | ||
53 | (gnu packages maths) | ||
54 | (gnu packages multiprecision) | ||
55 | (gnu packages perl) | ||
56 | (gnu packages pkg-config) | ||
57 | (gnu packages pulseaudio) | ||
58 | (gnu packages python) | ||
59 | (gnu packages tex) | ||
60 | (gnu packages texinfo) | ||
61 | (gnu packages tex) | ||
62 | (gnu packages tls) | ||
63 | (gnu packages upnp) | ||
64 | (gnu packages video) | ||
65 | (gnu packages web) | ||
66 | (gnu packages xiph) | ||
67 | ((guix licenses) #:prefix license:)) | ||
68 | |||
69 | (define %source-dir (current-source-directory)) | ||
70 | |||
71 | (define gnunet-dev-env | ||
72 | (let* ((revision "1") | ||
73 | (select? (delay (or (git-predicate | ||
74 | (current-source-directory)) | ||
75 | source-file?)))) | ||
76 | (package | ||
77 | (inherit gnunet) | ||
78 | (name "gnunet") | ||
79 | (version (string-append "git" revision)) | ||
80 | (source | ||
81 | (local-file | ||
82 | (string-append (getcwd)) | ||
83 | #:recursive? #t)) | ||
84 | (inputs | ||
85 | `(("glpk" ,glpk) | ||
86 | ("gnurl" ,gnurl) | ||
87 | ("gstreamer" ,gstreamer) | ||
88 | ("gst-plugins-base" ,gst-plugins-base) | ||
89 | ("gnutls/dane" ,gnutls/dane) | ||
90 | ("iptables" ,iptables) | ||
91 | ("libextractor" ,libextractor) | ||
92 | ("libgcrypt" ,libgcrypt) | ||
93 | ("libidn" ,libidn) | ||
94 | ("libmicrohttpd" ,libmicrohttpd) | ||
95 | ("libltdl" ,libltdl) | ||
96 | ("libunistring" ,libunistring) | ||
97 | ("openssl" ,openssl) | ||
98 | ("opus" ,opus) | ||
99 | ("pulseaudio" ,pulseaudio) | ||
100 | ("sqlite" ,sqlite) | ||
101 | ("postgresql" ,postgresql) | ||
102 | ("mariadb" ,mariadb) | ||
103 | ("zlib" ,zlib) | ||
104 | ("perl" ,perl) | ||
105 | ("python-2" ,python-2) ; tests and gnunet-qr | ||
106 | ("jansson" ,jansson) | ||
107 | ("nss" ,nss) | ||
108 | ("glib" ,glib "bin") | ||
109 | ("gmp" ,gmp) | ||
110 | ("bluez" ,bluez) ; for optional bluetooth feature | ||
111 | ("glib" ,glib) | ||
112 | ;; ("texlive" ,texlive) ;FIXME: minimize. | ||
113 | ("texlive-tiny" ,texlive-tiny) ;; Seems to be enough for _just_ info output. | ||
114 | ("miniupnpc" ,miniupnpc) | ||
115 | ("libogg" ,libogg))) | ||
116 | (native-inputs | ||
117 | `(("pkg-config" ,pkg-config) | ||
118 | ("autoconf" ,autoconf) | ||
119 | ("automake" ,automake) | ||
120 | ("gnu-gettext" ,gnu-gettext) | ||
121 | ("which" ,which) | ||
122 | ("texinfo" ,texinfo-5) ; Debian stable: 5.2 | ||
123 | ("libtool" ,libtool))) | ||
124 | (outputs '("out" "debug")) | ||
125 | (arguments | ||
126 | `(;#:configure-flags | ||
127 | ;;(list (string-append "--with-nssdir=" %output "/lib") | ||
128 | ;;"--enable-gcc-hardening" | ||
129 | ;;"--enable-linker-hardening" | ||
130 | ;;;;"--enable-documentation-only") | ||
131 | ;;;"--enable-logging=verbose" | ||
132 | ;;;"CFLAGS=-ggdb -O0") | ||
133 | #:phases | ||
134 | ;; swap check and install phases and set paths to installed bin | ||
135 | (modify-phases %standard-phases | ||
136 | (add-after 'unpack 'patch-bin-sh | ||
137 | (lambda _ | ||
138 | (for-each (lambda (f) (chmod f #o755)) | ||
139 | (find-files "po" "")) | ||
140 | #t)) | ||
141 | (add-after 'patch-bin-sh 'bootstrap | ||
142 | (lambda _ | ||
143 | (zero? (system* "sh" "bootstrap")))) | ||
144 | ;;(add-before 'build 'chdir | ||
145 | ;; (lambda _ | ||
146 | ;; (chdir "doc/documentation"))) | ||
147 | (delete 'check) | ||
148 | ;; XXX: https://gnunet.org/bugs/view.php?id=4619 | ||
149 | )))))) | ||
150 | |||
151 | gnunet-dev-env | ||
diff --git a/contrib/packages/guix/guix-env-py2.scm b/contrib/packages/guix/guix-env-py2.scm new file mode 100644 index 000000000..6085f96a9 --- /dev/null +++ b/contrib/packages/guix/guix-env-py2.scm | |||
@@ -0,0 +1,158 @@ | |||
1 | ;;; This file is part of GNUnet. | ||
2 | ;;; Copyright (C) 2016, 2017, 2018 GNUnet e.V. | ||
3 | ;;; | ||
4 | ;;; GNUnet is free software; you can redistribute it and/or modify | ||
5 | ;;; it under the terms of the GNU General Public License as published | ||
6 | ;;; by the Free Software Foundation; either version 3, or (at your | ||
7 | ;;; option) any later version. | ||
8 | ;;; | ||
9 | ;;; GNUnet is distributed in the hope that it will be useful, but | ||
10 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
12 | ;;; General Public License for more details. | ||
13 | ;;; | ||
14 | ;;; You should have received a copy of the GNU General Public License | ||
15 | ;;; along with GNUnet; see the file COPYING. If not, write to the | ||
16 | ;;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
17 | ;;; Boston, MA 02110-1301, USA. | ||
18 | |||
19 | (use-modules | ||
20 | (ice-9 popen) | ||
21 | (ice-9 match) | ||
22 | (ice-9 rdelim) | ||
23 | (guix packages) | ||
24 | (guix build-system gnu) | ||
25 | (guix gexp) | ||
26 | ((guix build utils) #:select (with-directory-excursion)) | ||
27 | (guix git-download) | ||
28 | (guix utils) ; current-source-directory | ||
29 | (gnu packages) | ||
30 | (gnu packages aidc) | ||
31 | (gnu packages autotools) | ||
32 | (gnu packages backup) | ||
33 | (gnu packages base) | ||
34 | (gnu packages compression) | ||
35 | (gnu packages curl) | ||
36 | (gnu packages databases) | ||
37 | (gnu packages file) | ||
38 | (gnu packages gettext) | ||
39 | (gnu packages glib) | ||
40 | (gnu packages gnome) | ||
41 | (gnu packages gnunet) | ||
42 | (gnu packages gnupg) | ||
43 | (gnu packages gnuzilla) | ||
44 | (gnu packages groff) | ||
45 | (gnu packages gstreamer) | ||
46 | (gnu packages gtk) | ||
47 | (gnu packages guile) | ||
48 | (gnu packages image) | ||
49 | (gnu packages image-viewers) | ||
50 | (gnu packages libidn) | ||
51 | (gnu packages libunistring) | ||
52 | (gnu packages linux) | ||
53 | (gnu packages maths) | ||
54 | (gnu packages multiprecision) | ||
55 | (gnu packages perl) | ||
56 | (gnu packages pkg-config) | ||
57 | (gnu packages pulseaudio) | ||
58 | (gnu packages python) | ||
59 | (gnu packages tex) | ||
60 | (gnu packages texinfo) | ||
61 | (gnu packages tex) | ||
62 | (gnu packages tls) | ||
63 | (gnu packages upnp) | ||
64 | (gnu packages video) | ||
65 | (gnu packages web) | ||
66 | (gnu packages xiph) | ||
67 | ((guix licenses) #:prefix license:)) | ||
68 | |||
69 | (define %source-dir (current-source-directory)) | ||
70 | |||
71 | (define gnunet-dev-env | ||
72 | (let* ((revision "1") | ||
73 | (select? (delay (or (git-predicate | ||
74 | (current-source-directory)) | ||
75 | source-file?)))) | ||
76 | (package | ||
77 | (inherit gnunet) | ||
78 | (name "gnunet") | ||
79 | (version (string-append "git" revision)) | ||
80 | (source | ||
81 | (local-file | ||
82 | (string-append (getcwd)) | ||
83 | #:recursive? #t)) | ||
84 | (inputs | ||
85 | `(("glpk" ,glpk) | ||
86 | ("gnurl" ,gnurl) | ||
87 | ("gstreamer" ,gstreamer) | ||
88 | ("gst-plugins-base" ,gst-plugins-base) | ||
89 | ("gnutls/dane" ,gnutls/dane) | ||
90 | ("libextractor" ,libextractor) | ||
91 | ("libgcrypt" ,libgcrypt) | ||
92 | ("libidn" ,libidn) | ||
93 | ("libmicrohttpd" ,libmicrohttpd) | ||
94 | ("libltdl" ,libltdl) | ||
95 | ("libunistring" ,libunistring) | ||
96 | ("openssl" ,openssl) | ||
97 | ("opus" ,opus) | ||
98 | ("pulseaudio" ,pulseaudio) | ||
99 | ("sqlite" ,sqlite) | ||
100 | ("postgresql" ,postgresql) | ||
101 | ("mysql" ,mysql) | ||
102 | ("zlib" ,zlib) | ||
103 | ("perl" ,perl) | ||
104 | ("python-2" ,python-2) ; tests and gnunet-qr | ||
105 | ("python2-future" ,python2-future) | ||
106 | ("jansson" ,jansson) | ||
107 | ("nss" ,nss) | ||
108 | ("glib" ,glib "bin") | ||
109 | ("gmp" ,gmp) | ||
110 | ("bluez" ,bluez) ; for optional bluetooth feature | ||
111 | ("glib" ,glib) | ||
112 | ;; ("texlive" ,texlive) ;FIXME: minimize. | ||
113 | ("texlive-tiny" ,texlive-tiny) ;; Seems to be enough for _just_ info output. | ||
114 | ("miniupnpc" ,miniupnpc) | ||
115 | ("libogg" ,libogg))) | ||
116 | (native-inputs | ||
117 | `(("pkg-config" ,pkg-config) | ||
118 | ("autoconf" ,autoconf) | ||
119 | ("automake" ,automake) | ||
120 | ("gnu-gettext" ,gnu-gettext) | ||
121 | ("which" ,which) | ||
122 | ("texinfo" ,texinfo-5) ; Debian stable: 5.2 | ||
123 | ("libtool" ,libtool))) | ||
124 | (outputs '("out" "debug")) | ||
125 | (arguments | ||
126 | `(;#:configure-flags | ||
127 | ;;(list (string-append "--with-nssdir=" %output "/lib") | ||
128 | ;;"--enable-gcc-hardening" | ||
129 | ;;"--enable-linker-hardening" | ||
130 | ;;;;"--enable-documentation-only") | ||
131 | ;;;"--enable-logging=verbose" | ||
132 | ;;;"CFLAGS=-ggdb -O0") | ||
133 | #:phases | ||
134 | ;; swap check and install phases and set paths to installed bin | ||
135 | (modify-phases %standard-phases | ||
136 | (add-after 'unpack 'patch-bin-sh | ||
137 | (lambda _ | ||
138 | (for-each (lambda (f) (chmod f #o755)) | ||
139 | (find-files "po" "")) | ||
140 | #t)) | ||
141 | (add-after 'patch-bin-sh 'bootstrap | ||
142 | (lambda _ | ||
143 | (zero? (system* "sh" "bootstrap")))) | ||
144 | ;;(add-before 'build 'chdir | ||
145 | ;; (lambda _ | ||
146 | ;; (chdir "doc/documentation"))) | ||
147 | (delete 'check) | ||
148 | ;; XXX: https://gnunet.org/bugs/view.php?id=4619 | ||
149 | (add-after 'install 'set-path-for-check | ||
150 | (lambda* (#:key outputs #:allow-other-keys) | ||
151 | (let* ((out (assoc-ref outputs "out")) | ||
152 | (bin (string-append out "/bin")) | ||
153 | (lib (string-append out "/lib"))) | ||
154 | (setenv "GNUNET_PREFIX" lib) | ||
155 | (setenv "PATH" (string-append (getenv "PATH") ":" bin)) | ||
156 | (zero? (system* "make" "check"))))))))))) | ||
157 | |||
158 | gnunet-dev-env | ||
diff --git a/doc/documentation/chapters/user.texi b/doc/documentation/chapters/user.texi index 3d4f55e41..f2dc5b35d 100644 --- a/doc/documentation/chapters/user.texi +++ b/doc/documentation/chapters/user.texi | |||
@@ -1093,10 +1093,12 @@ $ gnunet-publish [-n] [-k KEYWORDS]* [-m TYPE:VALUE] FILENAME | |||
1093 | @subsubsection Important command-line options | 1093 | @subsubsection Important command-line options |
1094 | @c %**end of header | 1094 | @c %**end of header |
1095 | 1095 | ||
1096 | The option -k is used to specify keywords for the file that | 1096 | The option @code{-k} is used to specify keywords for the file that |
1097 | should be inserted. You can supply any number of keywords, | 1097 | should be inserted. You can supply any number of keywords, |
1098 | and each of the keywords will be sufficient to locate and | 1098 | and each of the keywords will be sufficient to locate and |
1099 | retrieve the file. | 1099 | retrieve the file. Please note that you must use the @code{-k} option |
1100 | more than once -- one for each expression you use as a keyword for | ||
1101 | the filename. | ||
1100 | 1102 | ||
1101 | The -m option is used to specify meta-data, such as descriptions. | 1103 | The -m option is used to specify meta-data, such as descriptions. |
1102 | You can use -m multiple times. The TYPE passed must be from the | 1104 | You can use -m multiple times. The TYPE passed must be from the |
diff --git a/doc/documentation/gnunet.texi b/doc/documentation/gnunet.texi index e1847c227..cd2f04399 100644 --- a/doc/documentation/gnunet.texi +++ b/doc/documentation/gnunet.texi | |||
@@ -43,6 +43,14 @@ Foundation Web site at @url{http://www.gnu.org/licenses/gpl.html}. | |||
43 | @end copying | 43 | @end copying |
44 | 44 | ||
45 | @c TODO: Improve this and improve https://directory.fsf.org/wiki/Gnunet | 45 | @c TODO: Improve this and improve https://directory.fsf.org/wiki/Gnunet |
46 | @c NOTE FOR TRANSLATORS: Due to en.wikipedia.org being the wikipedia | ||
47 | @c which is more up to date than others, refrain | ||
48 | @c from using localized wikipedia unless you are | ||
49 | @c sure the articles content is good enough. For | ||
50 | @c example the german wikipedia entry for GNUnet | ||
51 | @c is in a terrible shape, but the en.wikipedia.org | ||
52 | @c entry is still acceptable (although in need of | ||
53 | @c updates). | ||
46 | 54 | ||
47 | @dircategory Networking | 55 | @dircategory Networking |
48 | @direntry | 56 | @direntry |
diff --git a/po/POTFILES.in b/po/POTFILES.in index 28f51f366..de6bd90e4 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in | |||
@@ -4,13 +4,21 @@ src/arm/arm_monitor_api.c | |||
4 | src/arm/gnunet-arm.c | 4 | src/arm/gnunet-arm.c |
5 | src/arm/gnunet-service-arm.c | 5 | src/arm/gnunet-service-arm.c |
6 | src/arm/mockup-service.c | 6 | src/arm/mockup-service.c |
7 | src/ats-tests/ats-testing-experiment.c | ||
8 | src/ats-tests/ats-testing-log.c | ||
9 | src/ats-tests/ats-testing-preferences.c | ||
10 | src/ats-tests/ats-testing-traffic.c | ||
11 | src/ats-tests/ats-testing.c | ||
12 | src/ats-tests/gnunet-ats-sim.c | ||
13 | src/ats-tests/gnunet-solver-eval.c | ||
14 | src/ats-tool/gnunet-ats.c | ||
7 | src/ats/ats_api_connectivity.c | 15 | src/ats/ats_api_connectivity.c |
8 | src/ats/ats_api_performance.c | 16 | src/ats/ats_api_performance.c |
9 | src/ats/ats_api_scanner.c | 17 | src/ats/ats_api_scanner.c |
10 | src/ats/ats_api_scheduling.c | 18 | src/ats/ats_api_scheduling.c |
11 | src/ats/gnunet-ats-solver-eval.c | 19 | src/ats/gnunet-ats-solver-eval.c |
12 | src/ats/gnunet-service-ats_addresses.c | ||
13 | src/ats/gnunet-service-ats.c | 20 | src/ats/gnunet-service-ats.c |
21 | src/ats/gnunet-service-ats_addresses.c | ||
14 | src/ats/gnunet-service-ats_connectivity.c | 22 | src/ats/gnunet-service-ats_connectivity.c |
15 | src/ats/gnunet-service-ats_normalization.c | 23 | src/ats/gnunet-service-ats_normalization.c |
16 | src/ats/gnunet-service-ats_performance.c | 24 | src/ats/gnunet-service-ats_performance.c |
@@ -21,14 +29,6 @@ src/ats/gnunet-service-ats_scheduling.c | |||
21 | src/ats/plugin_ats_mlp.c | 29 | src/ats/plugin_ats_mlp.c |
22 | src/ats/plugin_ats_proportional.c | 30 | src/ats/plugin_ats_proportional.c |
23 | src/ats/plugin_ats_ril.c | 31 | src/ats/plugin_ats_ril.c |
24 | src/ats-tests/ats-testing.c | ||
25 | src/ats-tests/ats-testing-experiment.c | ||
26 | src/ats-tests/ats-testing-log.c | ||
27 | src/ats-tests/ats-testing-preferences.c | ||
28 | src/ats-tests/ats-testing-traffic.c | ||
29 | src/ats-tests/gnunet-ats-sim.c | ||
30 | src/ats-tests/gnunet-solver-eval.c | ||
31 | src/ats-tool/gnunet-ats.c | ||
32 | src/auction/gnunet-auction-create.c | 32 | src/auction/gnunet-auction-create.c |
33 | src/auction/gnunet-auction-info.c | 33 | src/auction/gnunet-auction-info.c |
34 | src/auction/gnunet-auction-join.c | 34 | src/auction/gnunet-auction-join.c |
@@ -40,8 +40,8 @@ src/block/plugin_block_test.c | |||
40 | src/cadet/cadet_api.c | 40 | src/cadet/cadet_api.c |
41 | src/cadet/cadet_test_lib.c | 41 | src/cadet/cadet_test_lib.c |
42 | src/cadet/desirability_table.c | 42 | src/cadet/desirability_table.c |
43 | src/cadet/gnunet-cadet.c | ||
44 | src/cadet/gnunet-cadet-profiler.c | 43 | src/cadet/gnunet-cadet-profiler.c |
44 | src/cadet/gnunet-cadet.c | ||
45 | src/cadet/gnunet-service-cadet.c | 45 | src/cadet/gnunet-service-cadet.c |
46 | src/cadet/gnunet-service-cadet_channel.c | 46 | src/cadet/gnunet-service-cadet_channel.c |
47 | src/cadet/gnunet-service-cadet_connection.c | 47 | src/cadet/gnunet-service-cadet_connection.c |
@@ -57,15 +57,15 @@ src/consensus/gnunet-service-consensus.c | |||
57 | src/consensus/plugin_block_consensus.c | 57 | src/consensus/plugin_block_consensus.c |
58 | src/conversation/conversation_api.c | 58 | src/conversation/conversation_api.c |
59 | src/conversation/conversation_api_call.c | 59 | src/conversation/conversation_api_call.c |
60 | src/conversation/gnunet-conversation.c | ||
61 | src/conversation/gnunet-conversation-test.c | 60 | src/conversation/gnunet-conversation-test.c |
62 | src/conversation/gnunet_gst.c | 61 | src/conversation/gnunet-conversation.c |
63 | src/conversation/gnunet_gst_test.c | ||
64 | src/conversation/gnunet-helper-audio-playback.c | ||
65 | src/conversation/gnunet-helper-audio-playback-gst.c | 62 | src/conversation/gnunet-helper-audio-playback-gst.c |
66 | src/conversation/gnunet-helper-audio-record.c | 63 | src/conversation/gnunet-helper-audio-playback.c |
67 | src/conversation/gnunet-helper-audio-record-gst.c | 64 | src/conversation/gnunet-helper-audio-record-gst.c |
65 | src/conversation/gnunet-helper-audio-record.c | ||
68 | src/conversation/gnunet-service-conversation.c | 66 | src/conversation/gnunet-service-conversation.c |
67 | src/conversation/gnunet_gst.c | ||
68 | src/conversation/gnunet_gst_test.c | ||
69 | src/conversation/microphone.c | 69 | src/conversation/microphone.c |
70 | src/conversation/plugin_gnsrecord_conversation.c | 70 | src/conversation/plugin_gnsrecord_conversation.c |
71 | src/conversation/speaker.c | 71 | src/conversation/speaker.c |
@@ -102,7 +102,6 @@ src/dht/dht_api.c | |||
102 | src/dht/dht_test_lib.c | 102 | src/dht/dht_test_lib.c |
103 | src/dht/gnunet-dht-get.c | 103 | src/dht/gnunet-dht-get.c |
104 | src/dht/gnunet-dht-monitor.c | 104 | src/dht/gnunet-dht-monitor.c |
105 | src/dht/gnunet_dht_profiler.c | ||
106 | src/dht/gnunet-dht-put.c | 105 | src/dht/gnunet-dht-put.c |
107 | src/dht/gnunet-service-dht.c | 106 | src/dht/gnunet-service-dht.c |
108 | src/dht/gnunet-service-dht_clients.c | 107 | src/dht/gnunet-service-dht_clients.c |
@@ -111,6 +110,7 @@ src/dht/gnunet-service-dht_hello.c | |||
111 | src/dht/gnunet-service-dht_neighbours.c | 110 | src/dht/gnunet-service-dht_neighbours.c |
112 | src/dht/gnunet-service-dht_nse.c | 111 | src/dht/gnunet-service-dht_nse.c |
113 | src/dht/gnunet-service-dht_routing.c | 112 | src/dht/gnunet-service-dht_routing.c |
113 | src/dht/gnunet_dht_profiler.c | ||
114 | src/dht/plugin_block_dht.c | 114 | src/dht/plugin_block_dht.c |
115 | src/dns/dns_api.c | 115 | src/dns/dns_api.c |
116 | src/dns/dnsparser.c | 116 | src/dns/dnsparser.c |
@@ -126,8 +126,8 @@ src/dv/gnunet-dv.c | |||
126 | src/dv/gnunet-service-dv.c | 126 | src/dv/gnunet-service-dv.c |
127 | src/dv/plugin_transport_dv.c | 127 | src/dv/plugin_transport_dv.c |
128 | src/exit/gnunet-daemon-exit.c | 128 | src/exit/gnunet-daemon-exit.c |
129 | src/exit/gnunet-helper-exit.c | ||
130 | src/exit/gnunet-helper-exit-windows.c | 129 | src/exit/gnunet-helper-exit-windows.c |
130 | src/exit/gnunet-helper-exit.c | ||
131 | src/fragmentation/defragmentation.c | 131 | src/fragmentation/defragmentation.c |
132 | src/fragmentation/fragmentation.c | 132 | src/fragmentation/fragmentation.c |
133 | src/fs/fs_api.c | 133 | src/fs/fs_api.c |
@@ -152,8 +152,8 @@ src/fs/gnunet-auto-share.c | |||
152 | src/fs/gnunet-daemon-fsprofiler.c | 152 | src/fs/gnunet-daemon-fsprofiler.c |
153 | src/fs/gnunet-directory.c | 153 | src/fs/gnunet-directory.c |
154 | src/fs/gnunet-download.c | 154 | src/fs/gnunet-download.c |
155 | src/fs/gnunet-fs.c | ||
156 | src/fs/gnunet-fs-profiler.c | 155 | src/fs/gnunet-fs-profiler.c |
156 | src/fs/gnunet-fs.c | ||
157 | src/fs/gnunet-helper-fs-publish.c | 157 | src/fs/gnunet-helper-fs-publish.c |
158 | src/fs/gnunet-publish.c | 158 | src/fs/gnunet-publish.c |
159 | src/fs/gnunet-search.c | 159 | src/fs/gnunet-search.c |
@@ -173,10 +173,10 @@ src/gns/gns_tld_api.c | |||
173 | src/gns/gnunet-bcd.c | 173 | src/gns/gnunet-bcd.c |
174 | src/gns/gnunet-dns2gns.c | 174 | src/gns/gnunet-dns2gns.c |
175 | src/gns/gnunet-gns-benchmark.c | 175 | src/gns/gnunet-gns-benchmark.c |
176 | src/gns/gnunet-gns.c | ||
177 | src/gns/gnunet-gns-helper-service-w32.c | 176 | src/gns/gnunet-gns-helper-service-w32.c |
178 | src/gns/gnunet-gns-import.c | 177 | src/gns/gnunet-gns-import.c |
179 | src/gns/gnunet-gns-proxy.c | 178 | src/gns/gnunet-gns-proxy.c |
179 | src/gns/gnunet-gns.c | ||
180 | src/gns/gnunet-service-gns.c | 180 | src/gns/gnunet-service-gns.c |
181 | src/gns/gnunet-service-gns_interceptor.c | 181 | src/gns/gnunet-service-gns_interceptor.c |
182 | src/gns/gnunet-service-gns_resolver.c | 182 | src/gns/gnunet-service-gns_resolver.c |
@@ -185,15 +185,15 @@ src/gns/nss/nss_gns_query.c | |||
185 | src/gns/plugin_block_gns.c | 185 | src/gns/plugin_block_gns.c |
186 | src/gns/plugin_gnsrecord_gns.c | 186 | src/gns/plugin_gnsrecord_gns.c |
187 | src/gns/plugin_rest_gns.c | 187 | src/gns/plugin_rest_gns.c |
188 | src/gns/w32nsp-install.c | ||
189 | src/gns/w32nsp-resolve.c | ||
190 | src/gns/w32nsp-uninstall.c | ||
191 | src/gns/w32nsp.c | ||
188 | src/gnsrecord/gnsrecord.c | 192 | src/gnsrecord/gnsrecord.c |
189 | src/gnsrecord/gnsrecord_crypto.c | 193 | src/gnsrecord/gnsrecord_crypto.c |
190 | src/gnsrecord/gnsrecord_misc.c | 194 | src/gnsrecord/gnsrecord_misc.c |
191 | src/gnsrecord/gnsrecord_serialization.c | 195 | src/gnsrecord/gnsrecord_serialization.c |
192 | src/gnsrecord/plugin_gnsrecord_dns.c | 196 | src/gnsrecord/plugin_gnsrecord_dns.c |
193 | src/gns/w32nsp.c | ||
194 | src/gns/w32nsp-install.c | ||
195 | src/gns/w32nsp-resolve.c | ||
196 | src/gns/w32nsp-uninstall.c | ||
197 | src/hello/address.c | 197 | src/hello/address.c |
198 | src/hello/gnunet-hello.c | 198 | src/hello/gnunet-hello.c |
199 | src/hello/hello.c | 199 | src/hello/hello.c |
@@ -202,11 +202,6 @@ src/hostlist/gnunet-daemon-hostlist_client.c | |||
202 | src/hostlist/gnunet-daemon-hostlist_server.c | 202 | src/hostlist/gnunet-daemon-hostlist_server.c |
203 | src/identity-attribute/identity_attribute.c | 203 | src/identity-attribute/identity_attribute.c |
204 | src/identity-attribute/plugin_identity_attribute_gnuid.c | 204 | src/identity-attribute/plugin_identity_attribute_gnuid.c |
205 | src/identity/gnunet-identity.c | ||
206 | src/identity/gnunet-service-identity.c | ||
207 | src/identity/identity_api.c | ||
208 | src/identity/identity_api_lookup.c | ||
209 | src/identity/plugin_rest_identity.c | ||
210 | src/identity-provider/gnunet-idp.c | 205 | src/identity-provider/gnunet-idp.c |
211 | src/identity-provider/gnunet-service-identity-provider.c | 206 | src/identity-provider/gnunet-service-identity-provider.c |
212 | src/identity-provider/identity_provider_api.c | 207 | src/identity-provider/identity_provider_api.c |
@@ -215,15 +210,20 @@ src/identity-provider/plugin_gnsrecord_identity_provider.c | |||
215 | src/identity-provider/plugin_identity_provider_sqlite.c | 210 | src/identity-provider/plugin_identity_provider_sqlite.c |
216 | src/identity-provider/plugin_rest_identity_provider.c | 211 | src/identity-provider/plugin_rest_identity_provider.c |
217 | src/identity-provider/plugin_rest_openid_connect.c | 212 | src/identity-provider/plugin_rest_openid_connect.c |
213 | src/identity/gnunet-identity.c | ||
214 | src/identity/gnunet-service-identity.c | ||
215 | src/identity/identity_api.c | ||
216 | src/identity/identity_api_lookup.c | ||
217 | src/identity/plugin_rest_identity.c | ||
218 | src/json/json.c | ||
219 | src/json/json_generator.c | ||
220 | src/json/json_helper.c | ||
221 | src/json/json_mhd.c | ||
218 | src/jsonapi/jsonapi.c | 222 | src/jsonapi/jsonapi.c |
219 | src/jsonapi/jsonapi_document.c | 223 | src/jsonapi/jsonapi_document.c |
220 | src/jsonapi/jsonapi_error.c | 224 | src/jsonapi/jsonapi_error.c |
221 | src/jsonapi/jsonapi_relationship.c | 225 | src/jsonapi/jsonapi_relationship.c |
222 | src/jsonapi/jsonapi_resource.c | 226 | src/jsonapi/jsonapi_resource.c |
223 | src/json/json.c | ||
224 | src/json/json_generator.c | ||
225 | src/json/json_helper.c | ||
226 | src/json/json_mhd.c | ||
227 | src/multicast/gnunet-multicast.c | 227 | src/multicast/gnunet-multicast.c |
228 | src/multicast/gnunet-service-multicast.c | 228 | src/multicast/gnunet-service-multicast.c |
229 | src/multicast/multicast_api.c | 229 | src/multicast/multicast_api.c |
@@ -237,8 +237,8 @@ src/namecache/namecache_api.c | |||
237 | src/namecache/plugin_namecache_flat.c | 237 | src/namecache/plugin_namecache_flat.c |
238 | src/namecache/plugin_namecache_postgres.c | 238 | src/namecache/plugin_namecache_postgres.c |
239 | src/namecache/plugin_namecache_sqlite.c | 239 | src/namecache/plugin_namecache_sqlite.c |
240 | src/namestore/gnunet-namestore.c | ||
241 | src/namestore/gnunet-namestore-fcfsd.c | 240 | src/namestore/gnunet-namestore-fcfsd.c |
241 | src/namestore/gnunet-namestore.c | ||
242 | src/namestore/gnunet-service-namestore.c | 242 | src/namestore/gnunet-service-namestore.c |
243 | src/namestore/gnunet-zoneimport.c | 243 | src/namestore/gnunet-zoneimport.c |
244 | src/namestore/namestore_api.c | 244 | src/namestore/namestore_api.c |
@@ -254,10 +254,10 @@ src/nat-auto/gnunet-service-nat-auto.c | |||
254 | src/nat-auto/gnunet-service-nat-auto_legacy.c | 254 | src/nat-auto/gnunet-service-nat-auto_legacy.c |
255 | src/nat-auto/nat_auto_api.c | 255 | src/nat-auto/nat_auto_api.c |
256 | src/nat-auto/nat_auto_api_test.c | 256 | src/nat-auto/nat_auto_api_test.c |
257 | src/nat/gnunet-helper-nat-client.c | ||
258 | src/nat/gnunet-helper-nat-client-windows.c | 257 | src/nat/gnunet-helper-nat-client-windows.c |
259 | src/nat/gnunet-helper-nat-server.c | 258 | src/nat/gnunet-helper-nat-client.c |
260 | src/nat/gnunet-helper-nat-server-windows.c | 259 | src/nat/gnunet-helper-nat-server-windows.c |
260 | src/nat/gnunet-helper-nat-server.c | ||
261 | src/nat/gnunet-nat.c | 261 | src/nat/gnunet-nat.c |
262 | src/nat/gnunet-service-nat.c | 262 | src/nat/gnunet-service-nat.c |
263 | src/nat/gnunet-service-nat_externalip.c | 263 | src/nat/gnunet-service-nat_externalip.c |
@@ -266,15 +266,15 @@ src/nat/gnunet-service-nat_mini.c | |||
266 | src/nat/gnunet-service-nat_stun.c | 266 | src/nat/gnunet-service-nat_stun.c |
267 | src/nat/nat_api.c | 267 | src/nat/nat_api.c |
268 | src/nat/nat_api_stun.c | 268 | src/nat/nat_api_stun.c |
269 | src/nse/gnunet-nse.c | ||
270 | src/nse/gnunet-nse-profiler.c | 269 | src/nse/gnunet-nse-profiler.c |
270 | src/nse/gnunet-nse.c | ||
271 | src/nse/gnunet-service-nse.c | 271 | src/nse/gnunet-service-nse.c |
272 | src/nse/nse_api.c | 272 | src/nse/nse_api.c |
273 | src/peerinfo-tool/gnunet-peerinfo.c | ||
274 | src/peerinfo-tool/gnunet-peerinfo_plugins.c | ||
273 | src/peerinfo/gnunet-service-peerinfo.c | 275 | src/peerinfo/gnunet-service-peerinfo.c |
274 | src/peerinfo/peerinfo_api.c | 276 | src/peerinfo/peerinfo_api.c |
275 | src/peerinfo/peerinfo_api_notify.c | 277 | src/peerinfo/peerinfo_api_notify.c |
276 | src/peerinfo-tool/gnunet-peerinfo.c | ||
277 | src/peerinfo-tool/gnunet-peerinfo_plugins.c | ||
278 | src/peerstore/gnunet-peerstore.c | 278 | src/peerstore/gnunet-peerstore.c |
279 | src/peerstore/gnunet-service-peerstore.c | 279 | src/peerstore/gnunet-service-peerstore.c |
280 | src/peerstore/peerstore_api.c | 280 | src/peerstore/peerstore_api.c |
@@ -319,20 +319,20 @@ src/revocation/gnunet-revocation.c | |||
319 | src/revocation/gnunet-service-revocation.c | 319 | src/revocation/gnunet-service-revocation.c |
320 | src/revocation/plugin_block_revocation.c | 320 | src/revocation/plugin_block_revocation.c |
321 | src/revocation/revocation_api.c | 321 | src/revocation/revocation_api.c |
322 | src/rps/gnunet-rps.c | ||
323 | src/rps/gnunet-rps-profiler.c | 322 | src/rps/gnunet-rps-profiler.c |
323 | src/rps/gnunet-rps.c | ||
324 | src/rps/gnunet-service-rps.c | 324 | src/rps/gnunet-service-rps.c |
325 | src/rps/gnunet-service-rps_custommap.c | 325 | src/rps/gnunet-service-rps_custommap.c |
326 | src/rps/gnunet-service-rps_sampler.c | 326 | src/rps/gnunet-service-rps_sampler.c |
327 | src/rps/gnunet-service-rps_sampler_elem.c | 327 | src/rps/gnunet-service-rps_sampler_elem.c |
328 | src/rps/gnunet-service-rps_view.c | 328 | src/rps/gnunet-service-rps_view.c |
329 | src/rps/rps_api.c | ||
330 | src/rps/rps-test_util.c | 329 | src/rps/rps-test_util.c |
330 | src/rps/rps_api.c | ||
331 | src/scalarproduct/gnunet-scalarproduct.c | 331 | src/scalarproduct/gnunet-scalarproduct.c |
332 | src/scalarproduct/gnunet-service-scalarproduct_alice.c | ||
333 | src/scalarproduct/gnunet-service-scalarproduct_bob.c | ||
334 | src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c | 332 | src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c |
335 | src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c | 333 | src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c |
334 | src/scalarproduct/gnunet-service-scalarproduct_alice.c | ||
335 | src/scalarproduct/gnunet-service-scalarproduct_bob.c | ||
336 | src/scalarproduct/scalarproduct_api.c | 336 | src/scalarproduct/scalarproduct_api.c |
337 | src/secretsharing/gnunet-secretsharing-profiler.c | 337 | src/secretsharing/gnunet-secretsharing-profiler.c |
338 | src/secretsharing/gnunet-service-secretsharing.c | 338 | src/secretsharing/gnunet-service-secretsharing.c |
@@ -361,15 +361,16 @@ src/statistics/gnunet-statistics.c | |||
361 | src/statistics/statistics_api.c | 361 | src/statistics/statistics_api.c |
362 | src/template/gnunet-service-template.c | 362 | src/template/gnunet-service-template.c |
363 | src/template/gnunet-template.c | 363 | src/template/gnunet-template.c |
364 | src/testbed-logger/gnunet-service-testbed-logger.c | ||
365 | src/testbed-logger/testbed_logger_api.c | ||
364 | src/testbed/generate-underlay-topology.c | 366 | src/testbed/generate-underlay-topology.c |
365 | src/testbed/gnunet-daemon-latency-logger.c | 367 | src/testbed/gnunet-daemon-latency-logger.c |
366 | src/testbed/gnunet-daemon-testbed-blacklist.c | 368 | src/testbed/gnunet-daemon-testbed-blacklist.c |
367 | src/testbed/gnunet-daemon-testbed-underlay.c | 369 | src/testbed/gnunet-daemon-testbed-underlay.c |
368 | src/testbed/gnunet-helper-testbed.c | 370 | src/testbed/gnunet-helper-testbed.c |
369 | src/testbed/gnunet_mpi_test.c | ||
370 | src/testbed/gnunet-service-test-barriers.c | 371 | src/testbed/gnunet-service-test-barriers.c |
371 | src/testbed/gnunet-service-testbed_barriers.c | ||
372 | src/testbed/gnunet-service-testbed.c | 372 | src/testbed/gnunet-service-testbed.c |
373 | src/testbed/gnunet-service-testbed_barriers.c | ||
373 | src/testbed/gnunet-service-testbed_cache.c | 374 | src/testbed/gnunet-service-testbed_cache.c |
374 | src/testbed/gnunet-service-testbed_connectionpool.c | 375 | src/testbed/gnunet-service-testbed_connectionpool.c |
375 | src/testbed/gnunet-service-testbed_cpustatus.c | 376 | src/testbed/gnunet-service-testbed_cpustatus.c |
@@ -377,20 +378,19 @@ src/testbed/gnunet-service-testbed_links.c | |||
377 | src/testbed/gnunet-service-testbed_meminfo.c | 378 | src/testbed/gnunet-service-testbed_meminfo.c |
378 | src/testbed/gnunet-service-testbed_oc.c | 379 | src/testbed/gnunet-service-testbed_oc.c |
379 | src/testbed/gnunet-service-testbed_peers.c | 380 | src/testbed/gnunet-service-testbed_peers.c |
380 | src/testbed/gnunet_testbed_mpi_spawn.c | ||
381 | src/testbed/gnunet-testbed-profiler.c | 381 | src/testbed/gnunet-testbed-profiler.c |
382 | src/testbed-logger/gnunet-service-testbed-logger.c | 382 | src/testbed/gnunet_mpi_test.c |
383 | src/testbed-logger/testbed_logger_api.c | 383 | src/testbed/gnunet_testbed_mpi_spawn.c |
384 | src/testbed/testbed_api_barriers.c | ||
385 | src/testbed/testbed_api.c | 384 | src/testbed/testbed_api.c |
385 | src/testbed/testbed_api_barriers.c | ||
386 | src/testbed/testbed_api_hosts.c | 386 | src/testbed/testbed_api_hosts.c |
387 | src/testbed/testbed_api_operations.c | 387 | src/testbed/testbed_api_operations.c |
388 | src/testbed/testbed_api_peers.c | 388 | src/testbed/testbed_api_peers.c |
389 | src/testbed/testbed_api_sd.c | 389 | src/testbed/testbed_api_sd.c |
390 | src/testbed/testbed_api_services.c | 390 | src/testbed/testbed_api_services.c |
391 | src/testbed/testbed_api_statistics.c | 391 | src/testbed/testbed_api_statistics.c |
392 | src/testbed/testbed_api_testbed.c | ||
393 | src/testbed/testbed_api_test.c | 392 | src/testbed/testbed_api_test.c |
393 | src/testbed/testbed_api_testbed.c | ||
394 | src/testbed/testbed_api_topology.c | 394 | src/testbed/testbed_api_topology.c |
395 | src/testbed/testbed_api_underlay.c | 395 | src/testbed/testbed_api_underlay.c |
396 | src/testing/gnunet-testing.c | 396 | src/testing/gnunet-testing.c |
@@ -399,28 +399,28 @@ src/testing/testing.c | |||
399 | src/topology/friends.c | 399 | src/topology/friends.c |
400 | src/topology/gnunet-daemon-topology.c | 400 | src/topology/gnunet-daemon-topology.c |
401 | src/transport/gnunet-helper-transport-bluetooth.c | 401 | src/transport/gnunet-helper-transport-bluetooth.c |
402 | src/transport/gnunet-helper-transport-wlan.c | ||
403 | src/transport/gnunet-helper-transport-wlan-dummy.c | 402 | src/transport/gnunet-helper-transport-wlan-dummy.c |
404 | src/transport/gnunet-service-transport_ats.c | 403 | src/transport/gnunet-helper-transport-wlan.c |
405 | src/transport/gnunet-service-transport.c | 404 | src/transport/gnunet-service-transport.c |
405 | src/transport/gnunet-service-transport_ats.c | ||
406 | src/transport/gnunet-service-transport_hello.c | 406 | src/transport/gnunet-service-transport_hello.c |
407 | src/transport/gnunet-service-transport_manipulation.c | 407 | src/transport/gnunet-service-transport_manipulation.c |
408 | src/transport/gnunet-service-transport_neighbours.c | 408 | src/transport/gnunet-service-transport_neighbours.c |
409 | src/transport/gnunet-service-transport_plugins.c | 409 | src/transport/gnunet-service-transport_plugins.c |
410 | src/transport/gnunet-service-transport_validation.c | 410 | src/transport/gnunet-service-transport_validation.c |
411 | src/transport/gnunet-transport.c | ||
412 | src/transport/gnunet-transport-certificate-creation.c | 411 | src/transport/gnunet-transport-certificate-creation.c |
413 | src/transport/gnunet-transport-profiler.c | 412 | src/transport/gnunet-transport-profiler.c |
414 | src/transport/gnunet-transport-wlan-receiver.c | 413 | src/transport/gnunet-transport-wlan-receiver.c |
415 | src/transport/gnunet-transport-wlan-sender.c | 414 | src/transport/gnunet-transport-wlan-sender.c |
415 | src/transport/gnunet-transport.c | ||
416 | src/transport/plugin_transport_http_client.c | 416 | src/transport/plugin_transport_http_client.c |
417 | src/transport/plugin_transport_http_common.c | 417 | src/transport/plugin_transport_http_common.c |
418 | src/transport/plugin_transport_http_server.c | 418 | src/transport/plugin_transport_http_server.c |
419 | src/transport/plugin_transport_smtp.c | 419 | src/transport/plugin_transport_smtp.c |
420 | src/transport/plugin_transport_tcp.c | 420 | src/transport/plugin_transport_tcp.c |
421 | src/transport/plugin_transport_template.c | 421 | src/transport/plugin_transport_template.c |
422 | src/transport/plugin_transport_udp_broadcasting.c | ||
423 | src/transport/plugin_transport_udp.c | 422 | src/transport/plugin_transport_udp.c |
423 | src/transport/plugin_transport_udp_broadcasting.c | ||
424 | src/transport/plugin_transport_unix.c | 424 | src/transport/plugin_transport_unix.c |
425 | src/transport/plugin_transport_wlan.c | 425 | src/transport/plugin_transport_wlan.c |
426 | src/transport/plugin_transport_xt.c | 426 | src/transport/plugin_transport_xt.c |
@@ -429,6 +429,11 @@ src/transport/tcp_connection_legacy.c | |||
429 | src/transport/tcp_server_legacy.c | 429 | src/transport/tcp_server_legacy.c |
430 | src/transport/tcp_server_mst_legacy.c | 430 | src/transport/tcp_server_mst_legacy.c |
431 | src/transport/tcp_service_legacy.c | 431 | src/transport/tcp_service_legacy.c |
432 | src/transport/transport-testing-filenames.c | ||
433 | src/transport/transport-testing-loggers.c | ||
434 | src/transport/transport-testing-main.c | ||
435 | src/transport/transport-testing-send.c | ||
436 | src/transport/transport-testing.c | ||
432 | src/transport/transport_api_address_to_string.c | 437 | src/transport/transport_api_address_to_string.c |
433 | src/transport/transport_api_blacklist.c | 438 | src/transport/transport_api_blacklist.c |
434 | src/transport/transport_api_core.c | 439 | src/transport/transport_api_core.c |
@@ -437,11 +442,6 @@ src/transport/transport_api_manipulation.c | |||
437 | src/transport/transport_api_monitor_peers.c | 442 | src/transport/transport_api_monitor_peers.c |
438 | src/transport/transport_api_monitor_plugins.c | 443 | src/transport/transport_api_monitor_plugins.c |
439 | src/transport/transport_api_offer_hello.c | 444 | src/transport/transport_api_offer_hello.c |
440 | src/transport/transport-testing.c | ||
441 | src/transport/transport-testing-filenames.c | ||
442 | src/transport/transport-testing-loggers.c | ||
443 | src/transport/transport-testing-main.c | ||
444 | src/transport/transport-testing-send.c | ||
445 | src/tun/regex.c | 445 | src/tun/regex.c |
446 | src/tun/tun.c | 446 | src/tun/tun.c |
447 | src/util/bandwidth.c | 447 | src/util/bandwidth.c |
@@ -455,8 +455,8 @@ src/util/configuration_loader.c | |||
455 | src/util/container_bloomfilter.c | 455 | src/util/container_bloomfilter.c |
456 | src/util/container_heap.c | 456 | src/util/container_heap.c |
457 | src/util/container_meta_data.c | 457 | src/util/container_meta_data.c |
458 | src/util/container_multihashmap32.c | ||
459 | src/util/container_multihashmap.c | 458 | src/util/container_multihashmap.c |
459 | src/util/container_multihashmap32.c | ||
460 | src/util/container_multipeermap.c | 460 | src/util/container_multipeermap.c |
461 | src/util/container_multishortmap.c | 461 | src/util/container_multishortmap.c |
462 | src/util/crypto_abe.c | 462 | src/util/crypto_abe.c |
@@ -476,8 +476,8 @@ src/util/crypto_symmetric.c | |||
476 | src/util/disk.c | 476 | src/util/disk.c |
477 | src/util/getopt.c | 477 | src/util/getopt.c |
478 | src/util/getopt_helpers.c | 478 | src/util/getopt_helpers.c |
479 | src/util/gnunet-config.c | ||
480 | src/util/gnunet-config-diff.c | 479 | src/util/gnunet-config-diff.c |
480 | src/util/gnunet-config.c | ||
481 | src/util/gnunet-ecc.c | 481 | src/util/gnunet-ecc.c |
482 | src/util/gnunet-helper-w32-console.c | 482 | src/util/gnunet-helper-w32-console.c |
483 | src/util/gnunet-resolver.c | 483 | src/util/gnunet-resolver.c |
@@ -508,13 +508,13 @@ src/util/time.c | |||
508 | src/util/w32cat.c | 508 | src/util/w32cat.c |
509 | src/util/win.c | 509 | src/util/win.c |
510 | src/util/winproc.c | 510 | src/util/winproc.c |
511 | src/vpn/gnunet-helper-vpn.c | ||
512 | src/vpn/gnunet-helper-vpn-windows.c | 511 | src/vpn/gnunet-helper-vpn-windows.c |
512 | src/vpn/gnunet-helper-vpn.c | ||
513 | src/vpn/gnunet-service-vpn.c | 513 | src/vpn/gnunet-service-vpn.c |
514 | src/vpn/gnunet-vpn.c | 514 | src/vpn/gnunet-vpn.c |
515 | src/vpn/vpn_api.c | 515 | src/vpn/vpn_api.c |
516 | src/zonemaster/gnunet-service-zonemaster.c | ||
517 | src/zonemaster/gnunet-service-zonemaster-monitor.c | 516 | src/zonemaster/gnunet-service-zonemaster-monitor.c |
517 | src/zonemaster/gnunet-service-zonemaster.c | ||
518 | src/fs/fs_api.h | 518 | src/fs/fs_api.h |
519 | src/include/gnunet_common.h | 519 | src/include/gnunet_common.h |
520 | src/include/gnunet_mq_lib.h | 520 | src/include/gnunet_mq_lib.h |
diff --git a/src/arm/test_arm_api_data.conf b/src/arm/test_arm_api_data.conf index 276b313b7..fef6cfb40 100644 --- a/src/arm/test_arm_api_data.conf +++ b/src/arm/test_arm_api_data.conf | |||
@@ -16,7 +16,7 @@ PORT = 23355 | |||
16 | 16 | ||
17 | [do-nothing] | 17 | [do-nothing] |
18 | START_ON_DEMAND = NO | 18 | START_ON_DEMAND = NO |
19 | PORT = 2223 | 19 | PORT = 48223 |
20 | HOSTNAME = localhost | 20 | HOSTNAME = localhost |
21 | BINARY = /will/be/overwritten/by/test_exponential_backoff | 21 | BINARY = /will/be/overwritten/by/test_exponential_backoff |
22 | ACCEPT_FROM = 127.0.0.1; | 22 | ACCEPT_FROM = 127.0.0.1; |
diff --git a/src/ats/ats_api_performance.c b/src/ats/ats_api_performance.c index caa1da034..0c196ea43 100644 --- a/src/ats/ats_api_performance.c +++ b/src/ats/ats_api_performance.c | |||
@@ -849,7 +849,7 @@ GNUNET_ATS_performance_change_preference (struct GNUNET_ATS_PerformanceHandle *p | |||
849 | count = 0; | 849 | count = 0; |
850 | va_start(ap, peer); | 850 | va_start(ap, peer); |
851 | while (GNUNET_ATS_PREFERENCE_END != | 851 | while (GNUNET_ATS_PREFERENCE_END != |
852 | (kind = va_arg (ap, enum GNUNET_ATS_PreferenceKind) )) | 852 | (kind = GNUNET_VA_ARG_ENUM (ap, GNUNET_ATS_PreferenceKind) )) |
853 | { | 853 | { |
854 | switch (kind) | 854 | switch (kind) |
855 | { | 855 | { |
@@ -875,7 +875,7 @@ GNUNET_ATS_performance_change_preference (struct GNUNET_ATS_PerformanceHandle *p | |||
875 | count = 0; | 875 | count = 0; |
876 | va_start(ap, peer); | 876 | va_start(ap, peer); |
877 | while (GNUNET_ATS_PREFERENCE_END != (kind = | 877 | while (GNUNET_ATS_PREFERENCE_END != (kind = |
878 | va_arg (ap, enum GNUNET_ATS_PreferenceKind) )) | 878 | GNUNET_VA_ARG_ENUM (ap, GNUNET_ATS_PreferenceKind) )) |
879 | { | 879 | { |
880 | pi[count].preference_kind = htonl (kind); | 880 | pi[count].preference_kind = htonl (kind); |
881 | switch (kind) | 881 | switch (kind) |
@@ -927,7 +927,7 @@ GNUNET_ATS_performance_give_feedback (struct GNUNET_ATS_PerformanceHandle *ph, | |||
927 | count = 0; | 927 | count = 0; |
928 | va_start(ap, scope); | 928 | va_start(ap, scope); |
929 | while (GNUNET_ATS_PREFERENCE_END != | 929 | while (GNUNET_ATS_PREFERENCE_END != |
930 | (kind = va_arg (ap, enum GNUNET_ATS_PreferenceKind) )) | 930 | (kind = GNUNET_VA_ARG_ENUM (ap, GNUNET_ATS_PreferenceKind) )) |
931 | { | 931 | { |
932 | switch (kind) | 932 | switch (kind) |
933 | { | 933 | { |
@@ -954,7 +954,7 @@ GNUNET_ATS_performance_give_feedback (struct GNUNET_ATS_PerformanceHandle *ph, | |||
954 | count = 0; | 954 | count = 0; |
955 | va_start(ap, scope); | 955 | va_start(ap, scope); |
956 | while (GNUNET_ATS_PREFERENCE_END != (kind = | 956 | while (GNUNET_ATS_PREFERENCE_END != (kind = |
957 | va_arg (ap, enum GNUNET_ATS_PreferenceKind) )) | 957 | GNUNET_VA_ARG_ENUM (ap, GNUNET_ATS_PreferenceKind) )) |
958 | { | 958 | { |
959 | pi[count].preference_kind = htonl (kind); | 959 | pi[count].preference_kind = htonl (kind); |
960 | switch (kind) | 960 | switch (kind) |
diff --git a/src/ats/plugin_ats_mlp.c b/src/ats/plugin_ats_mlp.c index 7e7594f90..544b8d97f 100644 --- a/src/ats/plugin_ats_mlp.c +++ b/src/ats/plugin_ats_mlp.c | |||
@@ -1554,6 +1554,7 @@ GAS_mlp_solve_problem (void *solver) | |||
1554 | struct GNUNET_TIME_Relative dur_mlp; | 1554 | struct GNUNET_TIME_Relative dur_mlp; |
1555 | 1555 | ||
1556 | GNUNET_assert(NULL != solver); | 1556 | GNUNET_assert(NULL != solver); |
1557 | dur_lp = GNUNET_TIME_UNIT_ZERO; | ||
1557 | 1558 | ||
1558 | if (GNUNET_YES == mlp->stat_bulk_lock) | 1559 | if (GNUNET_YES == mlp->stat_bulk_lock) |
1559 | { | 1560 | { |
diff --git a/src/ats/plugin_ats_proportional.c b/src/ats/plugin_ats_proportional.c index b4ca70dc7..08fb7a9a7 100644 --- a/src/ats/plugin_ats_proportional.c +++ b/src/ats/plugin_ats_proportional.c | |||
@@ -1005,7 +1005,7 @@ GAS_proportional_address_property_changed (void *solver, | |||
1005 | static void | 1005 | static void |
1006 | GAS_proportional_address_add (void *solver, | 1006 | GAS_proportional_address_add (void *solver, |
1007 | struct ATS_Address *address, | 1007 | struct ATS_Address *address, |
1008 | enum GNUNET_ATS_Network_Type network) | 1008 | uint32_t network) |
1009 | { | 1009 | { |
1010 | struct GAS_PROPORTIONAL_Handle *s = solver; | 1010 | struct GAS_PROPORTIONAL_Handle *s = solver; |
1011 | struct Network *net; | 1011 | struct Network *net; |
diff --git a/src/cadet/cadet_test_lib.c b/src/cadet/cadet_test_lib.c index 760378c89..1a1c15f48 100644 --- a/src/cadet/cadet_test_lib.c +++ b/src/cadet/cadet_test_lib.c | |||
@@ -135,6 +135,11 @@ cadet_connect_adapter (void *cls, | |||
135 | struct GNUNET_CADET_Handle *h; | 135 | struct GNUNET_CADET_Handle *h; |
136 | 136 | ||
137 | h = GNUNET_CADET_connect (cfg); | 137 | h = GNUNET_CADET_connect (cfg); |
138 | if (NULL == h) | ||
139 | { | ||
140 | GNUNET_break(0); | ||
141 | return NULL; | ||
142 | } | ||
138 | if (NULL == ctx->ports) | 143 | if (NULL == ctx->ports) |
139 | return h; | 144 | return h; |
140 | actx->ports = GNUNET_new_array (ctx->port_count, | 145 | actx->ports = GNUNET_new_array (ctx->port_count, |
diff --git a/src/cadet/gnunet-cadet.c b/src/cadet/gnunet-cadet.c index 04a595a7b..ed297196e 100644 --- a/src/cadet/gnunet-cadet.c +++ b/src/cadet/gnunet-cadet.c | |||
@@ -196,6 +196,11 @@ shutdown_task (void *cls) | |||
196 | { | 196 | { |
197 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 197 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
198 | "Shutdown\n"); | 198 | "Shutdown\n"); |
199 | if (NULL != lp) | ||
200 | { | ||
201 | GNUNET_CADET_close_port (lp); | ||
202 | lp = NULL; | ||
203 | } | ||
199 | if (NULL != ch) | 204 | if (NULL != ch) |
200 | { | 205 | { |
201 | GNUNET_CADET_channel_destroy (ch); | 206 | GNUNET_CADET_channel_destroy (ch); |
diff --git a/src/core/test_core_api_data.conf b/src/core/test_core_api_data.conf index a13cc8706..420849ba9 100644 --- a/src/core/test_core_api_data.conf +++ b/src/core/test_core_api_data.conf | |||
@@ -6,6 +6,6 @@ WAN_QUOTA_IN = 64 kiB | |||
6 | WAN_QUOTA_OUT = 64 kiB | 6 | WAN_QUOTA_OUT = 64 kiB |
7 | 7 | ||
8 | [core] | 8 | [core] |
9 | PORT = 2092 | 9 | PORT = 52092 |
10 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-core.sock | 10 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-core.sock |
11 | 11 | ||
diff --git a/src/core/test_core_api_send_to_self.conf b/src/core/test_core_api_send_to_self.conf index ad6d4dc60..c2a459bb9 100644 --- a/src/core/test_core_api_send_to_self.conf +++ b/src/core/test_core_api_send_to_self.conf | |||
@@ -8,7 +8,7 @@ WAN_QUOTA_OUT = 104757600 | |||
8 | 8 | ||
9 | [test-sts] | 9 | [test-sts] |
10 | IMMEDIATE_START = YES | 10 | IMMEDIATE_START = YES |
11 | PORT = 9252 | 11 | PORT = 59252 |
12 | HOSTNAME = localhost | 12 | HOSTNAME = localhost |
13 | BINARY = test_core_api_send_to_self | 13 | BINARY = test_core_api_send_to_self |
14 | ACCEPT_FROM = 127.0.0.1; | 14 | ACCEPT_FROM = 127.0.0.1; |
diff --git a/src/datastore/plugin_datastore_sqlite.c b/src/datastore/plugin_datastore_sqlite.c index 80960c676..fc1706400 100644 --- a/src/datastore/plugin_datastore_sqlite.c +++ b/src/datastore/plugin_datastore_sqlite.c | |||
@@ -855,9 +855,10 @@ sqlite_plugin_get_zero_anonymity (void *cls, | |||
855 | void *proc_cls) | 855 | void *proc_cls) |
856 | { | 856 | { |
857 | struct Plugin *plugin = cls; | 857 | struct Plugin *plugin = cls; |
858 | uint32_t type32 = type; | ||
858 | struct GNUNET_SQ_QueryParam params[] = { | 859 | struct GNUNET_SQ_QueryParam params[] = { |
859 | GNUNET_SQ_query_param_uint64 (&next_uid), | 860 | GNUNET_SQ_query_param_uint64 (&next_uid), |
860 | GNUNET_SQ_query_param_uint32 (&type), | 861 | GNUNET_SQ_query_param_uint32 (&type32), |
861 | GNUNET_SQ_query_param_end | 862 | GNUNET_SQ_query_param_end |
862 | }; | 863 | }; |
863 | 864 | ||
diff --git a/src/dv/test_transport_blacklist_data.conf b/src/dv/test_transport_blacklist_data.conf index 534a61849..ea55a196b 100644 --- a/src/dv/test_transport_blacklist_data.conf +++ b/src/dv/test_transport_blacklist_data.conf | |||
@@ -1,5 +1,5 @@ | |||
1 | @INLINE@ template_dv.conf | 1 | @INLINE@ template_dv.conf |
2 | 2 | ||
3 | [transport] | 3 | [transport] |
4 | PORT = 2565 | 4 | PORT = 52565 |
5 | PLUGINS = tcp | 5 | PLUGINS = tcp |
diff --git a/src/dv/test_transport_dv_data.conf b/src/dv/test_transport_dv_data.conf index 307921ac4..a21fba8a7 100644 --- a/src/dv/test_transport_dv_data.conf +++ b/src/dv/test_transport_dv_data.conf | |||
@@ -1,7 +1,7 @@ | |||
1 | @INLINE@ template_dv.conf | 1 | @INLINE@ template_dv.conf |
2 | 2 | ||
3 | [transport] | 3 | [transport] |
4 | PORT = 2565 | 4 | PORT = 52565 |
5 | PLUGINS = tcp dv | 5 | PLUGINS = tcp dv |
6 | #PREFIX = valgrind --leak-check=full --track-fds=yes --leak-resolution=high | 6 | #PREFIX = valgrind --leak-check=full --track-fds=yes --leak-resolution=high |
7 | 7 | ||
diff --git a/src/fs/fs_api.c b/src/fs/fs_api.c index 0857110b1..9b783ba93 100644 --- a/src/fs/fs_api.c +++ b/src/fs/fs_api.c | |||
@@ -3112,7 +3112,7 @@ GNUNET_FS_start (const struct GNUNET_CONFIGURATION_Handle *cfg, | |||
3112 | ret->max_parallel_requests = DEFAULT_MAX_PARALLEL_REQUESTS; | 3112 | ret->max_parallel_requests = DEFAULT_MAX_PARALLEL_REQUESTS; |
3113 | ret->avg_block_latency = GNUNET_TIME_UNIT_MINUTES; /* conservative starting point */ | 3113 | ret->avg_block_latency = GNUNET_TIME_UNIT_MINUTES; /* conservative starting point */ |
3114 | va_start (ap, flags); | 3114 | va_start (ap, flags); |
3115 | while (GNUNET_FS_OPTIONS_END != (opt = va_arg (ap, enum GNUNET_FS_OPTIONS))) | 3115 | while (GNUNET_FS_OPTIONS_END != (opt = GNUNET_VA_ARG_ENUM (ap,GNUNET_FS_OPTIONS))) |
3116 | { | 3116 | { |
3117 | switch (opt) | 3117 | switch (opt) |
3118 | { | 3118 | { |
diff --git a/src/fs/gnunet-service-fs_pr.c b/src/fs/gnunet-service-fs_pr.c index 8c431532f..f1a115cb6 100644 --- a/src/fs/gnunet-service-fs_pr.c +++ b/src/fs/gnunet-service-fs_pr.c | |||
@@ -1601,7 +1601,7 @@ called_from_on_demand: | |||
1601 | GNUNET_BLOCK_get_key (GSF_block_ctx, type, data, size, &query)) | 1601 | GNUNET_BLOCK_get_key (GSF_block_ctx, type, data, size, &query)) |
1602 | { | 1602 | { |
1603 | GNUNET_break (0); | 1603 | GNUNET_break (0); |
1604 | GNUNET_DATASTORE_remove (GSF_dsh, key, size, data, -1, -1, | 1604 | GNUNET_DATASTORE_remove (GSF_dsh, key, size, data, UINT_MAX, UINT_MAX, |
1605 | NULL, NULL); | 1605 | NULL, NULL); |
1606 | start_local_query (pr, | 1606 | start_local_query (pr, |
1607 | uid + 1 /* next_uid */, | 1607 | uid + 1 /* next_uid */, |
diff --git a/src/fs/test_fs_defaults.conf b/src/fs/test_fs_defaults.conf index 42661b25d..6ead78257 100644 --- a/src/fs/test_fs_defaults.conf +++ b/src/fs/test_fs_defaults.conf | |||
@@ -21,7 +21,7 @@ QUOTA = 100 MB | |||
21 | 21 | ||
22 | [transport-tcp] | 22 | [transport-tcp] |
23 | BINDTO = 127.0.0.1 | 23 | BINDTO = 127.0.0.1 |
24 | PORT = 4368 | 24 | PORT = 54368 |
25 | 25 | ||
26 | [peerinfo] | 26 | [peerinfo] |
27 | NO_IO = YES | 27 | NO_IO = YES |
diff --git a/src/gns/gnunet-gns-proxy.c b/src/gns/gnunet-gns-proxy.c index 08450d995..d66f5c658 100644 --- a/src/gns/gnunet-gns-proxy.c +++ b/src/gns/gnunet-gns-proxy.c | |||
@@ -1948,7 +1948,7 @@ create_response (void *cls, | |||
1948 | s5r); | 1948 | s5r); |
1949 | { | 1949 | { |
1950 | const char *us; | 1950 | const char *us; |
1951 | long upload_size; | 1951 | long upload_size = 0; |
1952 | 1952 | ||
1953 | us = MHD_lookup_connection_value (con, | 1953 | us = MHD_lookup_connection_value (con, |
1954 | MHD_HEADER_KIND, | 1954 | MHD_HEADER_KIND, |
diff --git a/src/gns/gnunet-service-gns_interceptor.c b/src/gns/gnunet-service-gns_interceptor.c index ecf4d59f5..42f3e1514 100644 --- a/src/gns/gnunet-service-gns_interceptor.c +++ b/src/gns/gnunet-service-gns_interceptor.c | |||
@@ -103,7 +103,7 @@ reply_to_dns (void *cls, uint32_t rd_count, | |||
103 | unsigned int num_answers; | 103 | unsigned int num_answers; |
104 | unsigned int skip_answers; | 104 | unsigned int skip_answers; |
105 | unsigned int skip_additional; | 105 | unsigned int skip_additional; |
106 | size_t off; | 106 | size_t off = 0; |
107 | 107 | ||
108 | /* Put records in the DNS packet */ | 108 | /* Put records in the DNS packet */ |
109 | num_answers = 0; | 109 | num_answers = 0; |
diff --git a/src/gns/nss/nss_gns.c b/src/gns/nss/nss_gns.c index 03ac6e09c..9c9233d35 100644 --- a/src/gns/nss/nss_gns.c +++ b/src/gns/nss/nss_gns.c | |||
@@ -157,7 +157,7 @@ _nss_gns_gethostbyname2_r( | |||
157 | * correctly */ | 157 | * correctly */ |
158 | idx += l; | 158 | idx += l; |
159 | 159 | ||
160 | /* Address array address_lenght is always a multiple of 32bits */ | 160 | /* Address array address_length is always a multiple of 32bits */ |
161 | for (i = 0; i < u.count; i++) | 161 | for (i = 0; i < u.count; i++) |
162 | ((char**) (buffer+idx))[i] = buffer+astart+address_length*i; | 162 | ((char**) (buffer+idx))[i] = buffer+astart+address_length*i; |
163 | ((char**) (buffer+idx))[i] = NULL; | 163 | ((char**) (buffer+idx))[i] = NULL; |
diff --git a/src/gnsrecord/gnsrecord_serialization.c b/src/gnsrecord/gnsrecord_serialization.c index adbf02755..934d36102 100644 --- a/src/gnsrecord/gnsrecord_serialization.c +++ b/src/gnsrecord/gnsrecord_serialization.c | |||
@@ -90,6 +90,9 @@ GNUNET_GNSRECORD_records_get_size (unsigned int rd_count, | |||
90 | { | 90 | { |
91 | size_t ret; | 91 | size_t ret; |
92 | 92 | ||
93 | if (0 == rd_count) | ||
94 | return 0; | ||
95 | |||
93 | ret = sizeof (struct NetworkRecord) * rd_count; | 96 | ret = sizeof (struct NetworkRecord) * rd_count; |
94 | for (unsigned int i=0;i<rd_count;i++) | 97 | for (unsigned int i=0;i<rd_count;i++) |
95 | { | 98 | { |
@@ -120,6 +123,21 @@ GNUNET_GNSRECORD_records_get_size (unsigned int rd_count, | |||
120 | GNUNET_break (0); | 123 | GNUNET_break (0); |
121 | return -1; | 124 | return -1; |
122 | } | 125 | } |
126 | //Do not pad PKEY | ||
127 | if (GNUNET_GNSRECORD_TYPE_PKEY == rd->record_type) | ||
128 | return ret; | ||
129 | /** | ||
130 | * Efficiently round up to the next | ||
131 | * power of 2 for padding | ||
132 | * https://graphics.stanford.edu/~seander/bithacks.html#RoundUpPowerOf2 | ||
133 | */ | ||
134 | ret--; | ||
135 | ret |= ret >> 1; | ||
136 | ret |= ret >> 2; | ||
137 | ret |= ret >> 4; | ||
138 | ret |= ret >> 8; | ||
139 | ret |= ret >> 16; | ||
140 | ret++; | ||
123 | return (ssize_t) ret; | 141 | return (ssize_t) ret; |
124 | } | 142 | } |
125 | 143 | ||
@@ -135,9 +153,9 @@ GNUNET_GNSRECORD_records_get_size (unsigned int rd_count, | |||
135 | */ | 153 | */ |
136 | ssize_t | 154 | ssize_t |
137 | GNUNET_GNSRECORD_records_serialize (unsigned int rd_count, | 155 | GNUNET_GNSRECORD_records_serialize (unsigned int rd_count, |
138 | const struct GNUNET_GNSRECORD_Data *rd, | 156 | const struct GNUNET_GNSRECORD_Data *rd, |
139 | size_t dest_size, | 157 | size_t dest_size, |
140 | char *dest) | 158 | char *dest) |
141 | { | 159 | { |
142 | struct NetworkRecord rec; | 160 | struct NetworkRecord rec; |
143 | size_t off; | 161 | size_t off; |
@@ -190,7 +208,10 @@ GNUNET_GNSRECORD_records_serialize (unsigned int rd_count, | |||
190 | } | 208 | } |
191 | #endif | 209 | #endif |
192 | } | 210 | } |
193 | return off; | 211 | memset (&dest[off], |
212 | 0, | ||
213 | dest_size-off); | ||
214 | return dest_size; | ||
194 | } | 215 | } |
195 | 216 | ||
196 | 217 | ||
@@ -205,9 +226,9 @@ GNUNET_GNSRECORD_records_serialize (unsigned int rd_count, | |||
205 | */ | 226 | */ |
206 | int | 227 | int |
207 | GNUNET_GNSRECORD_records_deserialize (size_t len, | 228 | GNUNET_GNSRECORD_records_deserialize (size_t len, |
208 | const char *src, | 229 | const char *src, |
209 | unsigned int rd_count, | 230 | unsigned int rd_count, |
210 | struct GNUNET_GNSRECORD_Data *dest) | 231 | struct GNUNET_GNSRECORD_Data *dest) |
211 | { | 232 | { |
212 | struct NetworkRecord rec; | 233 | struct NetworkRecord rec; |
213 | size_t off; | 234 | size_t off; |
diff --git a/src/include/gnunet_common.h b/src/include/gnunet_common.h index ec91b35ad..b4bf5b0aa 100644 --- a/src/include/gnunet_common.h +++ b/src/include/gnunet_common.h | |||
@@ -24,6 +24,7 @@ | |||
24 | * | 24 | * |
25 | * @author Christian Grothoff | 25 | * @author Christian Grothoff |
26 | * @author Nils Durner | 26 | * @author Nils Durner |
27 | * @author Martin Schanzenbach | ||
27 | * | 28 | * |
28 | * @defgroup logging Logging | 29 | * @defgroup logging Logging |
29 | * @see [Documentation](https://gnunet.org/logging) | 30 | * @see [Documentation](https://gnunet.org/logging) |
@@ -112,6 +113,11 @@ extern "C" | |||
112 | #endif | 113 | #endif |
113 | 114 | ||
114 | /** | 115 | /** |
116 | * wrap va_arg for enums | ||
117 | */ | ||
118 | #define GNUNET_VA_ARG_ENUM(va,X) ((enum X) va_arg (va, int)) | ||
119 | |||
120 | /** | ||
115 | * @ingroup logging | 121 | * @ingroup logging |
116 | * define #GNUNET_EXTRA_LOGGING if using this header outside the GNUnet source | 122 | * define #GNUNET_EXTRA_LOGGING if using this header outside the GNUnet source |
117 | * tree where gnunet_config.h is unavailable | 123 | * tree where gnunet_config.h is unavailable |
diff --git a/src/multicast/gnunet-service-multicast.c b/src/multicast/gnunet-service-multicast.c index cf7dde913..20d29b906 100644 --- a/src/multicast/gnunet-service-multicast.c +++ b/src/multicast/gnunet-service-multicast.c | |||
@@ -1448,6 +1448,12 @@ check_client_member_join (void *cls, | |||
1448 | uint16_t msg_size = ntohs (msg->header.size); | 1448 | uint16_t msg_size = ntohs (msg->header.size); |
1449 | struct GNUNET_PeerIdentity *relays = (struct GNUNET_PeerIdentity *) &msg[1]; | 1449 | struct GNUNET_PeerIdentity *relays = (struct GNUNET_PeerIdentity *) &msg[1]; |
1450 | uint32_t relay_count = ntohl (msg->relay_count); | 1450 | uint32_t relay_count = ntohl (msg->relay_count); |
1451 | |||
1452 | if (0 == relay_count) | ||
1453 | { | ||
1454 | GNUNET_break (0); | ||
1455 | return GNUNET_SYSERR; | ||
1456 | } | ||
1451 | if (UINT32_MAX / relay_count < sizeof (*relays)){ | 1457 | if (UINT32_MAX / relay_count < sizeof (*relays)){ |
1452 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, | 1458 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, |
1453 | "relay_count (%lu) * sizeof (*relays) (%lu) exceeds UINT32_MAX!\n", | 1459 | "relay_count (%lu) * sizeof (*relays) (%lu) exceeds UINT32_MAX!\n", |
diff --git a/src/namecache/gnunet-service-namecache.c b/src/namecache/gnunet-service-namecache.c index cda1267e8..c852aaacc 100644 --- a/src/namecache/gnunet-service-namecache.c +++ b/src/namecache/gnunet-service-namecache.c | |||
@@ -148,7 +148,11 @@ struct LookupBlockContext | |||
148 | * Operation id for the name lookup | 148 | * Operation id for the name lookup |
149 | */ | 149 | */ |
150 | uint32_t request_id; | 150 | uint32_t request_id; |
151 | 151 | ||
152 | /** | ||
153 | * Lookup status | ||
154 | */ | ||
155 | int status; | ||
152 | }; | 156 | }; |
153 | 157 | ||
154 | 158 | ||
@@ -166,7 +170,17 @@ handle_lookup_block_it (void *cls, | |||
166 | struct GNUNET_MQ_Envelope *env; | 170 | struct GNUNET_MQ_Envelope *env; |
167 | struct LookupBlockResponseMessage *r; | 171 | struct LookupBlockResponseMessage *r; |
168 | size_t esize; | 172 | size_t esize; |
173 | size_t bsize; | ||
169 | 174 | ||
175 | bsize = ntohl (block->purpose.size); | ||
176 | if (bsize < | ||
177 | (sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose) + sizeof (struct GNUNET_TIME_AbsoluteNBO))) | ||
178 | { | ||
179 | GNUNET_log (GNUNET_ERROR_TYPE_WARNING, | ||
180 | "Malformed block."); | ||
181 | lnc->status = GNUNET_SYSERR; | ||
182 | return; | ||
183 | } | ||
170 | esize = ntohl (block->purpose.size) | 184 | esize = ntohl (block->purpose.size) |
171 | - sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose) | 185 | - sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose) |
172 | - sizeof (struct GNUNET_TIME_AbsoluteNBO); | 186 | - sizeof (struct GNUNET_TIME_AbsoluteNBO); |
@@ -209,6 +223,7 @@ handle_lookup_block (void *cls, | |||
209 | 223 | ||
210 | lnc.request_id = ntohl (ln_msg->gns_header.r_id); | 224 | lnc.request_id = ntohl (ln_msg->gns_header.r_id); |
211 | lnc.nc = nc; | 225 | lnc.nc = nc; |
226 | lnc.status = GNUNET_OK; | ||
212 | if (GNUNET_SYSERR == | 227 | if (GNUNET_SYSERR == |
213 | (ret = GSN_database->lookup_block (GSN_database->cls, | 228 | (ret = GSN_database->lookup_block (GSN_database->cls, |
214 | &ln_msg->query, | 229 | &ln_msg->query, |
@@ -222,7 +237,7 @@ handle_lookup_block (void *cls, | |||
222 | GNUNET_SERVICE_client_drop (nc->client); | 237 | GNUNET_SERVICE_client_drop (nc->client); |
223 | return; | 238 | return; |
224 | } | 239 | } |
225 | if (0 == ret) | 240 | if ((0 == ret) || (GNUNET_SYSERR == lnc.status)) |
226 | { | 241 | { |
227 | /* no records match at all, generate empty response */ | 242 | /* no records match at all, generate empty response */ |
228 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 243 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
diff --git a/src/namecache/namecache_api.c b/src/namecache/namecache_api.c index 2bb233da1..2a60a2813 100644 --- a/src/namecache/namecache_api.c +++ b/src/namecache/namecache_api.c | |||
@@ -483,9 +483,11 @@ GNUNET_NAMECACHE_block_cache (struct GNUNET_NAMECACHE_Handle *h, | |||
483 | 483 | ||
484 | if (NULL == h->mq) | 484 | if (NULL == h->mq) |
485 | return NULL; | 485 | return NULL; |
486 | blen = ntohl (block->purpose.size) | 486 | blen = ntohl (block->purpose.size); |
487 | - sizeof (struct GNUNET_TIME_AbsoluteNBO) | 487 | GNUNET_assert (blen > (sizeof (struct GNUNET_TIME_AbsoluteNBO) + |
488 | - sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose); | 488 | sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose))); |
489 | blen -= (sizeof (struct GNUNET_TIME_AbsoluteNBO) + | ||
490 | sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose)); | ||
489 | rid = get_op_id (h); | 491 | rid = get_op_id (h); |
490 | qe = GNUNET_new (struct GNUNET_NAMECACHE_QueueEntry); | 492 | qe = GNUNET_new (struct GNUNET_NAMECACHE_QueueEntry); |
491 | qe->nsh = h; | 493 | qe->nsh = h; |
diff --git a/src/namestore/test_namestore_api_lookup_shadow.c b/src/namestore/test_namestore_api_lookup_shadow.c index ecfd03735..08977712b 100644 --- a/src/namestore/test_namestore_api_lookup_shadow.c +++ b/src/namestore/test_namestore_api_lookup_shadow.c | |||
@@ -277,9 +277,9 @@ main (int argc, char *argv[]) | |||
277 | { | 277 | { |
278 | res = 1; | 278 | res = 1; |
279 | } | 279 | } |
280 | GNUNET_free (cfg_name); | ||
281 | GNUNET_DISK_purge_cfg_dir (cfg_name, | 280 | GNUNET_DISK_purge_cfg_dir (cfg_name, |
282 | "GNUNET_TEST_HOME"); | 281 | "GNUNET_TEST_HOME"); |
282 | GNUNET_free (cfg_name); | ||
283 | return res; | 283 | return res; |
284 | } | 284 | } |
285 | 285 | ||
diff --git a/src/namestore/test_namestore_api_lookup_shadow_filter.c b/src/namestore/test_namestore_api_lookup_shadow_filter.c index b751ff703..7555f51e7 100644 --- a/src/namestore/test_namestore_api_lookup_shadow_filter.c +++ b/src/namestore/test_namestore_api_lookup_shadow_filter.c | |||
@@ -352,9 +352,9 @@ main (int argc, char *argv[]) | |||
352 | { | 352 | { |
353 | res = 1; | 353 | res = 1; |
354 | } | 354 | } |
355 | GNUNET_free (cfg_name); | ||
356 | GNUNET_DISK_purge_cfg_dir (cfg_name, | 355 | GNUNET_DISK_purge_cfg_dir (cfg_name, |
357 | "GNUNET_TEST_HOME"); | 356 | "GNUNET_TEST_HOME"); |
357 | GNUNET_free (cfg_name); | ||
358 | return res; | 358 | return res; |
359 | } | 359 | } |
360 | 360 | ||
diff --git a/src/namestore/test_namestore_api_sqlite.conf b/src/namestore/test_namestore_api_sqlite.conf index 82663400a..8c0e557e7 100644 --- a/src/namestore/test_namestore_api_sqlite.conf +++ b/src/namestore/test_namestore_api_sqlite.conf | |||
@@ -2,6 +2,7 @@ | |||
2 | 2 | ||
3 | [namestore] | 3 | [namestore] |
4 | DATABASE = sqlite | 4 | DATABASE = sqlite |
5 | PREFIX = valgrind --leak-check=full --track-origins=yes --log-file=/tmp/v_log | ||
5 | 6 | ||
6 | [namestore-sqlite] | 7 | [namestore-sqlite] |
7 | FILENAME = $GNUNET_TEST_HOME/namestore/sqlite_test.db | 8 | FILENAME = $GNUNET_TEST_HOME/namestore/sqlite_test.db |
diff --git a/src/nat/test_nat_test_data.conf b/src/nat/test_nat_test_data.conf index 84de6159e..03850ec06 100644 --- a/src/nat/test_nat_test_data.conf +++ b/src/nat/test_nat_test_data.conf | |||
@@ -6,7 +6,7 @@ GNUNET_TEST_HOME = $GNUNET_TMP/nat-test | |||
6 | 6 | ||
7 | [gnunet-nat-server] | 7 | [gnunet-nat-server] |
8 | HOSTNAME = localhost | 8 | HOSTNAME = localhost |
9 | PORT = 12345 | 9 | PORT = 57315 |
10 | 10 | ||
11 | [nat] | 11 | [nat] |
12 | # Are we behind NAT? | 12 | # Are we behind NAT? |
diff --git a/src/rps/gnunet-rps-profiler.c b/src/rps/gnunet-rps-profiler.c index a0e79e565..16f23e86c 100644 --- a/src/rps/gnunet-rps-profiler.c +++ b/src/rps/gnunet-rps-profiler.c | |||
@@ -1951,9 +1951,13 @@ static void compute_probabilities (uint32_t peer_idx) | |||
1951 | if ((GNUNET_YES == is_in_view (i, peer_idx)) && | 1951 | if ((GNUNET_YES == is_in_view (i, peer_idx)) && |
1952 | (1 <= (0.45 * view_size))) | 1952 | (1 <= (0.45 * view_size))) |
1953 | { | 1953 | { |
1954 | prob_push = 1.0 * binom (0.45 * view_size, 1) | 1954 | if (0 == binom (view_size, 0.45 * view_size)) prob_push = 0; |
1955 | / | 1955 | else |
1956 | binom (view_size, 0.45 * view_size); | 1956 | { |
1957 | prob_push = 1.0 * binom (0.45 * view_size, 1) | ||
1958 | / | ||
1959 | binom (view_size, 0.45 * view_size); | ||
1960 | } | ||
1957 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 1961 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
1958 | "\t\t%" PRIu32 " is in %" PRIu32 "'s view, prob: %f\n", | 1962 | "\t\t%" PRIu32 " is in %" PRIu32 "'s view, prob: %f\n", |
1959 | peer_idx, | 1963 | peer_idx, |
@@ -2318,6 +2322,7 @@ post_test_shutdown_ready_cb (void *cls, | |||
2318 | rps_peer->index); | 2322 | rps_peer->index); |
2319 | GNUNET_free (stat_cls); | 2323 | GNUNET_free (stat_cls); |
2320 | GNUNET_break (0); | 2324 | GNUNET_break (0); |
2325 | return; | ||
2321 | } | 2326 | } |
2322 | 2327 | ||
2323 | if (NULL != rps_peer->stat_op && | 2328 | if (NULL != rps_peer->stat_op && |
@@ -2494,7 +2499,6 @@ test_run (void *cls, | |||
2494 | struct OpListEntry *entry; | 2499 | struct OpListEntry *entry; |
2495 | 2500 | ||
2496 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "RUN was called\n"); | 2501 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "RUN was called\n"); |
2497 | printf ("test 1\n"); | ||
2498 | 2502 | ||
2499 | /* Check whether we timed out */ | 2503 | /* Check whether we timed out */ |
2500 | if (n_peers != num_peers || | 2504 | if (n_peers != num_peers || |
@@ -2578,7 +2582,6 @@ test_run (void *cls, | |||
2578 | * | 2582 | * |
2579 | * @param argc unused | 2583 | * @param argc unused |
2580 | * @param argv unused | 2584 | * @param argv unused |
2581 | * @return 0 on success | ||
2582 | */ | 2585 | */ |
2583 | static void | 2586 | static void |
2584 | run (void *cls, | 2587 | run (void *cls, |
@@ -2635,12 +2638,12 @@ run (void *cls, | |||
2635 | } | 2638 | } |
2636 | 2639 | ||
2637 | /* Compute number of bits for representing largest peer id */ | 2640 | /* Compute number of bits for representing largest peer id */ |
2638 | for (bits_needed = 1; (bits_needed << 1) < num_peers - 1; bits_needed++) | 2641 | for (bits_needed = 1; (1 << bits_needed) < num_peers; bits_needed++) |
2639 | ; | 2642 | ; |
2640 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 2643 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
2641 | "Need %u bits to represent largest peer id %" PRIu32 "\n", | 2644 | "Need %u bits to represent %" PRIu32 " peers\n", |
2642 | bits_needed, | 2645 | bits_needed, |
2643 | num_peers - 1); | 2646 | num_peers); |
2644 | 2647 | ||
2645 | rps_peers = GNUNET_new_array (num_peers, struct RPSPeer); | 2648 | rps_peers = GNUNET_new_array (num_peers, struct RPSPeer); |
2646 | peer_map = GNUNET_CONTAINER_multipeermap_create (num_peers, GNUNET_NO); | 2649 | peer_map = GNUNET_CONTAINER_multipeermap_create (num_peers, GNUNET_NO); |
@@ -2654,8 +2657,6 @@ run (void *cls, | |||
2654 | with the malicious portion */ | 2657 | with the malicious portion */ |
2655 | 2658 | ||
2656 | ok = 1; | 2659 | ok = 1; |
2657 | GNUNET_log (GNUNET_ERROR_TYPE_WARNING, | ||
2658 | "before _run()\n"); | ||
2659 | GNUNET_TESTBED_run (NULL, | 2660 | GNUNET_TESTBED_run (NULL, |
2660 | cfg, | 2661 | cfg, |
2661 | num_peers, | 2662 | num_peers, |
@@ -2664,10 +2665,6 @@ run (void *cls, | |||
2664 | NULL, | 2665 | NULL, |
2665 | &test_run, | 2666 | &test_run, |
2666 | NULL); | 2667 | NULL); |
2667 | GNUNET_log (GNUNET_ERROR_TYPE_WARNING, | ||
2668 | "after _run()\n"); | ||
2669 | GNUNET_log (GNUNET_ERROR_TYPE_WARNING, | ||
2670 | "gnunet-rps-profiler returned.\n"); | ||
2671 | } | 2668 | } |
2672 | 2669 | ||
2673 | /** | 2670 | /** |
@@ -2691,7 +2688,7 @@ main (int argc, char *argv[]) | |||
2691 | GNUNET_GETOPT_option_relative_time ('t', | 2688 | GNUNET_GETOPT_option_relative_time ('t', |
2692 | "timeout", | 2689 | "timeout", |
2693 | "TIMEOUT", | 2690 | "TIMEOUT", |
2694 | gettext_noop ("timeout for DHT PUT and GET requests (default: 1 min)"), | 2691 | gettext_noop ("timeout for the profiling"), |
2695 | &timeout), | 2692 | &timeout), |
2696 | 2693 | ||
2697 | GNUNET_GETOPT_option_uint ('r', | 2694 | GNUNET_GETOPT_option_uint ('r', |
diff --git a/src/rps/gnunet-rps.c b/src/rps/gnunet-rps.c index e09277589..739f71dac 100644 --- a/src/rps/gnunet-rps.c +++ b/src/rps/gnunet-rps.c | |||
@@ -155,7 +155,11 @@ run (void *cls, | |||
155 | (!view_update)) | 155 | (!view_update)) |
156 | { /* Request n PeerIDs */ | 156 | { /* Request n PeerIDs */ |
157 | /* If number was specified use it, else request single peer. */ | 157 | /* If number was specified use it, else request single peer. */ |
158 | num_peers = (NULL == args[0]) ? 1 : atoi (args[0]); | 158 | if (NULL == args[0] || |
159 | 0 == sscanf (args[0], "%lu", &num_peers)) | ||
160 | { | ||
161 | num_peers = 1; | ||
162 | } | ||
159 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 163 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
160 | "Requesting %" PRIu64 " PeerIDs\n", num_peers); | 164 | "Requesting %" PRIu64 " PeerIDs\n", num_peers); |
161 | req_handle = GNUNET_RPS_request_peers (rps_handle, num_peers, reply_handle, NULL); | 165 | req_handle = GNUNET_RPS_request_peers (rps_handle, num_peers, reply_handle, NULL); |
@@ -163,7 +167,11 @@ run (void *cls, | |||
163 | } else if (view_update) | 167 | } else if (view_update) |
164 | { | 168 | { |
165 | /* Get updates of view */ | 169 | /* Get updates of view */ |
166 | num_view_updates = (NULL == args[0]) ? 0 : atoi (args[0]); | 170 | if (NULL == args[0] || |
171 | 0 == sscanf (args[0], "%lu", &num_view_updates)) | ||
172 | { | ||
173 | num_view_updates = 0; | ||
174 | } | ||
167 | GNUNET_RPS_view_request (rps_handle, num_view_updates, view_update_handle, NULL); | 175 | GNUNET_RPS_view_request (rps_handle, num_view_updates, view_update_handle, NULL); |
168 | if (0 != num_view_updates) | 176 | if (0 != num_view_updates) |
169 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 177 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
diff --git a/src/rps/rps-test_util.c b/src/rps/rps-test_util.c index 9a1dfe0d8..0ee290e67 100644 --- a/src/rps/rps-test_util.c +++ b/src/rps/rps-test_util.c | |||
@@ -155,6 +155,9 @@ to_file_raw (const char *file_name, const char *buf, size_t size_buf) | |||
155 | 155 | ||
156 | return; | 156 | return; |
157 | } | 157 | } |
158 | if (GNUNET_YES != GNUNET_DISK_file_close (f)) | ||
159 | LOG (GNUNET_ERROR_TYPE_WARNING, | ||
160 | "Unable to close file\n"); | ||
158 | } | 161 | } |
159 | 162 | ||
160 | void | 163 | void |
@@ -384,7 +387,7 @@ store_prefix_file_name (const struct GNUNET_PeerIdentity *peer, | |||
384 | const char *prefix) | 387 | const char *prefix) |
385 | { | 388 | { |
386 | unsigned int len_file_name; | 389 | unsigned int len_file_name; |
387 | unsigned int out_size; | 390 | int out_size; |
388 | char *file_name; | 391 | char *file_name; |
389 | const char *pid_long; | 392 | const char *pid_long; |
390 | 393 | ||
diff --git a/src/rps/test_rps.conf b/src/rps/test_rps.conf index 77a0df2c5..05bb9f444 100644 --- a/src/rps/test_rps.conf +++ b/src/rps/test_rps.conf | |||
@@ -21,17 +21,24 @@ FILENAME_VALID_PEERS = $GNUNET_DATA_HOME/rps/valid_peers.txt | |||
21 | # So, 50 is enough for a network of size 50^3 = 125000 | 21 | # So, 50 is enough for a network of size 50^3 = 125000 |
22 | MINSIZE = 4 | 22 | MINSIZE = 4 |
23 | 23 | ||
24 | |||
25 | |||
24 | [testbed] | 26 | [testbed] |
25 | HOSTNAME = localhost | 27 | HOSTNAME = localhost |
26 | 28 | ||
27 | # OPERATION_TIMEOUT = 60 s | ||
28 | |||
29 | # MAX_PARALLEL_TOPOLOGY_CONFIG_OPERATIONS = 100 | 29 | # MAX_PARALLEL_TOPOLOGY_CONFIG_OPERATIONS = 100 |
30 | OVERLAY_TOPOLOGY = CLIQUE | ||
31 | #OVERLAY_TOPOLOGY = SMALL_WORLD | ||
32 | #SCALE_FREE_TOPOLOGY_CAP = | ||
33 | 30 | ||
34 | # OVERLAY_RANDOM_LINKS = 25 | 31 | #OVERLAY_TOPOLOGY = CLIQUE |
32 | |||
33 | OVERLAY_TOPOLOGY = SCALE_FREE | ||
34 | SCALE_FREE_TOPOLOGY_CAP = 100 | ||
35 | SCALE_FREE_TOPOLOGY_M = 2 | ||
36 | |||
37 | #OVERLAY_TOPOLOGY = RANDOM | ||
38 | #OVERLAY_RANDOM_LINKS = 25 | ||
39 | |||
40 | #OVERLAY_TOPOLOGY = SMALL_WORLD | ||
41 | #OVERLAY_RANDOM_LINKS = 25 | ||
35 | 42 | ||
36 | SETUP_TIMEOUT = 2 m | 43 | SETUP_TIMEOUT = 2 m |
37 | 44 | ||
@@ -41,12 +48,13 @@ WORKBITS = 0 | |||
41 | [nat] | 48 | [nat] |
42 | # Use addresses from the local network interfaces (inluding loopback, but also others) | 49 | # Use addresses from the local network interfaces (inluding loopback, but also others) |
43 | USE_LOCALADDR = YES | 50 | USE_LOCALADDR = YES |
51 | ENABLE_UPNP = NO | ||
44 | 52 | ||
45 | # Do we use addresses from localhost address ranges? (::1, 127.0.0.0/8) | 53 | # Do we use addresses from localhost address ranges? (::1, 127.0.0.0/8) |
46 | RETURN_LOCAL_ADDRESSES = YES | 54 | RETURN_LOCAL_ADDRESSES = YES |
47 | 55 | ||
48 | [transport] | 56 | [transport] |
49 | PLUGINS = udp | 57 | PLUGINS = unix |
50 | 58 | ||
51 | [ats] | 59 | [ats] |
52 | # Network specific inbound/outbound quotas | 60 | # Network specific inbound/outbound quotas |
@@ -72,7 +80,6 @@ BLUETOOTH_QUOTA_OUT = unlimited | |||
72 | DISABLE_TRY_CONNECT = YES | 80 | DISABLE_TRY_CONNECT = YES |
73 | 81 | ||
74 | [cadet] | 82 | [cadet] |
75 | DISABLE_TRY_CONNECT = YES | ||
76 | #OPTIONS=-l /tmp/rps_profiler_logs/cadet-[]-%Y-%m-%d.log | 83 | #OPTIONS=-l /tmp/rps_profiler_logs/cadet-[]-%Y-%m-%d.log |
77 | #PREFIX = valgrind | 84 | #PREFIX = valgrind |
78 | 85 | ||
diff --git a/src/template/template.conf b/src/template/template.conf index e5f675a5d..24b123390 100644 --- a/src/template/template.conf +++ b/src/template/template.conf | |||
@@ -1,6 +1,10 @@ | |||
1 | [template] | 1 | [template] |
2 | START_ON_DEMAND = NO | 2 | START_ON_DEMAND = NO |
3 | PORT = 9999 | 3 | # for tests please come up with numbers that are |
4 | # unlikely to be in use by anyone. we typically | ||
5 | # use five digit numbers < 65536 with no "beauty" | ||
6 | # (no repetitions, no sequences, no popularity). | ||
7 | PORT = 99999 | ||
4 | HOSTNAME = localhost | 8 | HOSTNAME = localhost |
5 | BINARY = gnunet-service-template | 9 | BINARY = gnunet-service-template |
6 | ACCEPT_FROM = 127.0.0.1; | 10 | ACCEPT_FROM = 127.0.0.1; |
diff --git a/src/testbed/test_testbed_api_statistics.conf b/src/testbed/test_testbed_api_statistics.conf index 50d3f2c04..edb2e2057 100644 --- a/src/testbed/test_testbed_api_statistics.conf +++ b/src/testbed/test_testbed_api_statistics.conf | |||
@@ -6,4 +6,4 @@ MAX_PARALLEL_SERVICE_CONNECTIONS = 2 | |||
6 | 6 | ||
7 | [statistics] | 7 | [statistics] |
8 | START_ON_DEMAND = YES | 8 | START_ON_DEMAND = YES |
9 | PORT = 30 | 9 | PORT = 59530 |
diff --git a/src/testbed/testbed_api_topology.c b/src/testbed/testbed_api_topology.c index 51a8b979a..114055a07 100644 --- a/src/testbed/testbed_api_topology.c +++ b/src/testbed/testbed_api_topology.c | |||
@@ -1391,7 +1391,7 @@ GNUNET_TESTBED_overlay_configure_topology_va (void *op_cls, | |||
1391 | } | 1391 | } |
1392 | do | 1392 | do |
1393 | { | 1393 | { |
1394 | secondary_option = va_arg (va, enum GNUNET_TESTBED_TopologyOption); | 1394 | secondary_option = GNUNET_VA_ARG_ENUM (va, GNUNET_TESTBED_TopologyOption); |
1395 | 1395 | ||
1396 | switch (secondary_option) | 1396 | switch (secondary_option) |
1397 | { | 1397 | { |
@@ -1552,7 +1552,7 @@ GNUNET_TESTBED_underlay_construct_ (int num_peers, | |||
1552 | tc.type = TOPOLOGYCONTEXT_TYPE_UNDERLAY; | 1552 | tc.type = TOPOLOGYCONTEXT_TYPE_UNDERLAY; |
1553 | underlay = &tc.u.underlay; | 1553 | underlay = &tc.u.underlay; |
1554 | va_start (vargs, cls); | 1554 | va_start (vargs, cls); |
1555 | topology = va_arg (vargs, enum GNUNET_TESTBED_TopologyOption); | 1555 | topology = GNUNET_VA_ARG_ENUM (vargs, GNUNET_TESTBED_TopologyOption); |
1556 | switch (topology) | 1556 | switch (topology) |
1557 | { | 1557 | { |
1558 | case GNUNET_TESTBED_TOPOLOGY_LINE: | 1558 | case GNUNET_TESTBED_TOPOLOGY_LINE: |
diff --git a/src/testing/test_testing_sharedservices.conf b/src/testing/test_testing_sharedservices.conf index e41e2863c..24ce1b358 100644 --- a/src/testing/test_testing_sharedservices.conf +++ b/src/testing/test_testing_sharedservices.conf | |||
@@ -2,7 +2,7 @@ | |||
2 | GNUNET_TEST_HOME = $GNUNET_TMP/test-gnunet-testing/ | 2 | GNUNET_TEST_HOME = $GNUNET_TMP/test-gnunet-testing/ |
3 | 3 | ||
4 | [testbed-logger] | 4 | [testbed-logger] |
5 | PORT = 15000 | 5 | PORT = 59132 |
6 | UNIXPATH = $GNUNET_RUNTIME_DIR/testbed-logger.sock | 6 | UNIXPATH = $GNUNET_RUNTIME_DIR/testbed-logger.sock |
7 | DIR = $GNUNET_TMP/testbed-logger | 7 | DIR = $GNUNET_TMP/testbed-logger |
8 | 8 | ||
diff --git a/src/transport/test_plugin_transport_data.conf b/src/transport/test_plugin_transport_data.conf index cbecc56ed..b667a4854 100644 --- a/src/transport/test_plugin_transport_data.conf +++ b/src/transport/test_plugin_transport_data.conf | |||
@@ -3,10 +3,10 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test-gnunetd-plugin-transport/ | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test-gnunetd-plugin-transport/ |
4 | 4 | ||
5 | [transport-tcp] | 5 | [transport-tcp] |
6 | PORT = 2400 | 6 | PORT = 52400 |
7 | 7 | ||
8 | [transport-udp] | 8 | [transport-udp] |
9 | PORT = 2401 | 9 | PORT = 52401 |
10 | 10 | ||
11 | [transport-wlan] | 11 | [transport-wlan] |
12 | INTERFACE = mon0 | 12 | INTERFACE = mon0 |
@@ -17,29 +17,29 @@ INTERFACE = hci0 | |||
17 | TESTMODE = 1 | 17 | TESTMODE = 1 |
18 | 18 | ||
19 | [transport-http_server] | 19 | [transport-http_server] |
20 | PORT = 2402 | 20 | PORT = 52402 |
21 | 21 | ||
22 | [transport-https_server] | 22 | [transport-https_server] |
23 | PORT = 2403 | 23 | PORT = 52403 |
24 | 24 | ||
25 | [arm] | 25 | [arm] |
26 | PORT = 2360 | 26 | PORT = 52360 |
27 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-arm.sock | 27 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-arm.sock |
28 | 28 | ||
29 | [statistics] | 29 | [statistics] |
30 | PORT = 2361 | 30 | PORT = 52361 |
31 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-statistics.sock | 31 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-statistics.sock |
32 | 32 | ||
33 | [resolver] | 33 | [resolver] |
34 | PORT = 2362 | 34 | PORT = 52362 |
35 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-resolver.sock | 35 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-resolver.sock |
36 | 36 | ||
37 | [peerinfo] | 37 | [peerinfo] |
38 | PORT = 2363 | 38 | PORT = 52363 |
39 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-peerinfo.sock | 39 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-peerinfo.sock |
40 | 40 | ||
41 | [transport] | 41 | [transport] |
42 | PORT = 2364 | 42 | PORT = 52364 |
43 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-transport.sock | 43 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-service-transport.sock |
44 | 44 | ||
45 | [nat] | 45 | [nat] |
diff --git a/src/transport/test_quota_compliance_data.conf b/src/transport/test_quota_compliance_data.conf index 47c523bcf..1bc607770 100644 --- a/src/transport/test_quota_compliance_data.conf +++ b/src/transport/test_quota_compliance_data.conf | |||
@@ -3,22 +3,22 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test-gnunetd-plugin-transport/ | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test-gnunetd-plugin-transport/ |
4 | 4 | ||
5 | [transport-tcp] | 5 | [transport-tcp] |
6 | PORT = 2368 | 6 | PORT = 52368 |
7 | TIMEOUT = 5 s | 7 | TIMEOUT = 5 s |
8 | 8 | ||
9 | [arm] | 9 | [arm] |
10 | PORT = 2366 | 10 | PORT = 52366 |
11 | 11 | ||
12 | [statistics] | 12 | [statistics] |
13 | PORT = 2367 | 13 | PORT = 52367 |
14 | 14 | ||
15 | [resolver] | 15 | [resolver] |
16 | PORT = 2364 | 16 | PORT = 52364 |
17 | 17 | ||
18 | [peerinfo] | 18 | [peerinfo] |
19 | PORT = 2369 | 19 | PORT = 52369 |
20 | 20 | ||
21 | [transport] | 21 | [transport] |
22 | PORT = 2365 | 22 | PORT = 52365 |
23 | 23 | ||
24 | 24 | ||
diff --git a/src/transport/test_quota_compliance_http_asymmetric_peer1.conf b/src/transport/test_quota_compliance_http_asymmetric_peer1.conf index 201bafd01..b2ff1913f 100644 --- a/src/transport/test_quota_compliance_http_asymmetric_peer1.conf +++ b/src/transport/test_quota_compliance_http_asymmetric_peer1.conf | |||
@@ -5,23 +5,23 @@ GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer1 | |||
5 | [transport-http_client] | 5 | [transport-http_client] |
6 | 6 | ||
7 | [arm] | 7 | [arm] |
8 | PORT = 4015 | 8 | PORT = 54015 |
9 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_arm_peer1.sock | 9 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_arm_peer1.sock |
10 | 10 | ||
11 | [statistics] | 11 | [statistics] |
12 | PORT = 4014 | 12 | PORT = 54014 |
13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_statistics_peer1.sock | 13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_statistics_peer1.sock |
14 | 14 | ||
15 | [resolver] | 15 | [resolver] |
16 | PORT = 4013 | 16 | PORT = 54013 |
17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_resolver_peer1.sock | 17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_resolver_peer1.sock |
18 | 18 | ||
19 | [peerinfo] | 19 | [peerinfo] |
20 | PORT = 4012 | 20 | PORT = 54012 |
21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_peerinfo_peer1.sock | 21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_peerinfo_peer1.sock |
22 | 22 | ||
23 | [transport] | 23 | [transport] |
24 | PORT = 4011 | 24 | PORT = 54011 |
25 | PLUGINS = http_client | 25 | PLUGINS = http_client |
26 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_transport_peer1.sock | 26 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_transport_peer1.sock |
27 | 27 | ||
diff --git a/src/transport/test_quota_compliance_http_asymmetric_peer2.conf b/src/transport/test_quota_compliance_http_asymmetric_peer2.conf index cdc10516b..3408d9f2e 100644 --- a/src/transport/test_quota_compliance_http_asymmetric_peer2.conf +++ b/src/transport/test_quota_compliance_http_asymmetric_peer2.conf | |||
@@ -3,29 +3,29 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 |
4 | 4 | ||
5 | [transport-http_server] | 5 | [transport-http_server] |
6 | PORT = 3010 | 6 | PORT = 53010 |
7 | USE_IPv6 = NO | 7 | USE_IPv6 = NO |
8 | BINDTO = 127.0.0.1 | 8 | BINDTO = 127.0.0.1 |
9 | 9 | ||
10 | 10 | ||
11 | [arm] | 11 | [arm] |
12 | PORT = 3015 | 12 | PORT = 53015 |
13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_arm_peer2.sock | 13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_arm_peer2.sock |
14 | 14 | ||
15 | [statistics] | 15 | [statistics] |
16 | PORT = 3014 | 16 | PORT = 53014 |
17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_statistics_peer2.sock | 17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_statistics_peer2.sock |
18 | 18 | ||
19 | [resolver] | 19 | [resolver] |
20 | PORT = 3013 | 20 | PORT = 53013 |
21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_resolver_peer2.sock | 21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_resolver_peer2.sock |
22 | 22 | ||
23 | [peerinfo] | 23 | [peerinfo] |
24 | PORT = 3012 | 24 | PORT = 53012 |
25 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_peerinfo_peer2.sock | 25 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_peerinfo_peer2.sock |
26 | 26 | ||
27 | [transport] | 27 | [transport] |
28 | PORT = 3011 | 28 | PORT = 53011 |
29 | PLUGINS = http_server | 29 | PLUGINS = http_server |
30 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_transport_peer2.sock | 30 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_transport_peer2.sock |
31 | 31 | ||
diff --git a/src/transport/test_quota_compliance_http_peer1.conf b/src/transport/test_quota_compliance_http_peer1.conf index 201bafd01..b2ff1913f 100644 --- a/src/transport/test_quota_compliance_http_peer1.conf +++ b/src/transport/test_quota_compliance_http_peer1.conf | |||
@@ -5,23 +5,23 @@ GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer1 | |||
5 | [transport-http_client] | 5 | [transport-http_client] |
6 | 6 | ||
7 | [arm] | 7 | [arm] |
8 | PORT = 4015 | 8 | PORT = 54015 |
9 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_arm_peer1.sock | 9 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_arm_peer1.sock |
10 | 10 | ||
11 | [statistics] | 11 | [statistics] |
12 | PORT = 4014 | 12 | PORT = 54014 |
13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_statistics_peer1.sock | 13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_statistics_peer1.sock |
14 | 14 | ||
15 | [resolver] | 15 | [resolver] |
16 | PORT = 4013 | 16 | PORT = 54013 |
17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_resolver_peer1.sock | 17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_resolver_peer1.sock |
18 | 18 | ||
19 | [peerinfo] | 19 | [peerinfo] |
20 | PORT = 4012 | 20 | PORT = 54012 |
21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_peerinfo_peer1.sock | 21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_peerinfo_peer1.sock |
22 | 22 | ||
23 | [transport] | 23 | [transport] |
24 | PORT = 4011 | 24 | PORT = 54011 |
25 | PLUGINS = http_client | 25 | PLUGINS = http_client |
26 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_transport_peer1.sock | 26 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_transport_peer1.sock |
27 | 27 | ||
diff --git a/src/transport/test_quota_compliance_http_peer2.conf b/src/transport/test_quota_compliance_http_peer2.conf index cdc10516b..3408d9f2e 100644 --- a/src/transport/test_quota_compliance_http_peer2.conf +++ b/src/transport/test_quota_compliance_http_peer2.conf | |||
@@ -3,29 +3,29 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 |
4 | 4 | ||
5 | [transport-http_server] | 5 | [transport-http_server] |
6 | PORT = 3010 | 6 | PORT = 53010 |
7 | USE_IPv6 = NO | 7 | USE_IPv6 = NO |
8 | BINDTO = 127.0.0.1 | 8 | BINDTO = 127.0.0.1 |
9 | 9 | ||
10 | 10 | ||
11 | [arm] | 11 | [arm] |
12 | PORT = 3015 | 12 | PORT = 53015 |
13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_arm_peer2.sock | 13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_arm_peer2.sock |
14 | 14 | ||
15 | [statistics] | 15 | [statistics] |
16 | PORT = 3014 | 16 | PORT = 53014 |
17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_statistics_peer2.sock | 17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_statistics_peer2.sock |
18 | 18 | ||
19 | [resolver] | 19 | [resolver] |
20 | PORT = 3013 | 20 | PORT = 53013 |
21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_resolver_peer2.sock | 21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_resolver_peer2.sock |
22 | 22 | ||
23 | [peerinfo] | 23 | [peerinfo] |
24 | PORT = 3012 | 24 | PORT = 53012 |
25 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_peerinfo_peer2.sock | 25 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_peerinfo_peer2.sock |
26 | 26 | ||
27 | [transport] | 27 | [transport] |
28 | PORT = 3011 | 28 | PORT = 53011 |
29 | PLUGINS = http_server | 29 | PLUGINS = http_server |
30 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_transport_peer2.sock | 30 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_http_transport_peer2.sock |
31 | 31 | ||
diff --git a/src/transport/test_quota_compliance_https_asymmetric_peer1.conf b/src/transport/test_quota_compliance_https_asymmetric_peer1.conf index 3e8895665..94aa534ef 100644 --- a/src/transport/test_quota_compliance_https_asymmetric_peer1.conf +++ b/src/transport/test_quota_compliance_https_asymmetric_peer1.conf | |||
@@ -5,23 +5,23 @@ GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer1/ | |||
5 | [transport-https_client] | 5 | [transport-https_client] |
6 | 6 | ||
7 | [arm] | 7 | [arm] |
8 | PORT = 4006 | 8 | PORT = 54006 |
9 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_arm_peer1.sock | 9 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_arm_peer1.sock |
10 | 10 | ||
11 | [statistics] | 11 | [statistics] |
12 | PORT = 4005 | 12 | PORT = 54005 |
13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_statistics_peer1.sock | 13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_statistics_peer1.sock |
14 | 14 | ||
15 | [resolver] | 15 | [resolver] |
16 | PORT = 4004 | 16 | PORT = 54004 |
17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_resolver_peer1.sock | 17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_resolver_peer1.sock |
18 | 18 | ||
19 | [peerinfo] | 19 | [peerinfo] |
20 | PORT = 4003 | 20 | PORT = 54003 |
21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_peerinfo_peer1.sock | 21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_peerinfo_peer1.sock |
22 | 22 | ||
23 | [transport] | 23 | [transport] |
24 | PORT = 4002 | 24 | PORT = 54002 |
25 | PLUGINS = https_client | 25 | PLUGINS = https_client |
26 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_transport_peer1.sock | 26 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_transport_peer1.sock |
27 | 27 | ||
diff --git a/src/transport/test_quota_compliance_https_asymmetric_peer2.conf b/src/transport/test_quota_compliance_https_asymmetric_peer2.conf index e0ff8da9f..8fb8861cd 100644 --- a/src/transport/test_quota_compliance_https_asymmetric_peer2.conf +++ b/src/transport/test_quota_compliance_https_asymmetric_peer2.conf | |||
@@ -3,28 +3,28 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 |
4 | 4 | ||
5 | [transport-https_server] | 5 | [transport-https_server] |
6 | PORT = 3001 | 6 | PORT = 53001 |
7 | KEY_FILE = https_key_quota_p2.key | 7 | KEY_FILE = https_key_quota_p2.key |
8 | CERT_FILE = https_cert_qutoa_p2.crt | 8 | CERT_FILE = https_cert_qutoa_p2.crt |
9 | 9 | ||
10 | [arm] | 10 | [arm] |
11 | PORT = 3006 | 11 | PORT = 53006 |
12 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_arm_peer2.sock | 12 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_arm_peer2.sock |
13 | 13 | ||
14 | [statistics] | 14 | [statistics] |
15 | PORT = 3005 | 15 | PORT = 53005 |
16 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_statistics_peer2.sock | 16 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_statistics_peer2.sock |
17 | 17 | ||
18 | [resolver] | 18 | [resolver] |
19 | PORT = 3004 | 19 | PORT = 53004 |
20 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_resolver_peer2.sock | 20 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_resolver_peer2.sock |
21 | 21 | ||
22 | [peerinfo] | 22 | [peerinfo] |
23 | PORT = 3003 | 23 | PORT = 53003 |
24 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_peerinfo_peer2.sock | 24 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_peerinfo_peer2.sock |
25 | 25 | ||
26 | [transport] | 26 | [transport] |
27 | PORT = 3002 | 27 | PORT = 53002 |
28 | PLUGINS = https_server | 28 | PLUGINS = https_server |
29 | UNIXPATH = $GNUNET_RUNTIME_DIR/https_transport_peer2.sock | 29 | UNIXPATH = $GNUNET_RUNTIME_DIR/https_transport_peer2.sock |
30 | 30 | ||
diff --git a/src/transport/test_quota_compliance_https_peer1.conf b/src/transport/test_quota_compliance_https_peer1.conf index 3e8895665..94aa534ef 100644 --- a/src/transport/test_quota_compliance_https_peer1.conf +++ b/src/transport/test_quota_compliance_https_peer1.conf | |||
@@ -5,23 +5,23 @@ GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer1/ | |||
5 | [transport-https_client] | 5 | [transport-https_client] |
6 | 6 | ||
7 | [arm] | 7 | [arm] |
8 | PORT = 4006 | 8 | PORT = 54006 |
9 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_arm_peer1.sock | 9 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_arm_peer1.sock |
10 | 10 | ||
11 | [statistics] | 11 | [statistics] |
12 | PORT = 4005 | 12 | PORT = 54005 |
13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_statistics_peer1.sock | 13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_statistics_peer1.sock |
14 | 14 | ||
15 | [resolver] | 15 | [resolver] |
16 | PORT = 4004 | 16 | PORT = 54004 |
17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_resolver_peer1.sock | 17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_resolver_peer1.sock |
18 | 18 | ||
19 | [peerinfo] | 19 | [peerinfo] |
20 | PORT = 4003 | 20 | PORT = 54003 |
21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_peerinfo_peer1.sock | 21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_peerinfo_peer1.sock |
22 | 22 | ||
23 | [transport] | 23 | [transport] |
24 | PORT = 4002 | 24 | PORT = 54002 |
25 | PLUGINS = https_client | 25 | PLUGINS = https_client |
26 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_transport_peer1.sock | 26 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_transport_peer1.sock |
27 | 27 | ||
diff --git a/src/transport/test_quota_compliance_https_peer2.conf b/src/transport/test_quota_compliance_https_peer2.conf index e0ff8da9f..8fb8861cd 100644 --- a/src/transport/test_quota_compliance_https_peer2.conf +++ b/src/transport/test_quota_compliance_https_peer2.conf | |||
@@ -3,28 +3,28 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 |
4 | 4 | ||
5 | [transport-https_server] | 5 | [transport-https_server] |
6 | PORT = 3001 | 6 | PORT = 53001 |
7 | KEY_FILE = https_key_quota_p2.key | 7 | KEY_FILE = https_key_quota_p2.key |
8 | CERT_FILE = https_cert_qutoa_p2.crt | 8 | CERT_FILE = https_cert_qutoa_p2.crt |
9 | 9 | ||
10 | [arm] | 10 | [arm] |
11 | PORT = 3006 | 11 | PORT = 53006 |
12 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_arm_peer2.sock | 12 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_arm_peer2.sock |
13 | 13 | ||
14 | [statistics] | 14 | [statistics] |
15 | PORT = 3005 | 15 | PORT = 53005 |
16 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_statistics_peer2.sock | 16 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_statistics_peer2.sock |
17 | 17 | ||
18 | [resolver] | 18 | [resolver] |
19 | PORT = 3004 | 19 | PORT = 53004 |
20 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_resolver_peer2.sock | 20 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_resolver_peer2.sock |
21 | 21 | ||
22 | [peerinfo] | 22 | [peerinfo] |
23 | PORT = 3003 | 23 | PORT = 53003 |
24 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_peerinfo_peer2.sock | 24 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_https_peerinfo_peer2.sock |
25 | 25 | ||
26 | [transport] | 26 | [transport] |
27 | PORT = 3002 | 27 | PORT = 53002 |
28 | PLUGINS = https_server | 28 | PLUGINS = https_server |
29 | UNIXPATH = $GNUNET_RUNTIME_DIR/https_transport_peer2.sock | 29 | UNIXPATH = $GNUNET_RUNTIME_DIR/https_transport_peer2.sock |
30 | 30 | ||
diff --git a/src/transport/test_quota_compliance_tcp_asymmetric_peer1.conf b/src/transport/test_quota_compliance_tcp_asymmetric_peer1.conf index 59fbbff5b..0e0cbff24 100644 --- a/src/transport/test_quota_compliance_tcp_asymmetric_peer1.conf +++ b/src/transport/test_quota_compliance_tcp_asymmetric_peer1.conf | |||
@@ -3,29 +3,29 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test-transport/quota-tcp-p1/ | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test-transport/quota-tcp-p1/ |
4 | 4 | ||
5 | [transport-tcp] | 5 | [transport-tcp] |
6 | PORT = 4094 | 6 | PORT = 54094 |
7 | 7 | ||
8 | [transport-udp] | 8 | [transport-udp] |
9 | PORT = 4094 | 9 | PORT = 54094 |
10 | 10 | ||
11 | [arm] | 11 | [arm] |
12 | PORT = 4087 | 12 | PORT = 54087 |
13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_arm_peer1.sock | 13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_arm_peer1.sock |
14 | 14 | ||
15 | [statistics] | 15 | [statistics] |
16 | PORT = 4088 | 16 | PORT = 54088 |
17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_statistics_peer1.sock | 17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_statistics_peer1.sock |
18 | 18 | ||
19 | [resolver] | 19 | [resolver] |
20 | PORT = 4089 | 20 | PORT = 54089 |
21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_resolver_peer1.sock | 21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_resolver_peer1.sock |
22 | 22 | ||
23 | [peerinfo] | 23 | [peerinfo] |
24 | PORT = 4090 | 24 | PORT = 54090 |
25 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_peerinfo_peer1.sock | 25 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_peerinfo_peer1.sock |
26 | 26 | ||
27 | [transport] | 27 | [transport] |
28 | PORT = 4091 | 28 | PORT = 54091 |
29 | PLUGINS = tcp | 29 | PLUGINS = tcp |
30 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_transport_peer1.sock | 30 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_transport_peer1.sock |
31 | 31 | ||
diff --git a/src/transport/test_quota_compliance_tcp_peer1.conf b/src/transport/test_quota_compliance_tcp_peer1.conf index 59fbbff5b..0e0cbff24 100644 --- a/src/transport/test_quota_compliance_tcp_peer1.conf +++ b/src/transport/test_quota_compliance_tcp_peer1.conf | |||
@@ -3,29 +3,29 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test-transport/quota-tcp-p1/ | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test-transport/quota-tcp-p1/ |
4 | 4 | ||
5 | [transport-tcp] | 5 | [transport-tcp] |
6 | PORT = 4094 | 6 | PORT = 54094 |
7 | 7 | ||
8 | [transport-udp] | 8 | [transport-udp] |
9 | PORT = 4094 | 9 | PORT = 54094 |
10 | 10 | ||
11 | [arm] | 11 | [arm] |
12 | PORT = 4087 | 12 | PORT = 54087 |
13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_arm_peer1.sock | 13 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_arm_peer1.sock |
14 | 14 | ||
15 | [statistics] | 15 | [statistics] |
16 | PORT = 4088 | 16 | PORT = 54088 |
17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_statistics_peer1.sock | 17 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_statistics_peer1.sock |
18 | 18 | ||
19 | [resolver] | 19 | [resolver] |
20 | PORT = 4089 | 20 | PORT = 54089 |
21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_resolver_peer1.sock | 21 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_resolver_peer1.sock |
22 | 22 | ||
23 | [peerinfo] | 23 | [peerinfo] |
24 | PORT = 4090 | 24 | PORT = 54090 |
25 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_peerinfo_peer1.sock | 25 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_peerinfo_peer1.sock |
26 | 26 | ||
27 | [transport] | 27 | [transport] |
28 | PORT = 4091 | 28 | PORT = 54091 |
29 | PLUGINS = tcp | 29 | PLUGINS = tcp |
30 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_transport_peer1.sock | 30 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_tcp_transport_peer1.sock |
31 | 31 | ||
diff --git a/src/transport/test_quota_compliance_udp_peer1.conf b/src/transport/test_quota_compliance_udp_peer1.conf index b7c3159b8..bba75c168 100644 --- a/src/transport/test_quota_compliance_udp_peer1.conf +++ b/src/transport/test_quota_compliance_udp_peer1.conf | |||
@@ -3,27 +3,27 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer1/ | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer1/ |
4 | 4 | ||
5 | [transport-udp] | 5 | [transport-udp] |
6 | PORT = 4368 | 6 | PORT = 54368 |
7 | MAX_BPS = 50000000 | 7 | MAX_BPS = 50000000 |
8 | 8 | ||
9 | [arm] | 9 | [arm] |
10 | PORT = 4087 | 10 | PORT = 54087 |
11 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_arm_peer1.sock | 11 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_arm_peer1.sock |
12 | 12 | ||
13 | [statistics] | 13 | [statistics] |
14 | PORT = 4088 | 14 | PORT = 54088 |
15 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_statistics_peer1.sock | 15 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_statistics_peer1.sock |
16 | 16 | ||
17 | [resolver] | 17 | [resolver] |
18 | PORT = 4089 | 18 | PORT = 54089 |
19 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_resolver_peer1.sock | 19 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_resolver_peer1.sock |
20 | 20 | ||
21 | [peerinfo] | 21 | [peerinfo] |
22 | PORT = 4090 | 22 | PORT = 54090 |
23 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_peerinfo_peer1.sock | 23 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_peerinfo_peer1.sock |
24 | 24 | ||
25 | [transport] | 25 | [transport] |
26 | PORT = 4091 | 26 | PORT = 54091 |
27 | PLUGINS = udp | 27 | PLUGINS = udp |
28 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_transport_peer1.sock | 28 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_transport_peer1.sock |
29 | 29 | ||
diff --git a/src/transport/test_quota_compliance_udp_peer2.conf b/src/transport/test_quota_compliance_udp_peer2.conf index 70e61db05..1cb04038c 100644 --- a/src/transport/test_quota_compliance_udp_peer2.conf +++ b/src/transport/test_quota_compliance_udp_peer2.conf | |||
@@ -3,27 +3,27 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 |
4 | 4 | ||
5 | [transport-udp] | 5 | [transport-udp] |
6 | PORT = 3368 | 6 | PORT = 53368 |
7 | MAX_BPS = 50000000 | 7 | MAX_BPS = 50000000 |
8 | 8 | ||
9 | [arm] | 9 | [arm] |
10 | PORT = 3087 | 10 | PORT = 53087 |
11 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_arm_peer2.sock | 11 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_arm_peer2.sock |
12 | 12 | ||
13 | [statistics] | 13 | [statistics] |
14 | PORT = 3088 | 14 | PORT = 53088 |
15 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_statistics_peer2.sock | 15 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_statistics_peer2.sock |
16 | 16 | ||
17 | [resolver] | 17 | [resolver] |
18 | PORT = 3089 | 18 | PORT = 53089 |
19 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_resolver_peer2.sock | 19 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_resolver_peer2.sock |
20 | 20 | ||
21 | [peerinfo] | 21 | [peerinfo] |
22 | PORT = 3090 | 22 | PORT = 53090 |
23 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_peerinfo_peer2.sock | 23 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_peerinfo_peer2.sock |
24 | 24 | ||
25 | [transport] | 25 | [transport] |
26 | PORT = 3091 | 26 | PORT = 53091 |
27 | PLUGINS = udp | 27 | PLUGINS = udp |
28 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_transport_peer2.sock | 28 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_udp_transport_peer2.sock |
29 | 29 | ||
diff --git a/src/transport/test_quota_compliance_unix_asymmetric_peer1.conf b/src/transport/test_quota_compliance_unix_asymmetric_peer1.conf index 8d6073b67..a8ee6d77a 100644 --- a/src/transport/test_quota_compliance_unix_asymmetric_peer1.conf +++ b/src/transport/test_quota_compliance_unix_asymmetric_peer1.conf | |||
@@ -3,26 +3,26 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer1/ | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer1/ |
4 | 4 | ||
5 | [arm] | 5 | [arm] |
6 | PORT = 4087 | 6 | PORT = 54087 |
7 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_arm_peer1.sock | 7 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_arm_peer1.sock |
8 | 8 | ||
9 | [statistics] | 9 | [statistics] |
10 | PORT = 4088 | 10 | PORT = 54088 |
11 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_statistics_peer1.sock | 11 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_statistics_peer1.sock |
12 | 12 | ||
13 | [resolver] | 13 | [resolver] |
14 | PORT = 4089 | 14 | PORT = 54089 |
15 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_resolver_peer1.sock | 15 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_resolver_peer1.sock |
16 | 16 | ||
17 | [peerinfo] | 17 | [peerinfo] |
18 | PORT = 4090 | 18 | PORT = 54090 |
19 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_peerinfo_peer1.sock | 19 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_peerinfo_peer1.sock |
20 | 20 | ||
21 | [transport] | 21 | [transport] |
22 | PORT = 4091 | 22 | PORT = 54091 |
23 | PLUGINS = unix | 23 | PLUGINS = unix |
24 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_transport_peer1.sock | 24 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_transport_peer1.sock |
25 | 25 | ||
26 | [transport-unix] | 26 | [transport-unix] |
27 | PORT = 4092 | 27 | PORT = 54092 |
28 | 28 | ||
diff --git a/src/transport/test_quota_compliance_unix_asymmetric_peer2.conf b/src/transport/test_quota_compliance_unix_asymmetric_peer2.conf index a3a42f739..6edbcac9f 100644 --- a/src/transport/test_quota_compliance_unix_asymmetric_peer2.conf +++ b/src/transport/test_quota_compliance_unix_asymmetric_peer2.conf | |||
@@ -3,26 +3,26 @@ | |||
3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 | 3 | GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 |
4 | 4 | ||
5 | [arm] | 5 | [arm] |
6 | PORT = 3087 | 6 | PORT = 53087 |
7 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_arm_peer2.sock | 7 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_arm_peer2.sock |
8 | 8 | ||
9 | [statistics] | 9 | [statistics] |
10 | PORT = 3088 | 10 | PORT = 53088 |
11 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_statistics_peer2.sock | 11 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_statistics_peer2.sock |
12 | 12 | ||
13 | [resolver] | 13 | [resolver] |
14 | PORT = 3089 | 14 | PORT = 53089 |
15 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_resolver_peer2.sock | 15 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_resolver_peer2.sock |
16 | 16 | ||
17 | [peerinfo] | 17 | [peerinfo] |
18 | PORT = 3090 | 18 | PORT = 53090 |
19 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_peerinfo_peer2.sock | 19 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_peerinfo_peer2.sock |
20 | 20 | ||
21 | [transport] | 21 | [transport] |
22 | PORT = 3091 | 22 | PORT = 53091 |
23 | PLUGINS = unix | 23 | PLUGINS = unix |
24 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_transport_peer2.sock | 24 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_transport_peer2.sock |
25 | 25 | ||
26 | [transport-unix] | 26 | [transport-unix] |
27 | PORT = 3368 | 27 | PORT = 53368 |
28 | 28 | ||
diff --git a/src/transport/test_quota_compliance_unix_peer1.conf b/src/transport/test_quota_compliance_unix_peer1.conf index d9255705c..59c8d6d9e 100644 --- a/src/transport/test_quota_compliance_unix_peer1.conf +++ b/src/transport/test_quota_compliance_unix_peer1.conf | |||
@@ -6,22 +6,22 @@ GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer1/ | |||
6 | PORT = 12120 | 6 | PORT = 12120 |
7 | 7 | ||
8 | [arm] | 8 | [arm] |
9 | PORT = 4087 | 9 | PORT = 54087 |
10 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_arm_peer1.sock | 10 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_arm_peer1.sock |
11 | 11 | ||
12 | [statistics] | 12 | [statistics] |
13 | PORT = 4088 | 13 | PORT = 54088 |
14 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_statistics_peer1.sock | 14 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_statistics_peer1.sock |
15 | 15 | ||
16 | [resolver] | 16 | [resolver] |
17 | PORT = 4089 | 17 | PORT = 54089 |
18 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_resolver_peer1.sock | 18 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_resolver_peer1.sock |
19 | 19 | ||
20 | [peerinfo] | 20 | [peerinfo] |
21 | PORT = 4090 | 21 | PORT = 54090 |
22 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_peerinfo_peer1.sock | 22 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_peerinfo_peer1.sock |
23 | 23 | ||
24 | [transport] | 24 | [transport] |
25 | PORT = 4091 | 25 | PORT = 54091 |
26 | PLUGINS = unix | 26 | PLUGINS = unix |
27 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_transport_peer1.sock | 27 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_transport_peer1.sock |
diff --git a/src/transport/test_quota_compliance_unix_peer2.conf b/src/transport/test_quota_compliance_unix_peer2.conf index b7ba15d86..8c2f9989e 100644 --- a/src/transport/test_quota_compliance_unix_peer2.conf +++ b/src/transport/test_quota_compliance_unix_peer2.conf | |||
@@ -6,26 +6,26 @@ GNUNET_TEST_HOME = $GNUNET_TMP/test_quota_compliance_peer2 | |||
6 | PORT = 12136 | 6 | PORT = 12136 |
7 | 7 | ||
8 | [arm] | 8 | [arm] |
9 | PORT = 3087 | 9 | PORT = 53087 |
10 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_arm_peer2.sock | 10 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_arm_peer2.sock |
11 | 11 | ||
12 | [statistics] | 12 | [statistics] |
13 | PORT = 3088 | 13 | PORT = 53088 |
14 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_statistics_peer2.sock | 14 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_statistics_peer2.sock |
15 | 15 | ||
16 | [resolver] | 16 | [resolver] |
17 | PORT = 3089 | 17 | PORT = 53089 |
18 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_resolver_peer2.sock | 18 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_resolver_peer2.sock |
19 | 19 | ||
20 | [peerinfo] | 20 | [peerinfo] |
21 | PORT = 3090 | 21 | PORT = 53090 |
22 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_peerinfo_peer2.sock | 22 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_peerinfo_peer2.sock |
23 | 23 | ||
24 | [transport] | 24 | [transport] |
25 | PORT = 3091 | 25 | PORT = 53091 |
26 | PLUGINS = unix | 26 | PLUGINS = unix |
27 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_transport_peer2.sock | 27 | UNIXPATH = $GNUNET_RUNTIME_DIR/test_quota_compliance_unix_transport_peer2.sock |
28 | 28 | ||
29 | [transport-unix] | 29 | [transport-unix] |
30 | PORT = 3368 | 30 | PORT = 53368 |
31 | 31 | ||
diff --git a/src/transport/test_transport_api_data.conf b/src/transport/test_transport_api_data.conf index 58b8e17b0..c06235a0a 100644 --- a/src/transport/test_transport_api_data.conf +++ b/src/transport/test_transport_api_data.conf | |||
@@ -2,8 +2,8 @@ | |||
2 | [PATHS] | 2 | [PATHS] |
3 | 3 | ||
4 | [transport-tcp] | 4 | [transport-tcp] |
5 | PORT = 2094 | 5 | PORT = 52094 |
6 | 6 | ||
7 | [transport-udp] | 7 | [transport-udp] |
8 | PORT = 2094 | 8 | PORT = 52094 |
9 | 9 | ||
diff --git a/src/transport/test_transport_api_reliability_tcp_nat_peer1.conf b/src/transport/test_transport_api_reliability_tcp_nat_peer1.conf index 6aa9dbf22..6a2029b09 100644 --- a/src/transport/test_transport_api_reliability_tcp_nat_peer1.conf +++ b/src/transport/test_transport_api_reliability_tcp_nat_peer1.conf | |||
@@ -12,7 +12,7 @@ PORT = 0 | |||
12 | TIMEOUT = 5 s | 12 | TIMEOUT = 5 s |
13 | 13 | ||
14 | [arm] | 14 | [arm] |
15 | PORT = 1204 | 15 | PORT = 51204 |
16 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-p1-service-arm.sock | 16 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-p1-service-arm.sock |
17 | 17 | ||
18 | [statistics] | 18 | [statistics] |
diff --git a/src/transport/test_transport_api_tcp_nat_peer1.conf b/src/transport/test_transport_api_tcp_nat_peer1.conf index b8d83ce29..fb2fcecc6 100644 --- a/src/transport/test_transport_api_tcp_nat_peer1.conf +++ b/src/transport/test_transport_api_tcp_nat_peer1.conf | |||
@@ -12,7 +12,7 @@ PORT = 0 | |||
12 | TIMEOUT = 5 s | 12 | TIMEOUT = 5 s |
13 | 13 | ||
14 | [arm] | 14 | [arm] |
15 | PORT = 1204 | 15 | PORT = 51204 |
16 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-p1-service-arm.sock | 16 | UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-p1-service-arm.sock |
17 | 17 | ||
18 | [statistics] | 18 | [statistics] |
diff --git a/src/util/Makefile.am b/src/util/Makefile.am index 208cab07b..4296199db 100644 --- a/src/util/Makefile.am +++ b/src/util/Makefile.am | |||
@@ -199,6 +199,9 @@ gnunet_service_resolver_SOURCES = \ | |||
199 | gnunet_service_resolver_LDADD = \ | 199 | gnunet_service_resolver_LDADD = \ |
200 | libgnunetutil.la \ | 200 | libgnunetutil.la \ |
201 | $(GN_LIBINTL) | 201 | $(GN_LIBINTL) |
202 | if HAVE_GETADDRINFO_A | ||
203 | gnunet_service_resolver_LDADD += -lanl | ||
204 | endif | ||
202 | 205 | ||
203 | 206 | ||
204 | gnunet_resolver_SOURCES = \ | 207 | gnunet_resolver_SOURCES = \ |
diff --git a/src/util/common_logging.c b/src/util/common_logging.c index 85e17248b..f875d165d 100644 --- a/src/util/common_logging.c +++ b/src/util/common_logging.c | |||
@@ -626,6 +626,9 @@ parse_definitions (const char *constname, int force) | |||
626 | to_line = INT_MAX; | 626 | to_line = INT_MAX; |
627 | } | 627 | } |
628 | break; | 628 | break; |
629 | default: | ||
630 | fprintf(stderr, "ERROR: Unable to parse log defintion: Syntax error.\n"); | ||
631 | break; | ||
629 | } | 632 | } |
630 | start = p + 1; | 633 | start = p + 1; |
631 | state++; | 634 | state++; |
@@ -652,6 +655,7 @@ parse_definitions (const char *constname, int force) | |||
652 | start = p + 1; | 655 | start = p + 1; |
653 | break; | 656 | break; |
654 | default: | 657 | default: |
658 | fprintf(stderr, "ERROR: Unable to parse log defintion: Syntax error.\n"); | ||
655 | break; | 659 | break; |
656 | } | 660 | } |
657 | default: | 661 | default: |
diff --git a/src/util/disk.c b/src/util/disk.c index 31e8f12c6..e0227be70 100644 --- a/src/util/disk.c +++ b/src/util/disk.c | |||
@@ -830,6 +830,12 @@ GNUNET_DISK_directory_create_for_file (const char *filename) | |||
830 | errno = EINVAL; | 830 | errno = EINVAL; |
831 | return GNUNET_SYSERR; | 831 | return GNUNET_SYSERR; |
832 | } | 832 | } |
833 | if (0 == ACCESS (rdir, W_OK)) | ||
834 | { | ||
835 | GNUNET_free (rdir); | ||
836 | return GNUNET_OK; | ||
837 | } | ||
838 | |||
833 | len = strlen (rdir); | 839 | len = strlen (rdir); |
834 | while ((len > 0) && (rdir[len] != DIR_SEPARATOR)) | 840 | while ((len > 0) && (rdir[len] != DIR_SEPARATOR)) |
835 | len--; | 841 | len--; |
@@ -1686,16 +1692,19 @@ GNUNET_DISK_file_open (const char *fn, | |||
1686 | return NULL; | 1692 | return NULL; |
1687 | } | 1693 | } |
1688 | if (flags & GNUNET_DISK_OPEN_FAILIFEXISTS) | 1694 | if (flags & GNUNET_DISK_OPEN_FAILIFEXISTS) |
1689 | oflags |= (O_CREAT | O_EXCL); | 1695 | oflags |= (O_CREAT | O_EXCL); |
1690 | if (flags & GNUNET_DISK_OPEN_TRUNCATE) | 1696 | if (flags & GNUNET_DISK_OPEN_TRUNCATE) |
1691 | oflags |= O_TRUNC; | 1697 | oflags |= O_TRUNC; |
1692 | if (flags & GNUNET_DISK_OPEN_APPEND) | 1698 | if (flags & GNUNET_DISK_OPEN_APPEND) |
1693 | oflags |= O_APPEND; | 1699 | oflags |= O_APPEND; |
1694 | if (flags & GNUNET_DISK_OPEN_CREATE) | 1700 | if(GNUNET_NO == GNUNET_DISK_file_test(fn)) |
1695 | { | 1701 | { |
1696 | (void) GNUNET_DISK_directory_create_for_file (expfn); | 1702 | if (flags & GNUNET_DISK_OPEN_CREATE ) |
1697 | oflags |= O_CREAT; | 1703 | { |
1698 | mode = translate_unix_perms (perm); | 1704 | (void) GNUNET_DISK_directory_create_for_file (expfn); |
1705 | oflags |= O_CREAT; | ||
1706 | mode = translate_unix_perms (perm); | ||
1707 | } | ||
1699 | } | 1708 | } |
1700 | 1709 | ||
1701 | fd = open (expfn, oflags | 1710 | fd = open (expfn, oflags |
diff --git a/src/util/gnunet-service-resolver.c b/src/util/gnunet-service-resolver.c index d26ec659f..d90d8ec10 100644 --- a/src/util/gnunet-service-resolver.c +++ b/src/util/gnunet-service-resolver.c | |||
@@ -84,6 +84,16 @@ static struct IPCache *cache_head; | |||
84 | */ | 84 | */ |
85 | static struct IPCache *cache_tail; | 85 | static struct IPCache *cache_tail; |
86 | 86 | ||
87 | /** | ||
88 | * Pipe for asynchronously notifying about resolve result | ||
89 | */ | ||
90 | static struct GNUNET_DISK_PipeHandle *resolve_result_pipe; | ||
91 | |||
92 | /** | ||
93 | * Task for reading from resolve_result_pipe | ||
94 | */ | ||
95 | static struct GNUNET_SCHEDULER_Task *resolve_result_pipe_task; | ||
96 | |||
87 | 97 | ||
88 | #if HAVE_GETNAMEINFO | 98 | #if HAVE_GETNAMEINFO |
89 | /** | 99 | /** |
@@ -223,14 +233,15 @@ notify_service_client_done (void *cls) | |||
223 | static void | 233 | static void |
224 | get_ip_as_string (struct GNUNET_SERVICE_Client *client, | 234 | get_ip_as_string (struct GNUNET_SERVICE_Client *client, |
225 | int af, | 235 | int af, |
226 | const void *ip) | 236 | const void *ip, |
237 | uint32_t request_id) | ||
227 | { | 238 | { |
228 | struct IPCache *pos; | 239 | struct IPCache *pos; |
229 | struct IPCache *next; | 240 | struct IPCache *next; |
230 | struct GNUNET_TIME_Absolute now; | 241 | struct GNUNET_TIME_Absolute now; |
231 | struct GNUNET_MQ_Envelope *env; | 242 | struct GNUNET_MQ_Envelope *env; |
232 | struct GNUNET_MQ_Handle *mq; | 243 | struct GNUNET_MQ_Handle *mq; |
233 | struct GNUNET_MessageHeader *msg; | 244 | struct GNUNET_RESOLVER_ResponseMessage *msg; |
234 | size_t ip_len; | 245 | size_t ip_len; |
235 | struct in6_addr ix; | 246 | struct in6_addr ix; |
236 | size_t alen; | 247 | size_t alen; |
@@ -304,13 +315,16 @@ get_ip_as_string (struct GNUNET_SERVICE_Client *client, | |||
304 | env = GNUNET_MQ_msg_extra (msg, | 315 | env = GNUNET_MQ_msg_extra (msg, |
305 | alen, | 316 | alen, |
306 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | 317 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); |
318 | msg->id = request_id; | ||
307 | GNUNET_memcpy (&msg[1], | 319 | GNUNET_memcpy (&msg[1], |
308 | pos->addr, | 320 | pos->addr, |
309 | alen); | 321 | alen); |
310 | GNUNET_MQ_send (mq, | 322 | GNUNET_MQ_send (mq, |
311 | env); | 323 | env); |
324 | // send end message | ||
312 | env = GNUNET_MQ_msg (msg, | 325 | env = GNUNET_MQ_msg (msg, |
313 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | 326 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); |
327 | msg->id = request_id; | ||
314 | GNUNET_MQ_notify_sent (env, | 328 | GNUNET_MQ_notify_sent (env, |
315 | ¬ify_service_client_done, | 329 | ¬ify_service_client_done, |
316 | client); | 330 | client); |
@@ -319,17 +333,152 @@ get_ip_as_string (struct GNUNET_SERVICE_Client *client, | |||
319 | } | 333 | } |
320 | 334 | ||
321 | 335 | ||
322 | #if HAVE_GETADDRINFO | 336 | #if HAVE_GETADDRINFO_A |
337 | struct AsyncCls | ||
338 | { | ||
339 | struct gaicb *host; | ||
340 | struct sigevent *sig; | ||
341 | struct GNUNET_MQ_Handle *mq; | ||
342 | uint32_t request_id; | ||
343 | }; | ||
344 | |||
345 | |||
346 | static void | ||
347 | resolve_result_pipe_cb (void *cls) | ||
348 | { | ||
349 | struct AsyncCls *async_cls; | ||
350 | struct gaicb *host; | ||
351 | struct GNUNET_RESOLVER_ResponseMessage *msg; | ||
352 | struct GNUNET_MQ_Envelope *env; | ||
353 | |||
354 | GNUNET_DISK_file_read (GNUNET_DISK_pipe_handle (resolve_result_pipe, | ||
355 | GNUNET_DISK_PIPE_END_READ), | ||
356 | &async_cls, | ||
357 | sizeof (struct AsyncCls *)); | ||
358 | resolve_result_pipe_task = | ||
359 | GNUNET_SCHEDULER_add_read_file (GNUNET_TIME_UNIT_FOREVER_REL, | ||
360 | GNUNET_DISK_pipe_handle (resolve_result_pipe, | ||
361 | GNUNET_DISK_PIPE_END_READ), | ||
362 | &resolve_result_pipe_cb, | ||
363 | NULL); | ||
364 | host = async_cls->host; | ||
365 | for (struct addrinfo *pos = host->ar_result; pos != NULL; pos = pos->ai_next) | ||
366 | { | ||
367 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | ||
368 | "Lookup result for hostname %s: %s (request ID %u)\n", | ||
369 | host->ar_name, | ||
370 | GNUNET_a2s (pos->ai_addr, pos->ai_addrlen), | ||
371 | async_cls->request_id); | ||
372 | switch (pos->ai_family) | ||
373 | { | ||
374 | case AF_INET: | ||
375 | env = GNUNET_MQ_msg_extra (msg, | ||
376 | sizeof (struct in_addr), | ||
377 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | ||
378 | msg->id = async_cls->request_id; | ||
379 | GNUNET_memcpy (&msg[1], | ||
380 | &((struct sockaddr_in*) pos->ai_addr)->sin_addr, | ||
381 | sizeof (struct in_addr)); | ||
382 | GNUNET_MQ_send (async_cls->mq, | ||
383 | env); | ||
384 | break; | ||
385 | case AF_INET6: | ||
386 | env = GNUNET_MQ_msg_extra (msg, | ||
387 | sizeof (struct in6_addr), | ||
388 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | ||
389 | msg->id = async_cls->request_id; | ||
390 | GNUNET_memcpy (&msg[1], | ||
391 | &((struct sockaddr_in6*) pos->ai_addr)->sin6_addr, | ||
392 | sizeof (struct in6_addr)); | ||
393 | GNUNET_MQ_send (async_cls->mq, | ||
394 | env); | ||
395 | break; | ||
396 | default: | ||
397 | /* unsupported, skip */ | ||
398 | break; | ||
399 | } | ||
400 | } | ||
401 | // send end message | ||
402 | env = GNUNET_MQ_msg (msg, | ||
403 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | ||
404 | msg->id = async_cls->request_id; | ||
405 | GNUNET_MQ_send (async_cls->mq, | ||
406 | env); | ||
407 | freeaddrinfo (host->ar_result); | ||
408 | GNUNET_free ((struct gaicb *)host->ar_request); // free hints | ||
409 | GNUNET_free (host); | ||
410 | GNUNET_free (async_cls->sig); | ||
411 | GNUNET_free (async_cls); | ||
412 | } | ||
413 | |||
414 | |||
415 | static void | ||
416 | handle_async_result (union sigval val) | ||
417 | { | ||
418 | GNUNET_DISK_file_write (GNUNET_DISK_pipe_handle (resolve_result_pipe, | ||
419 | GNUNET_DISK_PIPE_END_WRITE), | ||
420 | &val.sival_ptr, | ||
421 | sizeof (val.sival_ptr)); | ||
422 | } | ||
423 | |||
424 | |||
425 | static int | ||
426 | getaddrinfo_a_resolve (struct GNUNET_MQ_Handle *mq, | ||
427 | const char *hostname, | ||
428 | int af, | ||
429 | uint32_t request_id) | ||
430 | { | ||
431 | int ret; | ||
432 | struct gaicb *host; | ||
433 | struct addrinfo *hints; | ||
434 | struct sigevent *sig; | ||
435 | struct AsyncCls *async_cls; | ||
436 | |||
437 | host = GNUNET_new (struct gaicb); | ||
438 | hints = GNUNET_new (struct addrinfo); | ||
439 | sig = GNUNET_new (struct sigevent); | ||
440 | async_cls = GNUNET_new (struct AsyncCls); | ||
441 | memset (hints, | ||
442 | 0, | ||
443 | sizeof (struct addrinfo)); | ||
444 | memset (sig, | ||
445 | 0, | ||
446 | sizeof (struct sigevent)); | ||
447 | hints->ai_family = af; | ||
448 | hints->ai_socktype = SOCK_STREAM; /* go for TCP */ | ||
449 | host->ar_name = hostname; | ||
450 | host->ar_service = NULL; | ||
451 | host->ar_request = hints; | ||
452 | host->ar_result = NULL; | ||
453 | sig->sigev_notify = SIGEV_THREAD; | ||
454 | sig->sigev_value.sival_ptr = async_cls; | ||
455 | sig->sigev_notify_function = &handle_async_result; | ||
456 | async_cls->host = host; | ||
457 | async_cls->sig = sig; | ||
458 | async_cls->mq = mq; | ||
459 | async_cls->request_id = request_id; | ||
460 | ret = getaddrinfo_a (GAI_NOWAIT, | ||
461 | &host, | ||
462 | 1, | ||
463 | sig); | ||
464 | if (0 != ret) | ||
465 | return GNUNET_SYSERR; | ||
466 | return GNUNET_OK; | ||
467 | } | ||
468 | |||
469 | |||
470 | #elif HAVE_GETADDRINFO | ||
323 | static int | 471 | static int |
324 | getaddrinfo_resolve (struct GNUNET_MQ_Handle *mq, | 472 | getaddrinfo_resolve (struct GNUNET_MQ_Handle *mq, |
325 | const char *hostname, | 473 | const char *hostname, |
326 | int af) | 474 | int af, |
475 | uint32_t request_id) | ||
327 | { | 476 | { |
328 | int s; | 477 | int s; |
329 | struct addrinfo hints; | 478 | struct addrinfo hints; |
330 | struct addrinfo *result; | 479 | struct addrinfo *result; |
331 | struct addrinfo *pos; | 480 | struct addrinfo *pos; |
332 | struct GNUNET_MessageHeader *msg; | 481 | struct GNUNET_RESOLVER_ResponseMessage *msg; |
333 | struct GNUNET_MQ_Envelope *env; | 482 | struct GNUNET_MQ_Envelope *env; |
334 | 483 | ||
335 | #ifdef WINDOWS | 484 | #ifdef WINDOWS |
@@ -340,10 +489,12 @@ getaddrinfo_resolve (struct GNUNET_MQ_Handle *mq, | |||
340 | int ret2; | 489 | int ret2; |
341 | ret1 = getaddrinfo_resolve (mq, | 490 | ret1 = getaddrinfo_resolve (mq, |
342 | hostname, | 491 | hostname, |
343 | AF_INET); | 492 | AF_INET, |
493 | request_id); | ||
344 | ret2 = getaddrinfo_resolve (mq, | 494 | ret2 = getaddrinfo_resolve (mq, |
345 | hostname, | 495 | hostname, |
346 | AF_INET6); | 496 | AF_INET6, |
497 | request_id); | ||
347 | if ( (ret1 == GNUNET_OK) || | 498 | if ( (ret1 == GNUNET_OK) || |
348 | (ret2 == GNUNET_OK) ) | 499 | (ret2 == GNUNET_OK) ) |
349 | return GNUNET_OK; | 500 | return GNUNET_OK; |
@@ -389,6 +540,7 @@ getaddrinfo_resolve (struct GNUNET_MQ_Handle *mq, | |||
389 | env = GNUNET_MQ_msg_extra (msg, | 540 | env = GNUNET_MQ_msg_extra (msg, |
390 | sizeof (struct in_addr), | 541 | sizeof (struct in_addr), |
391 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | 542 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); |
543 | msg->id = request_id; | ||
392 | GNUNET_memcpy (&msg[1], | 544 | GNUNET_memcpy (&msg[1], |
393 | &((struct sockaddr_in*) pos->ai_addr)->sin_addr, | 545 | &((struct sockaddr_in*) pos->ai_addr)->sin_addr, |
394 | sizeof (struct in_addr)); | 546 | sizeof (struct in_addr)); |
@@ -399,6 +551,7 @@ getaddrinfo_resolve (struct GNUNET_MQ_Handle *mq, | |||
399 | env = GNUNET_MQ_msg_extra (msg, | 551 | env = GNUNET_MQ_msg_extra (msg, |
400 | sizeof (struct in6_addr), | 552 | sizeof (struct in6_addr), |
401 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | 553 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); |
554 | msg->id = request_id; | ||
402 | GNUNET_memcpy (&msg[1], | 555 | GNUNET_memcpy (&msg[1], |
403 | &((struct sockaddr_in6*) pos->ai_addr)->sin6_addr, | 556 | &((struct sockaddr_in6*) pos->ai_addr)->sin6_addr, |
404 | sizeof (struct in6_addr)); | 557 | sizeof (struct in6_addr)); |
@@ -421,13 +574,14 @@ getaddrinfo_resolve (struct GNUNET_MQ_Handle *mq, | |||
421 | static int | 574 | static int |
422 | gethostbyname2_resolve (struct GNUNET_MQ_Handle *mq, | 575 | gethostbyname2_resolve (struct GNUNET_MQ_Handle *mq, |
423 | const char *hostname, | 576 | const char *hostname, |
424 | int af) | 577 | int af, |
578 | uint32_t request_id) | ||
425 | { | 579 | { |
426 | struct hostent *hp; | 580 | struct hostent *hp; |
427 | int ret1; | 581 | int ret1; |
428 | int ret2; | 582 | int ret2; |
429 | struct GNUNET_MQ_Envelope *env; | 583 | struct GNUNET_MQ_Envelope *env; |
430 | struct GNUNET_MessageHeader *msg; | 584 | struct GNUNET_RESOLVER_ResponseMessage *msg; |
431 | 585 | ||
432 | #ifdef WINDOWS | 586 | #ifdef WINDOWS |
433 | /* gethostbyname2() in plibc is a compat dummy that calls gethostbyname(). */ | 587 | /* gethostbyname2() in plibc is a compat dummy that calls gethostbyname(). */ |
@@ -438,10 +592,12 @@ gethostbyname2_resolve (struct GNUNET_MQ_Handle *mq, | |||
438 | { | 592 | { |
439 | ret1 = gethostbyname2_resolve (mq, | 593 | ret1 = gethostbyname2_resolve (mq, |
440 | hostname, | 594 | hostname, |
441 | AF_INET); | 595 | AF_INET, |
596 | request_id); | ||
442 | ret2 = gethostbyname2_resolve (mq, | 597 | ret2 = gethostbyname2_resolve (mq, |
443 | hostname, | 598 | hostname, |
444 | AF_INET6); | 599 | AF_INET6, |
600 | request_id); | ||
445 | if ( (ret1 == GNUNET_OK) || | 601 | if ( (ret1 == GNUNET_OK) || |
446 | (ret2 == GNUNET_OK) ) | 602 | (ret2 == GNUNET_OK) ) |
447 | return GNUNET_OK; | 603 | return GNUNET_OK; |
@@ -468,6 +624,7 @@ gethostbyname2_resolve (struct GNUNET_MQ_Handle *mq, | |||
468 | env = GNUNET_MQ_msg_extra (msg, | 624 | env = GNUNET_MQ_msg_extra (msg, |
469 | hp->h_length, | 625 | hp->h_length, |
470 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | 626 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); |
627 | msg->id = request_id; | ||
471 | GNUNET_memcpy (&msg[1], | 628 | GNUNET_memcpy (&msg[1], |
472 | hp->h_addr_list[0], | 629 | hp->h_addr_list[0], |
473 | hp->h_length); | 630 | hp->h_length); |
@@ -479,6 +636,7 @@ gethostbyname2_resolve (struct GNUNET_MQ_Handle *mq, | |||
479 | env = GNUNET_MQ_msg_extra (msg, | 636 | env = GNUNET_MQ_msg_extra (msg, |
480 | hp->h_length, | 637 | hp->h_length, |
481 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | 638 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); |
639 | msg->id = request_id; | ||
482 | GNUNET_memcpy (&msg[1], | 640 | GNUNET_memcpy (&msg[1], |
483 | hp->h_addr_list[0], | 641 | hp->h_addr_list[0], |
484 | hp->h_length); | 642 | hp->h_length); |
@@ -497,10 +655,11 @@ gethostbyname2_resolve (struct GNUNET_MQ_Handle *mq, | |||
497 | 655 | ||
498 | static int | 656 | static int |
499 | gethostbyname_resolve (struct GNUNET_MQ_Handle *mq, | 657 | gethostbyname_resolve (struct GNUNET_MQ_Handle *mq, |
500 | const char *hostname) | 658 | const char *hostname, |
659 | uint32_t request_id) | ||
501 | { | 660 | { |
502 | struct hostent *hp; | 661 | struct hostent *hp; |
503 | struct GNUNET_MessageHeader *msg; | 662 | struct GNUNET_RESOLVER_ResponseMessage *msg; |
504 | struct GNUNET_MQ_Envelope *env; | 663 | struct GNUNET_MQ_Envelope *env; |
505 | 664 | ||
506 | hp = GETHOSTBYNAME (hostname); | 665 | hp = GETHOSTBYNAME (hostname); |
@@ -521,6 +680,7 @@ gethostbyname_resolve (struct GNUNET_MQ_Handle *mq, | |||
521 | env = GNUNET_MQ_msg_extra (msg, | 680 | env = GNUNET_MQ_msg_extra (msg, |
522 | hp->h_length, | 681 | hp->h_length, |
523 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | 682 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); |
683 | msg->id = request_id; | ||
524 | GNUNET_memcpy (&msg[1], | 684 | GNUNET_memcpy (&msg[1], |
525 | hp->h_addr_list[0], | 685 | hp->h_addr_list[0], |
526 | hp->h_length); | 686 | hp->h_length); |
@@ -541,34 +701,42 @@ gethostbyname_resolve (struct GNUNET_MQ_Handle *mq, | |||
541 | static void | 701 | static void |
542 | get_ip_from_hostname (struct GNUNET_SERVICE_Client *client, | 702 | get_ip_from_hostname (struct GNUNET_SERVICE_Client *client, |
543 | const char *hostname, | 703 | const char *hostname, |
544 | int af) | 704 | int af, |
705 | uint32_t request_id) | ||
545 | { | 706 | { |
546 | int ret; | ||
547 | struct GNUNET_MQ_Handle *mq; | ||
548 | struct GNUNET_MQ_Envelope *env; | 707 | struct GNUNET_MQ_Envelope *env; |
549 | struct GNUNET_MessageHeader *msg; | 708 | struct GNUNET_RESOLVER_ResponseMessage *msg; |
709 | struct GNUNET_MQ_Handle *mq; | ||
550 | 710 | ||
551 | mq = GNUNET_SERVICE_client_get_mq (client); | 711 | mq = GNUNET_SERVICE_client_get_mq (client); |
552 | ret = GNUNET_NO; | 712 | #if HAVE_GETADDRINFO_A |
553 | #if HAVE_GETADDRINFO | 713 | getaddrinfo_a_resolve (mq, |
554 | if (ret == GNUNET_NO) | 714 | hostname, |
555 | ret = getaddrinfo_resolve (mq, | 715 | af, |
556 | hostname, | 716 | request_id); |
557 | af); | 717 | GNUNET_SERVICE_client_continue (client); |
718 | return; | ||
719 | #elif HAVE_GETADDRINFO | ||
720 | getaddrinfo_resolve (mq, | ||
721 | hostname, | ||
722 | af, | ||
723 | request_id); | ||
558 | #elif HAVE_GETHOSTBYNAME2 | 724 | #elif HAVE_GETHOSTBYNAME2 |
559 | if (ret == GNUNET_NO) | 725 | gethostbyname2_resolve (mq, |
560 | ret = gethostbyname2_resolve (mq, | 726 | hostname, |
561 | hostname, | 727 | af, |
562 | af); | 728 | request_id); |
563 | #elif HAVE_GETHOSTBYNAME | 729 | #elif HAVE_GETHOSTBYNAME |
564 | if ( (ret == GNUNET_NO) && | 730 | if ( ( (af == AF_UNSPEC) || |
565 | ( (af == AF_UNSPEC) || | ||
566 | (af == PF_INET) ) ) | 731 | (af == PF_INET) ) ) |
567 | gethostbyname_resolve (mq, | 732 | gethostbyname_resolve (mq, |
568 | hostname); | 733 | hostname, |
734 | request_id); | ||
569 | #endif | 735 | #endif |
736 | // send end message | ||
570 | env = GNUNET_MQ_msg (msg, | 737 | env = GNUNET_MQ_msg (msg, |
571 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); | 738 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE); |
739 | msg->id = request_id; | ||
572 | GNUNET_MQ_notify_sent (env, | 740 | GNUNET_MQ_notify_sent (env, |
573 | ¬ify_service_client_done, | 741 | ¬ify_service_client_done, |
574 | client); | 742 | client); |
@@ -647,21 +815,21 @@ handle_get (void *cls, | |||
647 | const void *ip; | 815 | const void *ip; |
648 | int direction; | 816 | int direction; |
649 | int af; | 817 | int af; |
818 | uint32_t id; | ||
650 | 819 | ||
651 | direction = ntohl (msg->direction); | 820 | direction = ntohl (msg->direction); |
652 | af = ntohl (msg->af); | 821 | af = ntohl (msg->af); |
822 | id = ntohl (msg->id); | ||
653 | if (GNUNET_NO == direction) | 823 | if (GNUNET_NO == direction) |
654 | { | 824 | { |
655 | /* IP from hostname */ | 825 | /* IP from hostname */ |
656 | const char *hostname; | 826 | const char *hostname; |
657 | 827 | ||
658 | hostname = (const char *) &msg[1]; | 828 | hostname = (const char *) &msg[1]; |
659 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | ||
660 | "Resolver asked to look up `%s'.\n", | ||
661 | hostname); | ||
662 | get_ip_from_hostname (client, | 829 | get_ip_from_hostname (client, |
663 | hostname, | 830 | hostname, |
664 | af); | 831 | af, |
832 | id); | ||
665 | return; | 833 | return; |
666 | } | 834 | } |
667 | ip = &msg[1]; | 835 | ip = &msg[1]; |
@@ -671,16 +839,18 @@ handle_get (void *cls, | |||
671 | char buf[INET6_ADDRSTRLEN]; | 839 | char buf[INET6_ADDRSTRLEN]; |
672 | 840 | ||
673 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 841 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
674 | "Resolver asked to look up IP address `%s'.\n", | 842 | "Resolver asked to look up IP address `%s (request ID %u)'.\n", |
675 | inet_ntop (af, | 843 | inet_ntop (af, |
676 | ip, | 844 | ip, |
677 | buf, | 845 | buf, |
678 | sizeof (buf))); | 846 | sizeof (buf)), |
847 | id); | ||
679 | } | 848 | } |
680 | #endif | 849 | #endif |
681 | get_ip_as_string (client, | 850 | get_ip_as_string (client, |
682 | af, | 851 | af, |
683 | ip); | 852 | ip, |
853 | id); | ||
684 | } | 854 | } |
685 | 855 | ||
686 | 856 | ||
@@ -700,6 +870,19 @@ connect_cb (void *cls, | |||
700 | (void) cls; | 870 | (void) cls; |
701 | (void) mq; | 871 | (void) mq; |
702 | 872 | ||
873 | #if HAVE_GETADDRINFO_A | ||
874 | resolve_result_pipe = GNUNET_DISK_pipe (GNUNET_NO, | ||
875 | GNUNET_NO, | ||
876 | GNUNET_NO, | ||
877 | GNUNET_NO); | ||
878 | GNUNET_assert (NULL != resolve_result_pipe); | ||
879 | resolve_result_pipe_task = | ||
880 | GNUNET_SCHEDULER_add_read_file (GNUNET_TIME_UNIT_FOREVER_REL, | ||
881 | GNUNET_DISK_pipe_handle (resolve_result_pipe, | ||
882 | GNUNET_DISK_PIPE_END_READ), | ||
883 | &resolve_result_pipe_cb, | ||
884 | NULL); | ||
885 | #endif | ||
703 | return c; | 886 | return c; |
704 | } | 887 | } |
705 | 888 | ||
@@ -718,6 +901,18 @@ disconnect_cb (void *cls, | |||
718 | { | 901 | { |
719 | (void) cls; | 902 | (void) cls; |
720 | 903 | ||
904 | #if HAVE_GETADDRINFO_A | ||
905 | if (NULL != resolve_result_pipe_task) | ||
906 | { | ||
907 | GNUNET_SCHEDULER_cancel (resolve_result_pipe_task); | ||
908 | resolve_result_pipe_task = NULL; | ||
909 | } | ||
910 | if (NULL != resolve_result_pipe) | ||
911 | { | ||
912 | GNUNET_DISK_pipe_close (resolve_result_pipe); | ||
913 | resolve_result_pipe = NULL; | ||
914 | } | ||
915 | #endif | ||
721 | GNUNET_assert (c == internal_cls); | 916 | GNUNET_assert (c == internal_cls); |
722 | } | 917 | } |
723 | 918 | ||
diff --git a/src/util/resolver.h b/src/util/resolver.h index 0b137f085..a0f105afa 100644 --- a/src/util/resolver.h +++ b/src/util/resolver.h | |||
@@ -56,10 +56,37 @@ struct GNUNET_RESOLVER_GetMessage | |||
56 | */ | 56 | */ |
57 | int32_t af GNUNET_PACKED; | 57 | int32_t af GNUNET_PACKED; |
58 | 58 | ||
59 | /** | ||
60 | * identifies the request and is contained in the response message. The | ||
61 | * client has to match response to request by this identifier. | ||
62 | */ | ||
63 | uint32_t id GNUNET_PACKED; | ||
64 | |||
59 | /* followed by 0-terminated string for A/AAAA-lookup or | 65 | /* followed by 0-terminated string for A/AAAA-lookup or |
60 | by 'struct in_addr' / 'struct in6_addr' for reverse lookup */ | 66 | by 'struct in_addr' / 'struct in6_addr' for reverse lookup */ |
61 | 67 | ||
62 | }; | 68 | }; |
69 | |||
70 | |||
71 | struct GNUNET_RESOLVER_ResponseMessage | ||
72 | { | ||
73 | /** | ||
74 | * Type: GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE | ||
75 | */ | ||
76 | struct GNUNET_MessageHeader header; | ||
77 | |||
78 | /** | ||
79 | * identifies the request this message responds to. The client | ||
80 | * has to match response to request by this identifier. | ||
81 | */ | ||
82 | uint32_t id GNUNET_PACKED; | ||
83 | |||
84 | /* followed by 0-terminated string for response to a reverse lookup | ||
85 | * or by 'struct in_addr' / 'struct in6_addr' for response to | ||
86 | * A/AAAA-lookup | ||
87 | */ | ||
88 | }; | ||
89 | |||
63 | GNUNET_NETWORK_STRUCT_END | 90 | GNUNET_NETWORK_STRUCT_END |
64 | 91 | ||
65 | #endif | 92 | #endif |
diff --git a/src/util/resolver_api.c b/src/util/resolver_api.c index afebabf08..b94819f06 100644 --- a/src/util/resolver_api.c +++ b/src/util/resolver_api.c | |||
@@ -69,6 +69,11 @@ static struct GNUNET_RESOLVER_RequestHandle *req_head; | |||
69 | static struct GNUNET_RESOLVER_RequestHandle *req_tail; | 69 | static struct GNUNET_RESOLVER_RequestHandle *req_tail; |
70 | 70 | ||
71 | /** | 71 | /** |
72 | * ID of the last request we sent to the service | ||
73 | */ | ||
74 | static uint32_t last_request_id; | ||
75 | |||
76 | /** | ||
72 | * How long should we wait to reconnect? | 77 | * How long should we wait to reconnect? |
73 | */ | 78 | */ |
74 | static struct GNUNET_TIME_Relative backoff; | 79 | static struct GNUNET_TIME_Relative backoff; |
@@ -137,6 +142,11 @@ struct GNUNET_RESOLVER_RequestHandle | |||
137 | int af; | 142 | int af; |
138 | 143 | ||
139 | /** | 144 | /** |
145 | * Identifies the request. The response will contain this id. | ||
146 | */ | ||
147 | uint32_t id; | ||
148 | |||
149 | /** | ||
140 | * Has this request been transmitted to the service? | 150 | * Has this request been transmitted to the service? |
141 | * #GNUNET_YES if transmitted | 151 | * #GNUNET_YES if transmitted |
142 | * #GNUNET_YES if not transmitted | 152 | * #GNUNET_YES if not transmitted |
@@ -435,11 +445,13 @@ process_requests () | |||
435 | GNUNET_MESSAGE_TYPE_RESOLVER_REQUEST); | 445 | GNUNET_MESSAGE_TYPE_RESOLVER_REQUEST); |
436 | msg->direction = htonl (rh->direction); | 446 | msg->direction = htonl (rh->direction); |
437 | msg->af = htonl (rh->af); | 447 | msg->af = htonl (rh->af); |
448 | msg->id = htonl (rh->id); | ||
438 | GNUNET_memcpy (&msg[1], | 449 | GNUNET_memcpy (&msg[1], |
439 | &rh[1], | 450 | &rh[1], |
440 | rh->data_len); | 451 | rh->data_len); |
441 | LOG (GNUNET_ERROR_TYPE_DEBUG, | 452 | LOG (GNUNET_ERROR_TYPE_DEBUG, |
442 | "Transmitting DNS resolution request to DNS service\n"); | 453 | "Transmitting DNS resolution request (ID %u) to DNS service\n", |
454 | rh->id); | ||
443 | GNUNET_MQ_send (mq, | 455 | GNUNET_MQ_send (mq, |
444 | env); | 456 | env); |
445 | rh->was_transmitted = GNUNET_YES; | 457 | rh->was_transmitted = GNUNET_YES; |
@@ -454,7 +466,7 @@ process_requests () | |||
454 | */ | 466 | */ |
455 | static int | 467 | static int |
456 | check_response (void *cls, | 468 | check_response (void *cls, |
457 | const struct GNUNET_MessageHeader *msg) | 469 | const struct GNUNET_RESOLVER_ResponseMessage *msg) |
458 | { | 470 | { |
459 | (void) cls; | 471 | (void) cls; |
460 | (void) msg; | 472 | (void) msg; |
@@ -474,11 +486,18 @@ check_response (void *cls, | |||
474 | */ | 486 | */ |
475 | static void | 487 | static void |
476 | handle_response (void *cls, | 488 | handle_response (void *cls, |
477 | const struct GNUNET_MessageHeader *msg) | 489 | const struct GNUNET_RESOLVER_ResponseMessage *msg) |
478 | { | 490 | { |
479 | struct GNUNET_RESOLVER_RequestHandle *rh = req_head; | 491 | struct GNUNET_RESOLVER_RequestHandle *rh = req_head; |
480 | uint16_t size; | 492 | uint16_t size; |
481 | char *nret; | 493 | char *nret; |
494 | uint32_t request_id = msg->id; | ||
495 | |||
496 | for (; rh != NULL; rh = rh->next) | ||
497 | { | ||
498 | if (rh->id == request_id) | ||
499 | break; | ||
500 | } | ||
482 | 501 | ||
483 | (void) cls; | 502 | (void) cls; |
484 | if (NULL == rh) | 503 | if (NULL == rh) |
@@ -490,8 +509,8 @@ handle_response (void *cls, | |||
490 | reconnect (); | 509 | reconnect (); |
491 | return; | 510 | return; |
492 | } | 511 | } |
493 | size = ntohs (msg->size); | 512 | size = ntohs (msg->header.size); |
494 | if (size == sizeof (struct GNUNET_MessageHeader)) | 513 | if (size == sizeof (struct GNUNET_RESOLVER_ResponseMessage)) |
495 | { | 514 | { |
496 | LOG (GNUNET_ERROR_TYPE_DEBUG, | 515 | LOG (GNUNET_ERROR_TYPE_DEBUG, |
497 | "Received empty response from DNS service\n"); | 516 | "Received empty response from DNS service\n"); |
@@ -532,7 +551,7 @@ handle_response (void *cls, | |||
532 | const char *hostname; | 551 | const char *hostname; |
533 | 552 | ||
534 | hostname = (const char *) &msg[1]; | 553 | hostname = (const char *) &msg[1]; |
535 | if (hostname[size - sizeof (struct GNUNET_MessageHeader) - 1] != '\0') | 554 | if (hostname[size - sizeof (struct GNUNET_RESOLVER_ResponseMessage) - 1] != '\0') |
536 | { | 555 | { |
537 | GNUNET_break (0); | 556 | GNUNET_break (0); |
538 | if (GNUNET_SYSERR != rh->was_transmitted) | 557 | if (GNUNET_SYSERR != rh->was_transmitted) |
@@ -566,7 +585,7 @@ handle_response (void *cls, | |||
566 | size_t ip_len; | 585 | size_t ip_len; |
567 | 586 | ||
568 | ip = &msg[1]; | 587 | ip = &msg[1]; |
569 | ip_len = size - sizeof (struct GNUNET_MessageHeader); | 588 | ip_len = size - sizeof (struct GNUNET_RESOLVER_ResponseMessage); |
570 | if (ip_len == sizeof (struct in_addr)) | 589 | if (ip_len == sizeof (struct in_addr)) |
571 | { | 590 | { |
572 | memset (&v4, 0, sizeof (v4)); | 591 | memset (&v4, 0, sizeof (v4)); |
@@ -763,7 +782,7 @@ reconnect_task (void *cls) | |||
763 | struct GNUNET_MQ_MessageHandler handlers[] = { | 782 | struct GNUNET_MQ_MessageHandler handlers[] = { |
764 | GNUNET_MQ_hd_var_size (response, | 783 | GNUNET_MQ_hd_var_size (response, |
765 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE, | 784 | GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE, |
766 | struct GNUNET_MessageHeader, | 785 | struct GNUNET_RESOLVER_ResponseMessage, |
767 | NULL), | 786 | NULL), |
768 | GNUNET_MQ_handler_end () | 787 | GNUNET_MQ_handler_end () |
769 | }; | 788 | }; |
@@ -926,6 +945,7 @@ GNUNET_RESOLVER_ip_get (const char *hostname, | |||
926 | hostname); | 945 | hostname); |
927 | rh = GNUNET_malloc (sizeof (struct GNUNET_RESOLVER_RequestHandle) + slen); | 946 | rh = GNUNET_malloc (sizeof (struct GNUNET_RESOLVER_RequestHandle) + slen); |
928 | rh->af = af; | 947 | rh->af = af; |
948 | rh->id = ++last_request_id; | ||
929 | rh->addr_callback = callback; | 949 | rh->addr_callback = callback; |
930 | rh->cls = callback_cls; | 950 | rh->cls = callback_cls; |
931 | GNUNET_memcpy (&rh[1], | 951 | GNUNET_memcpy (&rh[1], |
@@ -1072,6 +1092,7 @@ GNUNET_RESOLVER_hostname_get (const struct sockaddr *sa, | |||
1072 | rh->name_callback = callback; | 1092 | rh->name_callback = callback; |
1073 | rh->cls = cls; | 1093 | rh->cls = cls; |
1074 | rh->af = sa->sa_family; | 1094 | rh->af = sa->sa_family; |
1095 | rh->id = ++last_request_id; | ||
1075 | rh->timeout = GNUNET_TIME_relative_to_absolute (timeout); | 1096 | rh->timeout = GNUNET_TIME_relative_to_absolute (timeout); |
1076 | GNUNET_memcpy (&rh[1], | 1097 | GNUNET_memcpy (&rh[1], |
1077 | ip, | 1098 | ip, |
diff --git a/src/util/test_resolver_api.c b/src/util/test_resolver_api.c index c89fad865..5a8f95093 100644 --- a/src/util/test_resolver_api.c +++ b/src/util/test_resolver_api.c | |||
@@ -258,6 +258,8 @@ run (void *cls, char *const *args, const char *cfgfile, | |||
258 | /* Resolve the same using GNUNET */ | 258 | /* Resolve the same using GNUNET */ |
259 | GNUNET_RESOLVER_ip_get (ROOTSERVER_NAME, AF_INET, timeout, | 259 | GNUNET_RESOLVER_ip_get (ROOTSERVER_NAME, AF_INET, timeout, |
260 | &check_rootserver_ip, cls); | 260 | &check_rootserver_ip, cls); |
261 | GNUNET_RESOLVER_ip_get (ROOTSERVER_NAME, AF_INET, timeout, | ||
262 | &check_rootserver_ip, cls); | ||
261 | 263 | ||
262 | /* | 264 | /* |
263 | * Success: forward lookups work as expected | 265 | * Success: forward lookups work as expected |