summaryrefslogtreecommitdiff
path: root/src/include/gnunet_configuration_lib.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/gnunet_configuration_lib.h')
-rw-r--r--src/include/gnunet_configuration_lib.h221
1 files changed, 120 insertions, 101 deletions
diff --git a/src/include/gnunet_configuration_lib.h b/src/include/gnunet_configuration_lib.h
index 4d1bb6b79..4df8d8965 100644
--- a/src/include/gnunet_configuration_lib.h
+++ b/src/include/gnunet_configuration_lib.h
@@ -51,7 +51,7 @@ struct GNUNET_CONFIGURATION_Handle;
51 * @return fresh configuration object 51 * @return fresh configuration object
52 */ 52 */
53struct GNUNET_CONFIGURATION_Handle * 53struct GNUNET_CONFIGURATION_Handle *
54GNUNET_CONFIGURATION_create(void); 54GNUNET_CONFIGURATION_create (void);
55 55
56 56
57/** 57/**
@@ -61,7 +61,7 @@ GNUNET_CONFIGURATION_create(void);
61 * @return duplicate configuration 61 * @return duplicate configuration
62 */ 62 */
63struct GNUNET_CONFIGURATION_Handle * 63struct GNUNET_CONFIGURATION_Handle *
64GNUNET_CONFIGURATION_dup(const struct GNUNET_CONFIGURATION_Handle *cfg); 64GNUNET_CONFIGURATION_dup (const struct GNUNET_CONFIGURATION_Handle *cfg);
65 65
66 66
67/** 67/**
@@ -70,7 +70,7 @@ GNUNET_CONFIGURATION_dup(const struct GNUNET_CONFIGURATION_Handle *cfg);
70 * @param cfg configuration to destroy 70 * @param cfg configuration to destroy
71 */ 71 */
72void 72void
73GNUNET_CONFIGURATION_destroy(struct GNUNET_CONFIGURATION_Handle *cfg); 73GNUNET_CONFIGURATION_destroy (struct GNUNET_CONFIGURATION_Handle *cfg);
74 74
75 75
76/** 76/**
@@ -83,8 +83,8 @@ GNUNET_CONFIGURATION_destroy(struct GNUNET_CONFIGURATION_Handle *cfg);
83 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 83 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
84 */ 84 */
85int 85int
86GNUNET_CONFIGURATION_load(struct GNUNET_CONFIGURATION_Handle *cfg, 86GNUNET_CONFIGURATION_load (struct GNUNET_CONFIGURATION_Handle *cfg,
87 const char *filename); 87 const char *filename);
88 88
89 89
90/** 90/**
@@ -96,8 +96,8 @@ GNUNET_CONFIGURATION_load(struct GNUNET_CONFIGURATION_Handle *cfg,
96 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 96 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
97 */ 97 */
98int 98int
99GNUNET_CONFIGURATION_load_from(struct GNUNET_CONFIGURATION_Handle *cfg, 99GNUNET_CONFIGURATION_load_from (struct GNUNET_CONFIGURATION_Handle *cfg,
100 const char *defaults_d); 100 const char *defaults_d);
101 101
102 102
103/** 103/**
@@ -109,8 +109,8 @@ GNUNET_CONFIGURATION_load_from(struct GNUNET_CONFIGURATION_Handle *cfg,
109 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 109 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
110 */ 110 */
111int 111int
112GNUNET_CONFIGURATION_parse(struct GNUNET_CONFIGURATION_Handle *cfg, 112GNUNET_CONFIGURATION_parse (struct GNUNET_CONFIGURATION_Handle *cfg,
113 const char *filename); 113 const char *filename);
114 114
115 115
116/** 116/**
@@ -122,8 +122,8 @@ GNUNET_CONFIGURATION_parse(struct GNUNET_CONFIGURATION_Handle *cfg,
122 * present. This memory should be freed by the caller 122 * present. This memory should be freed by the caller
123 */ 123 */
124char * 124char *
125GNUNET_CONFIGURATION_serialize(const struct GNUNET_CONFIGURATION_Handle *cfg, 125GNUNET_CONFIGURATION_serialize (const struct GNUNET_CONFIGURATION_Handle *cfg,
126 size_t *size); 126 size_t *size);
127 127
128 128
129/** 129/**
@@ -138,10 +138,10 @@ GNUNET_CONFIGURATION_serialize(const struct GNUNET_CONFIGURATION_Handle *cfg,
138 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 138 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
139 */ 139 */
140int 140int
141GNUNET_CONFIGURATION_deserialize(struct GNUNET_CONFIGURATION_Handle *cfg, 141GNUNET_CONFIGURATION_deserialize (struct GNUNET_CONFIGURATION_Handle *cfg,
142 const char *mem, 142 const char *mem,
143 size_t size, 143 size_t size,
144 const char *basedir); 144 const char *basedir);
145 145
146 146
147/** 147/**
@@ -152,8 +152,8 @@ GNUNET_CONFIGURATION_deserialize(struct GNUNET_CONFIGURATION_Handle *cfg,
152 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 152 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
153 */ 153 */
154int 154int
155GNUNET_CONFIGURATION_write(struct GNUNET_CONFIGURATION_Handle *cfg, 155GNUNET_CONFIGURATION_write (struct GNUNET_CONFIGURATION_Handle *cfg,
156 const char *filename); 156 const char *filename);
157 157
158 158
159/** 159/**
@@ -164,9 +164,11 @@ GNUNET_CONFIGURATION_write(struct GNUNET_CONFIGURATION_Handle *cfg,
164 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 164 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
165 */ 165 */
166int 166int
167GNUNET_CONFIGURATION_write_diffs(const struct GNUNET_CONFIGURATION_Handle *cfg_default, 167GNUNET_CONFIGURATION_write_diffs (const struct
168 const struct GNUNET_CONFIGURATION_Handle *cfg_new, 168 GNUNET_CONFIGURATION_Handle *cfg_default,
169 const char *filename); 169 const struct
170 GNUNET_CONFIGURATION_Handle *cfg_new,
171 const char *filename);
170 172
171 173
172/** 174/**
@@ -177,8 +179,10 @@ GNUNET_CONFIGURATION_write_diffs(const struct GNUNET_CONFIGURATION_Handle *cfg_d
177 * @return configuration with only the differences, never NULL 179 * @return configuration with only the differences, never NULL
178 */ 180 */
179struct GNUNET_CONFIGURATION_Handle * 181struct GNUNET_CONFIGURATION_Handle *
180GNUNET_CONFIGURATION_get_diff(const struct GNUNET_CONFIGURATION_Handle *cfg_default, 182GNUNET_CONFIGURATION_get_diff (const struct
181 const struct GNUNET_CONFIGURATION_Handle *cfg_new); 183 GNUNET_CONFIGURATION_Handle *cfg_default,
184 const struct
185 GNUNET_CONFIGURATION_Handle *cfg_new);
182 186
183 187
184/** 188/**
@@ -189,7 +193,7 @@ GNUNET_CONFIGURATION_get_diff(const struct GNUNET_CONFIGURATION_Handle *cfg_defa
189 * @return #GNUNET_NO if clean, #GNUNET_YES if dirty, #GNUNET_SYSERR on error (i.e. last save failed) 193 * @return #GNUNET_NO if clean, #GNUNET_YES if dirty, #GNUNET_SYSERR on error (i.e. last save failed)
190 */ 194 */
191int 195int
192GNUNET_CONFIGURATION_is_dirty(const struct GNUNET_CONFIGURATION_Handle *cfg); 196GNUNET_CONFIGURATION_is_dirty (const struct GNUNET_CONFIGURATION_Handle *cfg);
193 197
194 198
195/** 199/**
@@ -216,9 +220,9 @@ typedef int
216 * otherwise return value from @a cb. 220 * otherwise return value from @a cb.
217 */ 221 */
218int 222int
219GNUNET_CONFIGURATION_parse_and_run(const char *filename, 223GNUNET_CONFIGURATION_parse_and_run (const char *filename,
220 GNUNET_CONFIGURATION_Callback cb, 224 GNUNET_CONFIGURATION_Callback cb,
221 void *cb_cls); 225 void *cb_cls);
222 226
223 227
224/** 228/**
@@ -255,9 +259,9 @@ typedef void
255 * @param iter_cls closure for @a iter 259 * @param iter_cls closure for @a iter
256 */ 260 */
257void 261void
258GNUNET_CONFIGURATION_iterate(const struct GNUNET_CONFIGURATION_Handle *cfg, 262GNUNET_CONFIGURATION_iterate (const struct GNUNET_CONFIGURATION_Handle *cfg,
259 GNUNET_CONFIGURATION_Iterator iter, 263 GNUNET_CONFIGURATION_Iterator iter,
260 void *iter_cls); 264 void *iter_cls);
261 265
262 266
263/** 267/**
@@ -268,9 +272,11 @@ GNUNET_CONFIGURATION_iterate(const struct GNUNET_CONFIGURATION_Handle *cfg,
268 * @param iter_cls closure for @a iter 272 * @param iter_cls closure for @a iter
269 */ 273 */
270void 274void
271GNUNET_CONFIGURATION_iterate_sections(const struct GNUNET_CONFIGURATION_Handle *cfg, 275GNUNET_CONFIGURATION_iterate_sections (const struct
272 GNUNET_CONFIGURATION_Section_Iterator iter, 276 GNUNET_CONFIGURATION_Handle *cfg,
273 void *iter_cls); 277 GNUNET_CONFIGURATION_Section_Iterator
278 iter,
279 void *iter_cls);
274 280
275 281
276/** 282/**
@@ -280,8 +286,8 @@ GNUNET_CONFIGURATION_iterate_sections(const struct GNUNET_CONFIGURATION_Handle *
280 * @param section name of the section to remove 286 * @param section name of the section to remove
281 */ 287 */
282void 288void
283GNUNET_CONFIGURATION_remove_section(struct GNUNET_CONFIGURATION_Handle *cfg, 289GNUNET_CONFIGURATION_remove_section (struct GNUNET_CONFIGURATION_Handle *cfg,
284 const char *section); 290 const char *section);
285 291
286 292
287/** 293/**
@@ -294,10 +300,11 @@ GNUNET_CONFIGURATION_remove_section(struct GNUNET_CONFIGURATION_Handle *cfg,
294 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 300 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
295 */ 301 */
296int 302int
297GNUNET_CONFIGURATION_get_value_number(const struct GNUNET_CONFIGURATION_Handle *cfg, 303GNUNET_CONFIGURATION_get_value_number (const struct
298 const char *section, 304 GNUNET_CONFIGURATION_Handle *cfg,
299 const char *option, 305 const char *section,
300 unsigned long long *number); 306 const char *option,
307 unsigned long long *number);
301 308
302 309
303/** 310/**
@@ -310,10 +317,11 @@ GNUNET_CONFIGURATION_get_value_number(const struct GNUNET_CONFIGURATION_Handle *
310 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 317 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
311 */ 318 */
312int 319int
313GNUNET_CONFIGURATION_get_value_float(const struct GNUNET_CONFIGURATION_Handle *cfg, 320GNUNET_CONFIGURATION_get_value_float (const struct
314 const char *section, 321 GNUNET_CONFIGURATION_Handle *cfg,
315 const char *option, 322 const char *section,
316 float *number); 323 const char *option,
324 float *number);
317 325
318 326
319/** 327/**
@@ -326,10 +334,11 @@ GNUNET_CONFIGURATION_get_value_float(const struct GNUNET_CONFIGURATION_Handle *c
326 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 334 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
327 */ 335 */
328int 336int
329GNUNET_CONFIGURATION_get_value_time(const struct GNUNET_CONFIGURATION_Handle *cfg, 337GNUNET_CONFIGURATION_get_value_time (const struct
330 const char *section, 338 GNUNET_CONFIGURATION_Handle *cfg,
331 const char *option, 339 const char *section,
332 struct GNUNET_TIME_Relative *time); 340 const char *option,
341 struct GNUNET_TIME_Relative *time);
333 342
334 343
335 344
@@ -343,10 +352,11 @@ GNUNET_CONFIGURATION_get_value_time(const struct GNUNET_CONFIGURATION_Handle *cf
343 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 352 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
344 */ 353 */
345int 354int
346GNUNET_CONFIGURATION_get_value_size(const struct GNUNET_CONFIGURATION_Handle *cfg, 355GNUNET_CONFIGURATION_get_value_size (const struct
347 const char *section, 356 GNUNET_CONFIGURATION_Handle *cfg,
348 const char *option, 357 const char *section,
349 unsigned long long *size); 358 const char *option,
359 unsigned long long *size);
350 360
351 361
352/** 362/**
@@ -358,9 +368,9 @@ GNUNET_CONFIGURATION_get_value_size(const struct GNUNET_CONFIGURATION_Handle *cf
358 * @return #GNUNET_YES if so, #GNUNET_NO if not. 368 * @return #GNUNET_YES if so, #GNUNET_NO if not.
359 */ 369 */
360int 370int
361GNUNET_CONFIGURATION_have_value(const struct GNUNET_CONFIGURATION_Handle *cfg, 371GNUNET_CONFIGURATION_have_value (const struct GNUNET_CONFIGURATION_Handle *cfg,
362 const char *section, 372 const char *section,
363 const char *option); 373 const char *option);
364 374
365 375
366/** 376/**
@@ -374,10 +384,11 @@ GNUNET_CONFIGURATION_have_value(const struct GNUNET_CONFIGURATION_Handle *cfg,
374 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 384 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
375 */ 385 */
376int 386int
377GNUNET_CONFIGURATION_get_value_string(const struct GNUNET_CONFIGURATION_Handle *cfg, 387GNUNET_CONFIGURATION_get_value_string (const struct
378 const char *section, 388 GNUNET_CONFIGURATION_Handle *cfg,
379 const char *option, 389 const char *section,
380 char **value); 390 const char *option,
391 char **value);
381 392
382 393
383/** 394/**
@@ -392,10 +403,11 @@ GNUNET_CONFIGURATION_get_value_string(const struct GNUNET_CONFIGURATION_Handle *
392 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 403 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
393 */ 404 */
394int 405int
395GNUNET_CONFIGURATION_get_value_filename(const struct GNUNET_CONFIGURATION_Handle *cfg, 406GNUNET_CONFIGURATION_get_value_filename (const struct
396 const char *section, 407 GNUNET_CONFIGURATION_Handle *cfg,
397 const char *option, 408 const char *section,
398 char **value); 409 const char *option,
410 char **value);
399 411
400 412
401/** 413/**
@@ -409,11 +421,12 @@ GNUNET_CONFIGURATION_get_value_filename(const struct GNUNET_CONFIGURATION_Handle
409 * @return number of filenames iterated over, -1 on error 421 * @return number of filenames iterated over, -1 on error
410 */ 422 */
411int 423int
412GNUNET_CONFIGURATION_iterate_value_filenames(const struct GNUNET_CONFIGURATION_Handle *cfg, 424GNUNET_CONFIGURATION_iterate_value_filenames (const struct
413 const char *section, 425 GNUNET_CONFIGURATION_Handle *cfg,
414 const char *option, 426 const char *section,
415 GNUNET_FileNameCallback cb, 427 const char *option,
416 void *cb_cls); 428 GNUNET_FileNameCallback cb,
429 void *cb_cls);
417 430
418/** 431/**
419 * Iterate over values of a section in the configuration. 432 * Iterate over values of a section in the configuration.
@@ -424,10 +437,11 @@ GNUNET_CONFIGURATION_iterate_value_filenames(const struct GNUNET_CONFIGURATION_H
424 * @param iter_cls closure for @a iter 437 * @param iter_cls closure for @a iter
425 */ 438 */
426void 439void
427GNUNET_CONFIGURATION_iterate_section_values(const struct GNUNET_CONFIGURATION_Handle *cfg, 440GNUNET_CONFIGURATION_iterate_section_values (const struct
428 const char *section, 441 GNUNET_CONFIGURATION_Handle *cfg,
429 GNUNET_CONFIGURATION_Iterator iter, 442 const char *section,
430 void *iter_cls); 443 GNUNET_CONFIGURATION_Iterator iter,
444 void *iter_cls);
431 445
432/** 446/**
433 * Get a configuration value that should be in a set of 447 * Get a configuration value that should be in a set of
@@ -442,11 +456,12 @@ GNUNET_CONFIGURATION_iterate_section_values(const struct GNUNET_CONFIGURATION_Ha
442 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error 456 * @return #GNUNET_OK on success, #GNUNET_SYSERR on error
443 */ 457 */
444int 458int
445GNUNET_CONFIGURATION_get_value_choice(const struct GNUNET_CONFIGURATION_Handle *cfg, 459GNUNET_CONFIGURATION_get_value_choice (const struct
446 const char *section, 460 GNUNET_CONFIGURATION_Handle *cfg,
447 const char *option, 461 const char *section,
448 const char *const *choices, 462 const char *option,
449 const char **value); 463 const char *const *choices,
464 const char **value);
450 465
451/** 466/**
452 * Get a configuration value that should be in a set of 467 * Get a configuration value that should be in a set of
@@ -458,9 +473,10 @@ GNUNET_CONFIGURATION_get_value_choice(const struct GNUNET_CONFIGURATION_Handle *
458 * @return #GNUNET_YES, #GNUNET_NO or if option has no valid value, #GNUNET_SYSERR 473 * @return #GNUNET_YES, #GNUNET_NO or if option has no valid value, #GNUNET_SYSERR
459 */ 474 */
460int 475int
461GNUNET_CONFIGURATION_get_value_yesno(const struct GNUNET_CONFIGURATION_Handle *cfg, 476GNUNET_CONFIGURATION_get_value_yesno (const struct
462 const char *section, 477 GNUNET_CONFIGURATION_Handle *cfg,
463 const char *option); 478 const char *section,
479 const char *option);
464 480
465 481
466/** 482/**
@@ -476,11 +492,11 @@ GNUNET_CONFIGURATION_get_value_yesno(const struct GNUNET_CONFIGURATION_Handle *c
476 * #GNUNET_SYSERR on decoding error 492 * #GNUNET_SYSERR on decoding error
477 */ 493 */
478int 494int
479GNUNET_CONFIGURATION_get_data(const struct GNUNET_CONFIGURATION_Handle *cfg, 495GNUNET_CONFIGURATION_get_data (const struct GNUNET_CONFIGURATION_Handle *cfg,
480 const char *section, 496 const char *section,
481 const char *option, 497 const char *option,
482 void *buf, 498 void *buf,
483 size_t buf_size); 499 size_t buf_size);
484 500
485 501
486/** 502/**
@@ -500,8 +516,9 @@ GNUNET_CONFIGURATION_get_data(const struct GNUNET_CONFIGURATION_Handle *cfg,
500 * @return $-expanded string 516 * @return $-expanded string
501 */ 517 */
502char * 518char *
503GNUNET_CONFIGURATION_expand_dollar(const struct GNUNET_CONFIGURATION_Handle *cfg, 519GNUNET_CONFIGURATION_expand_dollar (const struct
504 char *orig); 520 GNUNET_CONFIGURATION_Handle *cfg,
521 char *orig);
505 522
506 523
507/** 524/**
@@ -513,10 +530,10 @@ GNUNET_CONFIGURATION_expand_dollar(const struct GNUNET_CONFIGURATION_Handle *cfg
513 * @param number value to set 530 * @param number value to set
514 */ 531 */
515void 532void
516GNUNET_CONFIGURATION_set_value_number(struct GNUNET_CONFIGURATION_Handle *cfg, 533GNUNET_CONFIGURATION_set_value_number (struct GNUNET_CONFIGURATION_Handle *cfg,
517 const char *section, 534 const char *section,
518 const char *option, 535 const char *option,
519 unsigned long long number); 536 unsigned long long number);
520 537
521 538
522/** 539/**
@@ -528,10 +545,10 @@ GNUNET_CONFIGURATION_set_value_number(struct GNUNET_CONFIGURATION_Handle *cfg,
528 * @param value value to set 545 * @param value value to set
529 */ 546 */
530void 547void
531GNUNET_CONFIGURATION_set_value_string(struct GNUNET_CONFIGURATION_Handle *cfg, 548GNUNET_CONFIGURATION_set_value_string (struct GNUNET_CONFIGURATION_Handle *cfg,
532 const char *section, 549 const char *section,
533 const char *option, 550 const char *option,
534 const char *value); 551 const char *value);
535 552
536 553
537/** 554/**
@@ -546,10 +563,11 @@ GNUNET_CONFIGURATION_set_value_string(struct GNUNET_CONFIGURATION_Handle *cfg,
546 * #GNUNET_SYSERR if the filename is not in the list 563 * #GNUNET_SYSERR if the filename is not in the list
547 */ 564 */
548int 565int
549GNUNET_CONFIGURATION_remove_value_filename(struct GNUNET_CONFIGURATION_Handle *cfg, 566GNUNET_CONFIGURATION_remove_value_filename (struct
550 const char *section, 567 GNUNET_CONFIGURATION_Handle *cfg,
551 const char *option, 568 const char *section,
552 const char *value); 569 const char *option,
570 const char *value);
553 571
554 572
555/** 573/**
@@ -564,10 +582,11 @@ GNUNET_CONFIGURATION_remove_value_filename(struct GNUNET_CONFIGURATION_Handle *c
564 * #GNUNET_SYSERR if the filename already in the list 582 * #GNUNET_SYSERR if the filename already in the list
565 */ 583 */
566int 584int
567GNUNET_CONFIGURATION_append_value_filename(struct GNUNET_CONFIGURATION_Handle *cfg, 585GNUNET_CONFIGURATION_append_value_filename (struct
568 const char *section, 586 GNUNET_CONFIGURATION_Handle *cfg,
569 const char *option, 587 const char *section,
570 const char *value); 588 const char *option,
589 const char *value);
571 590
572#if 0 /* keep Emacsens' auto-indent happy */ 591#if 0 /* keep Emacsens' auto-indent happy */
573{ 592{