Version 0.1.0 from FTP
[asterisk/asterisk.git] / include / asterisk / config.h
1 /*
2  * Asterisk -- A telephony toolkit for Linux.
3  *
4  * Configuration File Parser
5  * 
6  * Copyright (C) 1999, Adtran Inc. and Linux Support Services, LLC
7  *
8  * Mark Spencer <markster@linux-support.net>
9  *
10  * This program is free software, distributed under the terms of
11  * the GNU General Public License
12  */
13
14 #ifndef _ASTERISK_CONFIG_H
15 #define _ASTERISK_CONFIG_H
16
17 #if defined(__cplusplus) || defined(c_plusplus)
18 extern "C" {
19 #endif
20
21 struct ast_config;
22
23 struct ast_variable {
24         char *name;
25         char *value;
26         struct ast_variable *next;
27 };
28
29 /* Create a config structure from a given configuration file */
30 struct ast_config *ast_load(char *configfile);
31 /* Free memory associated with a given config */
32 void ast_destroy(struct ast_config *config);
33 /* List categories of config file */
34 char *ast_category_browse(struct ast_config *config, char *prev);
35 /* List variables of config file */
36 struct ast_variable *ast_variable_browse(struct ast_config *config, char *category);
37 /* Retrieve a specific variable */
38 char *ast_variable_retrieve(struct ast_config *config, char *category, char *value);
39 /* Determine affermativeness of a boolean value */
40 int ast_true(char *val);
41
42 #if defined(__cplusplus) || defined(c_plusplus)
43 }
44 #endif
45
46
47
48 #endif